缓冲区溢出
模糊测试
汇编指令转二进制(kali操作)
老师操作:
cd /usr/share/metasploit-framework/tools/
./nasm_shell.rb
现在版本kali:
root@kaliwang:/usr/share/metasploit-framework/tools# cd exploit/
root@kaliwang:/usr/share/metasploit-framework/tools/exploit# ./nasm_shell.rb
渗透步骤
利用缓冲区溢出溢出至esp寄存器,即存下一条指令的寄存器,可以利用这个特点进行渗透
- 先确定具体是发送多少字符才会有缓冲区溢出(利用python脚本,socket连接)
- 再通过Immunity Debugger查看系统脚本,哪个自带jmp esp
!mona modules查看当前进程的模块
Rebase列:重启后内存地址发生变化 要求false
Safeseh,ASLR,内存保护机制 false
发送字符串溢出到eip寄存器,寄存器内存放如AAAAh地址的数据,此地址为找到的 利用模块的地址,此地址命令为 jmp esp
esp中存着shellcode - 生成shellcode
利用msfvenom -l payload 列出payload
msfvenom -p windows/x64/shell_bind_tcp lhost=192.168.114.140 lport=5555 -f c
msfvenom -p windows/x64/shell_bind_tcp lhost=192.168.114.140 lport=5555 -f c -e msfvenom -b “\x13”
-b去除坏字符
4.侦听所设端口,生成shellcode发送到目标机器,获取控制
5.修改注册表,开启3389端口,允许电脑勾选远程链接,允许防火墙远程链接
regsnap发现注册表的变化 在任务41
6.kali redesktop 命令为远程控制桌面
选择和修改EXP
找寻exp
kali下使用searchsploit
securityfocus网站
seebug网站
https://exploits.shodan.io/
https://www.zhihu.com/question/32158707
修改exp
类unix环境编译
返回地址与我们的环境不符
反弹shell硬编码回连地址
缓冲区偏移量与我们环境不符
目标ip硬编码