arm32-pwn从环境搭建到实战
关于arm的pwn还是比较令人头疼的,首先汇编比较难看懂,其次就是ida反编译出来的东西还会有错误,比如之后要讲的题目中栈的分布就和ida解析出来的完全不一样。那么先来看一看环境的搭建。之前有人发过完整的64的环境搭建,32的环境搭建和实战还是有一些不同的
环境搭建
环境的搭建应该是现在arm题目中比较麻烦的一个点。
安装qemu
apt-get install qemu
然后可以查看其有哪些指令qemu-[tab][tab],其中有一个`qemu-arm`这个就是我们运行32的指令。
依赖库安装
依赖库一般可以利用apt-get来进行一个安装,这里我们需要装的库是
sudo apt-get install -y gcc-arm-linux-gnueabi
在安装这个的时候会有一个错误就是很多其他的依赖库没有安装,这个时候`sudo apt-get -f install`就会自动进行安装,然后再执行上面的语句就可以成功的安装了。
这样整个环境就基本是安装好了
实例分析(xman2018冬令营入营题)
题目本身不难,但是很有借鉴意义和之前上海大学生的比赛结合起来刚好就是一个arm32和arm64非常完整的教程了。
保护查看
[*] '/media/psf/Home/Downloads/pwn' Arch: arm-32-little RELRO: Partial RELRO Stack: Canary foun