-
-
[原创]2020HGAME Week1 Pwn WP
-
发表于:
2020-1-25 19:54
8379
-
[原创]2020HGAME Week1 Pwn WP
比赛地址 59dK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Z5k6$3q4E0k6g2)9J5k6i4k6A6k6r3q4J5i4K6u0W2j5$3I4#2j5W2)9J5c8R3`.`.
目前已开启第二周比赛,所以第一周flag交了也不会得分,于是就把自己week1的pwn wp放出来,各位师傅有更好的思路欢迎交流
要求输出从v5开始与七位字符串比较,字符串为
因此直接填充到v5位置然后写入即可
但
因此存在栈溢出
栈溢出覆盖后可修改循环数,但如果想修改ret,就必须改为 c00000000 。
ret到gift上后jmp rsp跳转到ret下一地址,在ret后还有6次循环,足够我们shellcode实现ret2shellcode
但shellcode一次只能输入20位数字,因此payload需要截断
但我刚好找到了可以直接手写的shellcode
直接看exp吧
查看bss段发现
因此如果将name的\n写为1就可以在后面printf时直接把flag泄露出来。
buf只有0x50,因此栈溢出,但开了NX,不能直接ret2shellcode
查看其他函数,发现 _libc_csu_init 因此尝试利用ret2csu 557K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6U0N6r3k6Q4x3X3c8%4K9h3E0A6i4K6u0W2k6$3W2@1K9s2g2T1i4K6u0W2K9h3!0Q4x3V1k6U0N6r3k6Q4x3X3c8%4K9h3E0A6i4K6u0r3M7s2N6F1i4K6u0r3L8r3W2F1N6i4S2Q4x3V1k6K6N6r3q4U0K9$3!0$3k6i4u0X3L8r3!0%4i4K6u0r3L8h3g2V1K9i4g2E0i4K6u0V1M7X3!0H3i4K6u0V1P5X3S2Q4x3V1j5`.
直接套模板就好
[培训]科锐逆向工程师培训第53期2025年7月8日开班!