20169206 第十周作业

nmap+wireshark攻防实验

作为防守方

tcpdump捕获

tcpdump会迅速闪过很多条包,为清晰显示,使用命令tcpdump host 222.28.136.188 > from188.txt,目的是仅查看来自222.28.136.188(攻击方ip)的包,并将信息存到from188.txt中,如图,可以看到包头信息

wireshark分析

打开wireshark,过滤出tcp的包,一下子就看到与222.28.136.188通信的包,如图,

显示一下对应的tcp流图,如图,

带有包头内容的流图,

可以看到一些握手的建立,窗口和MTU的大小设置,但报文都是空的,nmap应该是由这些有限的包头数据作分析,通过端口的开放和回应情况判断对方的OS等。

作为攻击方

我和20169218一组,其ip是222.28.136.188。作为攻击方时,我用nmap对其扫描,如图,

此外,由于本班人数为奇数,我们组同时还有20169202,其ip为222.28.136.43,我用nmap对其进行的是udp扫描,如图,

缓冲区溢出实验

具体过程严格按照https://www.shiyanlou.com/courses/231/labs/749/document上面所描述。
首先配置好环境。

漏洞程序

存漏洞程序stack.c,如图,

需对其权限做更改,更改前后的权限变化如图,

攻击程序

同样是按照文档中的代码存一个exploit.c,先存着。

反汇编漏洞程序stack

使用gdb,在这里我遇到了问题,因为在设置断点时输错了地址,所以在输入r时执行失败,显示无法插入断点
解决方法:使用help all查看gdb命令,找到清除断点的命令删除所有断点,重新设置,如图,

计算shellcode地址

我的str地址是0xffffd350,加上十进制的100后为0xffffd3b4,对应修改exploit.c源文件,如图,

执行结果

编译执行,结果如图,

posted @ 2017-05-03 15:26  yp1692  阅读(287)  评论(0编辑  收藏  举报