pwn100的解题过程

本文详细记录了解决pwn100挑战的过程,包括在IDA中分析文件,使用GDB调试,设置断点,以及编写exploit脚本。通过调试,发现关键长度为0x70,最终成功获取flag。
摘要由CSDN通过智能技术生成

pwn100的解题过程

一.先将pwn100这个文件放入到ida中,这是一个32位的文件,F5后点击main函数和getflag函数对pwn100进行分析。

首先,read函数是一个可以将0x100个字节传输到buf指针所指的内存中(0x100u是一个16进制的数,即256,u表示无符号),read函数很容易出问题,点进buf看一看,发现它的内存小于256,大约只有64+4=68。
在这里插入图片描述
在这里插入图片描述
由于ida栈分析存在不准确性,所以我们还需要到虚拟机上看看,用虚拟的gdb对pwn100进行调试,
在这里插入图片描述
出现这种情况的原因是我此时电脑上面的pwn100不是符合的“file or directory”,而是一个大的文件夹,见图
在这里插入图片描述
所以我们需要做一些改变,将文件夹改为pw

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值