Pwn环境的搭建

作者: 时间: 2016-09-28 评论: 暂无评论

系统: Ubuntu 14.04.5 LTS

我先后分别有在Kali(Debian),CentOS上测试,最后还是觉得Ubuntu最好用了,我这里用ubuntu-14.04.4-desktop-amd64

Ubuntu系统安装过程网上超多,我不赘述了,装好后进到系统,首先先初始化root密码

sudo passwd root
你当前用户的密码
root密码

阅读全文»

堆和栈的区别

作者: 时间: 2016-09-24 评论: 暂无评论

这几天从早到晚都在图书馆了,搭CTF平台,出题,写keylogger,学习pwn,打比赛,还有各种搞,学了不少东西。

听说人老了的一个标志是开始要记录以防忘记,这几天信息量太大了,我必须把一些东西记下来,分享给大家也好,当备忘录也罢,总归是好的。

堆和栈的区别

一、预备知识:程序的内存分配

一个由C/C++编译的程序占用的内存分为以下几个部分

  1. 栈区(stack):由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。
  2. 堆区(heap):一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。
  3. 全局区 / 静态区(static):全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。程序结束后由系统释放。
  4. 文字常量区:常量字符串就是放在这里的。程序结束后由系统释放。
  5. 程序代码区:存放函数体的二进制代码。

例子:

//main.cpp
int a = 0;//全局初始化区
char *p1;//全局未初始化区
main() {
    int b;//栈
    char s[] = "abc";//栈
    char *p2;//栈
    char *p3 = "123456";//123456在常量区,p3在栈上。
    static int c = 0;//全局(静态)初始化区
    p1 = (char*)malloc(10);
    p2 = (char*)malloc(20);
    //分配得来得10和20字节的区域就在堆区。
    strcpy(p1,"123456");
    //123456放在常量区,编译器可能会将它与p3所指向的"123456"优化成一个地方。
}

二、堆和栈的理论知识

阅读全文»

CVE-2016-3862

作者: 时间: 2016-09-11 评论: 暂无评论

原文在这里CVE-2016-3862 flaw – Silently hack millions Androids devices with a photo

CVE-2016-3862 漏洞 - 仅一张图片便可无声的攻破数百万安卓设备

CVE-2016-3862 是一个远程代码执行漏洞,对于某些解析了Exif图片数据的安卓应用一张图片便足以造成危害

你是一位安卓用户?有个坏消息,在社交媒体或者可通信的应用上,一张看起无害的图片可能危害你的移动设备。

谷歌发布了最新的安全更新,用于修复 Quadrooter 漏洞,这个漏洞威胁了900多万台设备,并且一个零日漏洞(0day)可让攻击者将自己的攻击行为隐藏在图片之下。

这个漏洞被编号为CVE-2016-3862,是一个在远程媒体服务器上实现远程代码执行的漏洞。实现方式是通过解析了Exif图片数据的安卓应用来打开一张内含危害的图片。

“可交换的图像文件格式(正式的说法叫Exif,由JEIDA/JEITA/CIPA规定规格)是一种标准,这种标准规定了格式为用数码相机(智能手机)记录的图片、声音、和辅助标签,扫描器和其他系统的图像处理和用数码相机记录的音频文件”维基百科上这么解释。

该漏洞首次曝光于来自SentinelOne公司的安全研究人员Tim Strazzere ,Strazzere解释了该漏洞可以让攻击者在受害者完全毫无察觉的情况渗透并取得设备的完全控制权或者让手机崩溃。

“Strazzere告诉我只要攻击者让一个用户打开一张在受影响的应用里(如Gchat和Gmail)的图片文件,那么他们就可以让手机崩溃或者实现远程代码执行;因此他们可以在用户不知情的情况下有效地添置恶意软件到用户设备上并控制该设备。”Forbes这么说。

受害者甚至不需要点开恶意的图片,或者点开某个连接,因为只要图片一旦被设备所解析,便会出发CVE-2016-3862这个漏洞。

“这个问题最重要的是恶意的攻击者根本不需要受害者去做任何事。由于漏洞的出发不需要用户做太多互动——一个应用必须通过特定方式加载一张图片——漏洞的出发跟收到一条来自某人简讯或者邮件一样容易。只要应用程序尝试去解析图片(通常都是自动解析直至完成),就使漏洞生效了。”Strazzere 这么说。

阅读全文»

Burp Suite绕过JS限制登录后台

作者: 时间: 2016-08-22 评论: 暂无评论

今天一个朋友发来一个后台登录页面,问怎么用Burpsuite修改Response,我看了一下,确实是可以绕过JS限制登录

我们访问下index.aspx可以看到已经返回了后台页面,只不过被js重定向Login.aspx页面

已经返回后台.png

阅读全文»

成为大黑阔的80多条建议和资源

作者: 时间: 2016-08-17 评论: 2条评论

《成为一个大黑阔的80多条建议和资源》(PS:《黑阔修炼手册》)

本文为译文。感谢婷婷 : ) 帮我翻译,我才能很快的整理出来。这篇译文只是为了让更多英语不够好的朋友以及想学找不到方向、资源的朋友能得到这些资源和教程,特在此声明,原文在这里:80+ Best Free Hacking Tutorials | Resources to Become Pro Hacker
PS:文中链接有的需要搭梯子,自行解决。

前言

成为黑客不像成为一名软件开发人员一样容易,从我开始寻找简单的黑客学习资源时我才意识到这一点。哪怕想尝试着自己做一点最简单的hacking,一个黑客都需要对多个方面的知识有深入的认识。有人建议开始学习黑客技术之前,先掌握一些编程语言如C,Python的基本知识和UNIX操作系统的概念以及网络知识。

虽然知道很多东西是必需掌握的,但是对于成为一个有能力和成功的黑客,这是不够的。你必须有热情、有积极的态度去解决问题。安全软件是不断发展的,因此你必须要持有一个快节奏从而能不断学习新的东西。

如果你正在考虑以道德黑客(ethical hacking)作为一个职业选择,你可能需要准备了很多艰苦或者说机智的工作。我希望这些免费的资源可以帮助你加快学习。如果你决定追求道德黑客作为一种职业选择,你可能还需要阅读一些深入的道德黑客书籍。

一些人(包括为了写这篇文章而做研究之前的我)认为成为黑客就是使用网上流传的一些免费的黑客工具。确实,一些常见类型的hacking通过工具的版主很轻松搞定,但是这并不意味着你就是一名黑客。一个真正意义上的黑客是能发现漏洞,并且自己开发测试工具去证明这个漏洞的存在。

Hacking不仅仅是了解“事物如何运作”(知其然),而是要知道“为什么会这样运作”(知其所以然)和“我们该如何去挑战它”。

阅读全文»