PWN-栈溢出漏洞

PWN-栈溢出漏洞

ret2text

  1. 信息搜集阶段

    1. checksec re2text弄清楚保护机制
      PWN-栈溢出漏洞_第1张图片

      checksec的使用

    2. file ret2text
      请添加图片描述

  2. 静态分析

    PWN-栈溢出漏洞_第2张图片

    Q:IDA作为静态分析工具怎么可以计算出get_shell的虚拟地址?

    ​ 大概是因为这个文件没有开启ALSR技术,因此仅仅凭ELF文件本身信息尽可以推断出加载到内存的情况!

    vullnerable函数中的局部变量buf数组在IDA中给出了其在栈帧中的位置[ebp-10h],这个建议有时准有时不准,保险起见这里要经过动态调试

  3. 动态调试

    PWN-栈溢出漏洞_第3张图片

    通过栈的情况很容易看到正如IDA所说buf在vullnerable函数栈帧中的位置[ebp-10h],这样就可以设计进行覆盖了

  4. 本地用pwntools进行攻击

    PWN-栈溢出漏洞_第4张图片

    Q:这次payload中用’BBBB’覆盖EBP,这样不就破坏了栈帧吗,栈帧不就回不到main的原来栈帧位置了?这样怎么不会出现段错误?

    Q:payload中的p32是将数字转化成二进制?

    Q:pwntools中脚本的编写技术,

    • process()怎么就创建了一个本地连接
    • sendline()recvline()recv()这些函数的详细情况
  5. 连接服务器进行远程攻击

你可能感兴趣的:(CTF,安全,web安全)