文章总结: 本文记录CTFSHOW平台PWN题目56至60的解题思路,主要涉及检查二进制保护机制、分析链接类型及ret2shellcode技术运用。作者指出前两题质量欠佳,后三题重点解析了通过汇编定位缓冲区、利用gets函数漏洞植入shellcode并跳转执行的过程。文档包含具体的IDA分析与payload构造逻辑,适合CTF入门参考,但叙述较为口语化且部分细节依赖图片展示。 综合评分: 55 文章分类: CTF,二进制安全,漏洞POC,逆向分析,实战经验
CTFSHOW-PWN(56-60)
原创
北斗尘封 北斗尘封
B1acktide安全团队
2026年3月5日 15:58 重庆
PWN入门56
逆天,啥保护都没开,检查文件
静态链接编译文件,开IDA
有点草率
。。。。。。。。。。
我没话说,这题草率至极
PWN入门57
把文件拖进虚拟机检查,64位,考虑堆栈平衡,NR,可以用动态链接库去动GOT,没开栈金丝雀,没开NX能直接执行注入的shellcode,没开PIE位置确定。看文件类型
依旧静态编译,开IDA
。。。。。。。。。。
出题人脑子有坑
PWN入门58
检查文件
32位,不用考虑堆栈平衡,PR,能用动态链接库改GOT,没开金丝雀,没开NX,没开PIE,存在可读可写可执行段,看文件类型
动态编译,开IDA
反编译失败,瞅瞅汇编代码,这是个简单的ret2shellcode
只有这么个东西,它会把数组s的东西get进某个地方,而看汇编代码
[ebp+s]便是我们要找的地方
双击S又发现s不在栈帧里,但紧挨栈帧
初次调用毫无成效,我们需要找到s的具体地址,根据IDA代码可看到
s=ebp-0x0A,直接找ebp
构造payload直接传即可
PWN入门59
其实没啥区别,无非加个堆栈平衡
还这样,懒得解释了,IDA
依旧不让反编译
依旧gets,把payload从32改64即可
PWN入门60
已经数不清这是第几次入门了
一如既往
失去耐心,开IDA
大概就是gets到数组里,如何从数组里抽64字节的东西到buf2,通过检查可知存在可读可写可执行的段,我们查看一下
有的兄弟,有的
所以我们需要先植入shellcode,而后覆盖缓冲区,最后跳转即可
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:B1acktide安全团队 北斗尘封 北斗尘封《CTFSHOW-PWN(56-60)》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论