御网杯wp回顾

📅 2026/6/16 18:27:29
御网杯wp回顾
前不久参加了2026年“御网杯”网络安全竞赛后沉淀了几天把三种类型的题目解题思路整理成文既方便自己日后回顾也希望能为刚入门CTF的师傅们提供一些参考。一、PWN-NoteService1. 获取到附件vuln文件和libc-2.31.sofile确认64位ELFchecksec检查NX开启、无Canary、无PIE、Partial RELRO2. 然后利用objdump反汇编分析vuln函数发现使用read(0, rbp-0x40, 0x100)读取256字节到64字节缓冲区存在栈溢出漏洞3. 在去利用程序自带的secret_note后门函数(0x401196)调用system(/bin/sh)获取shellNX开启需要ret2text技术4. 然后计算出溢出偏移从缓冲区(rbp-0x40)到返回地址共0x4872字节注意NX开启不能执行shellcode需要ret2text跳转到后门同时x86-64需要ret gadget(0x40101a)做16字节栈对齐5. 连接靶机47.99.147.34:21395发送payload触发溢出执行cat flag命令6. 最终解出flag二、BabyRSA (CRYPTO)1. 下载 src.zip解压获取PHP源码文件api/apply_coupon.php、models.php、buy.php、index.php、config.php。2. 阅读PHP源码发现 api/apply_coupon.php 中存在 PHP反序列化漏洞unserialize(base64_decode($couponData))。models.php 中 PromoManager 类的 __destruct() 可将promo_credit 加到用户余额。利用 PHP 脚本生成序列化 Payload用 curl 发送请求。3. 将序列化对象进行 Base64 编码后作为 coupon 参数提交。4. 然后解出flag三、幻影misc1.解压得到data.bin文件用记事本打开显示为“伪rar”文件FLAG IS HIDDEN IN BASE64 PLUS XOR!2.根据data.bin文件得到密文p62gprr28vjy8/P09OynoPWj7PXz9fPso6L29uzw8/ny8/Wl9veloPe83.用随波逐流base64解码得到- :vrxrssttl u#lususl#vvlpsyrsu%vw% w4.XOR爆破key 65 (0x41) 时出现flag