6.1.6 pwn DefconCTF2015 fuckup

下载文件

ret2vdso 原理

在你使用 ldd 命令时,通常会显示出 vDSO,如下:

  1. $ ldd /usr/bin/ls
  2. linux-vdso.so.1 (0x00007ffff7ffa000)
  3. libcap.so.2 => /usr/lib/libcap.so.2 (0x00007ffff79b2000)
  4. libc.so.6 => /usr/lib/libc.so.6 (0x00007ffff75fa000)
  5. /lib64/ld-linux-x86-64.so.2 => /usr/lib64/ld-linux-x86-64.so.2 (0x00007ffff7dd8000)

32 位程序则会显示 linux-gate.so.1,都是一个意思。

题目解析

  1. $ file fuckup
  2. fuckup: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, stripped
  3. $ checksec -f fuckup
  4. RELRO STACK CANARY NX PIE RPATH RUNPATH FORTIFY Fortified Fortifiable FILE
  5. No RELRO No canary found NX enabled No PIE No RPATH No RUNPATH No 0 0 fuckup

漏洞利用

参考资料