20169220 <网络攻防实践> 第十周实验—Nmap+Wireshark+缓冲区溢出漏洞
攻击方:Kali_Linux 2.0 IP:222.28.132.218
攻击方IP
Ping防守方
nmap扫描
防守方:BackTrack_5 IP:222.28.132.98
1.防守方IP查看
2.tcpdupm嗅探
嗅探目的地址为本机的tcpdump
更详细的嗅探内容(-vv)
3.Wireshark分析
分析PING包
分析nmap包
- nmap -sT抓包分析
缓冲区溢出实验
1.初始设置
2.shellcode
- 一般情况下,缓冲区溢出会造成程序崩溃,在程序中,溢出的数据覆盖了返回地址。而如果覆盖返回地址的数据是另一个地址,那么程序就会跳转到该地址,如果该地址存放的是一段精心设计的代码用于实现其他功能,这段代码就是shellcode。
3.漏洞程序
- 把以下代码保存为“stack.c”文件,保存到 /tmp 目录下。代码如下:
- 编译该程序,并设置SET-UID。命令如下:
4.攻击程序
- 我们的目的是攻击刚才的漏洞程序,并通过攻击获得root权限。把以下代码保存为“exploit.c”文件,保存到 /tmp 目录下。代码如下:
- 现在我们要得到shellcode在内存中的地址,输入命令:
- 现在修改exploit.c文件!将 \x??\x??\x??\x?? 修改为 \x14\xd2\xff\xff
5.攻击结果
- 先运行攻击程序exploit,再运行漏洞程序stack,观察结果:可见,通过攻击,获得了root权限!