Bypass ASLR with ulimit

Reading time ~1 minute

也不知道是不是天气热了,这两天异常焦躁,于是找点乐子,便跑去看了看 pwnable.kr,然后,然后就卡住了(我可怜的脑细胞……

这次卡的题是 ascii,然后发现有个简化版 ascii_easy,然后看完还是发现不会,看到提示说 ulimit,当时就懵了,这又是神马黑科技,ulimit 不是用来限制资源的么,跟这题有什么关系……

在网上查了一圈后发现,通过 ulimit -s unlimited 可以禁用 ASLR,实测一下后发现,so 地址确实固定了,不过栈地址并不固定。然后看了下原理,大概就是 ulimit -s 将栈地址设成无限制后,系统会采取一种与平常不同的方式计算库基地址,而在 32 位模式下采取此方式时没有加入随机量,于是地址便固定了。最后,竟然还发现了一个最近的 CVE 讲这个问题的,感觉也是醉了:joy:

so 地址固定后,ascii_easy 其实就很简单了,随便在 libc 里找找函数和字符串用一用就好,注意下 ascii 字符的要求就好。至于 ascii 的话,由于静态了,需要借助 vdso 来跳一下 shellcode 了。

挂载网络文件夹后网络故障时文件操作命令卡死

挂载 NFS 或者 Samba 的时候,经常会由于网络故障导致挂载好的链接断掉。此时如果尝试进行 ls、cd、df 等各种命令,只要与此目录沾上边,就会卡住。如果使用了类似 oh-my-zsh 这种配置的,只要在网络目录中,弹出命令提示符前就会直接卡住。这个时候第一反应就是...… Continue reading

路由折腾记 第四弹

Published on September 02, 2017