ciscn_2019_n_1解题

本文详细描述了通过打开远程靶机,利用gets函数栈溢出漏洞,执行反编译和攻击载荷,最终获取flag的过程,展示了在IT安全领域的技术应用。
摘要由CSDN通过智能技术生成

1.打开靶机,下载文件,检查文件类型,是64位ELF文件,NX保护机制打开,用ida反编译,得到汇编代码,按F5键得到C语言代码。2.利用gets函数栈溢出漏洞,可以看到gets函数的参数地址是v1,下方的条件语句中参数是v2。双击v1,得到gets缓冲区的范围大小。用垃圾数据填充v1,溢出v2(v2字节数是0x4,忽略),覆盖到下方的system函数,转接到cat/flag的地址。3.双击F12,进入字符串窗口,找到cat/falg.。双击它找到在栈中的位置,点击右边的地址,进入它的子函数的汇编代码,点击F5得到C语言代码,得到代码转接的下方窗口的地址0x4006BE。

4.写脚本代码,用终端打开运行得到flag。

rom pwn import*:导入pwn库;

r=remote:连接远程端口,及输入靶机上的端口信息;

payload:构建攻击载荷;

io.sendline:发送所求数据并回车;

io.interactive():交互数据并获得io控制权。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值