首页 > 其他分享 >BUUctf pwn1_sctf_2016 nc尝试

BUUctf pwn1_sctf_2016 nc尝试

时间:2023-02-28 19:56:32浏览次数:32  
标签:BUUctf 20 字节 nc sctf edata pwn1 2016

BUUctf pwn1_sctf_2016

file,发现文件是32位elf
image
checksec,发现文件开启了NX保护,NX指的是No Excute(禁止运行)
image
IDA查看函数,发现main()调用了vuln(),而且存在一个get_flag函数,地址为0x08048F0D。可以看到vuln函数中,fgets会从edata文件读32字节到s数组中,貌似没有什么问题。
image
由于后面的replace函数看不大懂,所以只能尝试nc靶机,执行该文件来测试一下输入输出。当输入19个I到edata中时,会转为19个you并写入s数组打印出来;而输入20个I时则会溢出,这表明数组s最多包含19个you和一个\n
image
双击s去看s在栈中的位置,看到s的大小为0x3c=60个字节,果然放不下'you'*20+'\n'
image
下面的r表示返回地址,占4字节(+0x8~+0x4)
image
现在我们来构造payload。由于是将edata中的I转为you再写入s,所以向edata中写20个I,此时s占了60字节;然后要覆盖4字节的ebp,使用一个I和一个其他字符(不会转为you);最后用地址0x08048F0D覆盖eip即可

from pwn import *
p = remote("node4.buuoj.cn",29292)
payload = b'I'*21 + b'0' + p32(0x08048F0D)
p.sendline(payload)
p.interactive()

标签:BUUctf,20,字节,nc,sctf,edata,pwn1,2016
From: https://www.cnblogs.com/nemuzuki/p/17165739.html

相关文章

  • 复现:VNCTF2023
    验证码hint:Tupper(塔珀自指公式)给了一堆图片,组合起来应该就是Tupper公式中的k  利用python的OCR批量识别,我找到了两个库进行识别对比 importpytesseractfromP......
  • 安装guardian报错perl Can't locate getopts.pl in @INC
    在配guardian时遇到的查看源文件发现是这样一句话require'getopts.pl';可是在程序的文件夹下没有这个脚本,并且运行脚本会报错,因为从perl5.16版本开始,这个功能就集成......
  • password_encryption_type 和 pg_hba.conf 不匹配导致用户连不上
    #问题概述xxx客户新上一套opengauss数据库,在测试中用户输入正确的密码,提示用户密码错误,导致用户被锁#问题原因password_encryption_type和pg_hba.conf不匹配导致用户......
  • BlendFunc——图形学混合方式
     1、根据 纹理 是否alpha预乘,决定混合方式voidSprite::updateBlendFunc(void){CCASSERT(!_batchNode,"CCSprite:updateBlendFuncdoesn't......
  • Continuous improvement of self-driving cars using dynamic confidence-aware reinf
    郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布!NatureMachineIntelligence,2023,5(2):145-158 Abstract今天的自动驾驶汽车已经取得了令人印象深刻的......
  • 《XML Pocket Reference》读后感
    《XMLPocketReference》是一本小而精的XML参考手册,作者SimonSt.Laurent在本书中介绍了XML的核心语法和各种标准的概述,包括XMLSchema、XPath、XSLT等,是一本适合那些已......
  • 研究c#异步操作async await状态机的总结
    研究c#异步操作asyncawait状态机的总结 前言#    前一段时间得闲的时候优化了一下我之前的轮子[DotNetCoreRpc]小框架,其中主要的优化点主要是关于RPC异步契约调......
  • 在android源码中编译ADW_Launcher
    1.下载ADW_Launcher源码 cd/android-2.1/packages/apps/ mkdirADW_Launcher cdADW_Launchergitclonegit://github.com/AnderWeb/android_packages_apps_Launcher.gi......
  • BUUctf ciscn_2019_n_1
    BUUciscn_2019_n_1首先file,是64位elfIDA,发现main函数会调用func函数,而func中如果v2=11.28125,就会cat/flag,并且上面有个gets,存在栈溢出漏洞压栈的过程是v1的44字节,然......
  • Synchronized,我要一层一层剥开你的心
    三种应用方式修饰实例方法,作用于当前实例加锁,进入同步代码前要获得当前实例的锁。修饰静态方法,作用于当前类对象加锁,进入同步代码前要获得当前类对象的锁。修饰代码块......