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

NSSCTF(PWN)13

[HGAME 2022 week1]test your gdb

发现是64位文件并且开了canary

查看发现这个函数中V2进行了加密,且在memcmp中进行了buf和V2的对比

我们进入gdb在read(0,buf,0x10ull)处的地址下断点

找到call memcmp 找到与memcmp中对应的s2

用x/8xg 找到密码

得到密码

这题是有后门的

先将两个密码对比定义 然后因为溢出时0x10 所以我们0x20-0x8也就是canary绰绰有余 不能溢出canary p64(0)是ROP链的返回地址 随便填什么

注意:这里不能使用sendline因为会添加换行符 因为read只接受16位 而V2已经16位

我们用send就行或者sendafter一起连着打印字符发送


http://www.kler.cn/news/341029.html

相关文章:

  • Effective Java 学习笔记 通用编程
  • java -jar 指定配置 logback.xml
  • c++剪枝
  • 如何使用Colly库进行大规模数据抓取?
  • Lumerical脚本语言——添加实体对象(Adding Objects)
  • wordpress常见数据库连接错误原因及其解决方案
  • 【音频可视化】通过canvas绘制音频波形图
  • 什么是静态加载-前端
  • Mosaic for Mac:让你的Mac窗口管理更智能
  • python发邮件附件:配置SMTP服务器与认证?
  • BKP读写备份寄存器
  • vscode软件中可以安装的一些其他插件
  • YOLO11改进|注意力机制篇|引入矩形自校准模块RCM
  • 案例分享—国外优秀UI设计作品赏析
  • C语言 | Leetcode C语言题解之第467题环绕字符串中唯一的子字符串
  • Wasserstein距离
  • 支持向量机-笔记
  • Ethernet IP 转 Profinet网关在流量计中的应用
  • vmware下ubuntu18.04中使用笔记本的摄像头
  • 传统的机器学习在自然语言处理领域中对比深度学习和大语言模型有哪些优势?