绕过ASLR — 第二部分

优质
小牛编辑
126浏览
2023-12-01

预备条件:

VM 配置:Ubuntu 12.04 (x86)

什么是爆破?

在这个技巧中,攻击者选择特定的 Libc 基址,并持续攻击程序直到成功。假设你足够幸运,这个技巧是用于绕过 ASLR 的最简单的技巧。

漏洞代码:

编译命令:

上面展示了,Libc 随机化仅限于 8 位。因此我们可以在最多 256 次尝试内,得到 root shell。在下面的利用代码中,让我们选择作为 Libc 基址,并让我们尝试几次。

利用代码:

运行上面的利用代码,我们会得到 root shell(在下面展示):

注意:也可以爆破类似的栈和堆段的地址。