ASLRay:一个可以绕过ASLR的工具

来源:互联网 发布:览物之情得无异乎的互 编辑:程序博客网 时间:2024/06/04 23:25


ASLR(Address Space Layout Randomization,即地址空间格局随机化)是指利用随机方式配置数据地址,一般现代系统中都加设这一机制,以防范恶意系统对已知地址进行攻击。不过目前已经有多种绕过ASLR的方式,今天将介绍一个简单的ASLR绕过工具。

介绍

特点

而ASLRay是一款可以绕过ASLR的工具,其特点如下:

ASLR绕过

跨平台

较为简约

操作简单

无法修复

依赖

Linux 2.6.12 – 适用于任何基于Linux的x86-64的操作系统。

限制

堆栈段必须可执行(-z execstack)

二进制必须在本地通过参数(不是文件,套接字或者输入)来利用

不支持其他架构和操作系统

需要知道缓冲区的限制/大小

工作原理

你有没有听说过堆喷射攻击(Heap Spraying attack)?其实Stack Spraying也差不多,不过在大多数情况下它都被认为很不实用,特别是x86-64上的ALSR。

而最近作者证明恰恰相反。

对于32位,一共有2^32(4 294 967 296)个理论地址,然而对于虚拟化的内存中的执行,内核仅允许控制2^(32/2)即65 536个理论地址。这意味着如果我们在堆栈中控制多于五万个字符,那么由于内核的重定向和重新转换,我们就可以指向的shellcode了。根据我的测试,其实100个甚至10个字符就够了。

这可以使用shell变量来实现,这些变量并不是真正限于特定的长度,但实际的限制是大约一百万,否则会使TTY饱和。那么,为了搭配任何shellcode成功利用,我们要将NOP sled紧接着shellcode放入shell变量中,然后通过随机地址来利用。要注意的是,NOP sled并不是必要的。

在64位系统中,情况就有些不一样了,但是我发现并没有变化太大。

当然了,你不一定要覆盖所有2^64种可能性,事实上内核只允许48位,另外一部分有一半是静态的和可预测的,这样算下来就是2^(4*8+5)即137 438 953 472种可能性。作者之前提到了shell变量的大小限制,其实还有一个计数限制,大约为10,因此我们可以存储一个10万字符的shellcode。这次需要强制使用NOP sled,因为这样会更快。

总而言之,在32为和64位系统中,ALSR可以通过几行shell在几分钟之内轻松绕过。

如何操作

如果你在之前至少利用过一个缓冲区溢出,就可以直接跳过这里了,但是为了防万一:

apt install gcc libc6-dev-i386 || kill -9 $$chmod u+x ASLRay.shsudo gcc -z execstack test.c -o testsudo gcc -m32 -z execstack test.c -o test32sudo chmod +s test test32source ASLRay.sh test32 1024source ASLRay.sh test 1024source ASLRay.sh test 1024 \x31\x80...你的shellcode

在debian上证明NOP sled不是必需的:

注意!!!这会改变etc/passwd且修改/etc/shadow的权限,所以推荐使用虚拟机。

chmod u+x PoC.shsource PoC.shgrep ALI /etc/passwd

如果没有用,就在一开始加上一些NOP(\x90)

别忘了检查堆栈段是否可执行和ASLR的设置:

scanelf -e test | grep RWXorreadelf -l test | grep RWEgrep 2 /proc/sys/kernel/randomize_va_space

你可以将shellcode放入一个变量中,并为ASLR的shell分配随机地址,作者认为这样的内核虚拟化行为是一个未知的漏洞,所以PoC属于0day。

sudo gcc -z execstack -fno-stack-protector test.c -o testsudo gcc -m32 -z execstack -fno-stack-protector test.c -o test32 

如何防范

1.要记得始终依赖于多重保护,而并非单一保护。

2.或许我们需要新的系统安全机制。

我们身处雨中,雨便是随机的,倘若置身雨外,则其规律一览无余。

文章出处:FreeBuf

你会喜欢


NSA 攻击工具再遭利用,Windows、Linux服务器沦为挖矿工具

让FBI都头痛的iPhone,竟然被500刀的小工具破解了

谷歌发布iOS黑客工具软件 或导致iOS 11被越狱


阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 成长议论文 成长足迹 什么的成长 成长就是 成长之路 我在成长 成长名言 成长教育 成长的英文 成长是什么 成长需要 成长的快乐 成长英文 成长的代价 我的成长 成长的摇篮 成才成长 皇帝成长计划 关于成长作文 原始文明成长记 关于成长的作文 皇帝成长计划2 皇帝成长计划2h5 诺安成长混合 皇后成长计划 成长的烦恼作文 皇帝成长计划后宫版 儿童成长画册 皇帝成长计划破解版 婴儿成长表1一12个月顺口溜 蓝钻成长值查询 皇帝的成长计划 作文成长的烦恼 成长的作文500 成长故事作文 成长作文500字 以成长为话题的作文800字 成长经历作文 关于成长的记叙文 关于成长的作文500字 关于成长的作文素材