[PWN] CTF-WIKI ret2text

本文介绍了如何在32位小端程序中利用ret2text技巧,绕过保护机制,找到并利用system函数的地址执行shell命令。通过IDA Pro分析,详细步骤包括检查程序特性、定位关键函数、计算栈帧布局,最终创建exploit利用get函数的返回地址进行攻击。
摘要由CSDN通过智能技术生成

ret2text

首先我们打开题目,checksec一下,主要是查看一下该程序是多少位的,并了解其保护机制
在这里插入图片描述
32位的小端位程序,没有开启canary堆栈保护及NX,于是我们用32位ida打开在这里插入图片描述
我们打开ida-32,看到源码,发现了一个get函数,这属于我们常说的危险函数
在函数框,我们找到了一个secure函数,调出来,发现有一个system("/bin/sh")函数在这里插入图片描述
这个时候,我们只需要知道调用system函数的指令的地址,然后当get函数执行时我们把get函数的ret上准备ret的地址换成调用system函数的指令的地址就行了,往上一翻,找到了call system的地址
在这里插入图片描述
要想知道get的ret地址,我们得分析这个get函数的堆栈
下断点在此处call _gets处

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值