Section outline

  • 现代操作系统已实现多种安全机制以使缓冲区溢出攻击更加困难。为了简化我们的攻击,我们首先需要先禁用它们。稍后我们将启用这些保护措施并观察攻击是否仍然成功。
     
    Ubuntu 和其他几种 Linux 系统使用地址空间随机化来随机化堆和栈的起始地址。这使得猜测确切地址变得困难;猜测地址是缓冲区溢出攻击的关键步骤之一。 可以使用以下命令禁用此功能:
     
    $ sudo sysctl -w kernel.randomize_va_space=0