Xman2018冬令营选拔赛arm-pwn

本文详细介绍了从环境搭建到解决Xman2018冬令营选拔赛arm-pwn题目的全过程。通过分析,发现开启的Canary保护增加了挑战性。通过静态和动态分析,成功找到ROP链,并利用系统调用获取shell。文章总结了ARM32环境搭建、调试和exploit编写的关键步骤。
摘要由CSDN通过智能技术生成

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

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值