0x01修改int的值用字符串末尾的null字符,覆盖判断逻辑返回的int的值。最后成功如图:0x02覆盖返回地址的值这里是跳转到了错误的0x61616161直接跳转到输出密码正确的地址。0x03执行我们的代码修改返回地址的值,跳转到我们定义的代码处(此处代码可执行)原理如图,前提条件是修改了buffer的大小用于存放我们的代码
shellshock×××http://www.freebuf.com/articles/system/45390.html×××前提:必须得在有漏洞的机器上执行我们的bash代码。
0x00含有s标志位的含义beyes@debian:~$ls-lgetuid.exe-rwsr-xr-x1beyesbeyes5211Jun1010:45getuid.exebeyes@debian:~$chmodu+stuo.abeyes@debian:~$ls-ltuo.a-rwsr-xr-x1rootroot7567Jul814:53tuo.a这两种在执行时的区别:getuid()geteu
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号