实验名称:使用SNORT观察网络数据包和TCP连接

实验地点

所使用的工具软件及环境:

Windows ,snort、winpcap

一、实验目的:

通过本实验,熟悉SNORT的使用,通过抓包分析,进一步加深对协议工作过程的理解。

二、实验内容:

  1. 学会安装使用自由软件SNORT
  2. 截获以太网数据包,并分析和描述TCP连接的三个阶段。
  3. 截获ARP协议数据包并进行分析

三、实验步骤:

第一部分 安装snort

  1. 下载snort-2_0_4.exe 网址:http://www.snort.org/dl/binaries/win32/snort-2_0_4.exe
  2. 下载WinPcap_3_0.exe  http://winpcap.polito.it/install/bin/WinPcap_3_0.exe
  3. 安装snort和winpcap
  4. 打开DOS命令窗口COMMAND。进入snort的安装目录。cd /snort/bin
  5. 执行snort –ev 出现以下屏幕,表示安装完成并能正常使用
  6. 用ctrl +C结束。
  7. 观察一个完整的TCP连接。

第二部分 观察TCP连接

1、在snort的工作目录中使用命令

snort  –dev  –l  /snort/log

开始snort并将相应的log文件记录在log目录下。

2、另开一个命令窗口,键入命令

FTP ftp.zist.edu.cn

3、观察ftp命令窗口

4、打开相应的log目录

5、查找到相应的TCP连接,并用文本分析器打开。对照ftp命令窗口中出现的结果,分析刚才的TCP连接过程。

第三部分 观察ARP协议

1、同二,打开SNORT并记录。

2、在另一命令窗口执行以下命令:

arp –a 观察高速缓存

telnet 192.168.0.3 discard 注:和一个在ARP缓存中不存在的主机进行telnet连接。

quit

4、分析所捕获的数据包,并且写出arp的全过程。

四、实验结果与数据分析:

第一部分 安装snort

1、下载Snort_2_9_16_Installer.x86.exe

网址:https://snort.org/downloads/snort/Snort_2_9_16_Installer.x86.exe

2、下载WinPcap_4_1_3.exe

网址: https://www.winpcap.org/install/bin/WinPcap_4_1_3.exe

3、安装snort和winpcap

4、打开DOS命令窗口COMMAND。进入snort的安装目录。cd /snort/bin

5、执行snort –ev 出现以下屏幕,表示安装完成并能正常使用

6、用ctrl +C结束。

7、观察一个完整的TCP连接。

第二部分 观察TCP连接

1、在snort的工作目录中使用命令

snort  –dev  –l  /snort/log

开始snort并将相应的log文件记录在log目录下。

2、另开一个命令窗口,键入命令

FTP ftp.zist.edu.cn

3、观察ftp命令窗口

4、打开相应的log目录

5、查找到相应的TCP连接,并用文本分析器打开。对照ftp命令窗口中出现的结果,分析刚才的TCP连接过程。

TCP连接过程分析

分析TCP连接的开始和终止过程,TCP连接的每一数据报报文的作用分析。

192.168.123.88        10.16.23.2       TCP  66    1843 → 21 [SYN] Seq=0 Win=8192 Len=0 MSS=1460 WS=1 SACK_PERM=1

(先是本机向对方主机192.168.1.102发出连接请求报文段,这时首部中的同步位SYN=1,同时选择一个初始序列Sequence number (raw): 4250625629,记为x)

10.16.23.2        192.168.123.88       TCP  66    21 → 1843 [SYN, ACK] Seq=0 Ack=1 Win=16384 Len=0 MSS=1460 WS=1 SACK_PERM=1

(对方主机收到连接请求报文段后,如同意建立连接,则向本机发送确认,SYN位和ACK位都置1,确认号ack=x+1,即Acknowledgment number (raw): 4250625630,同时也为自己本机选择一个初始序号Sequence number (raw): 3203977215,记为y)

192.168.123.88        10.16.23.2       TCP  54    1843 → 21 [ACK] Seq=1 Ack=1 Win=8192 Len=0

(本机接收到对方主机的确认后,还要向对方主机给出确认,ACK置1,确认号ack=y+1,而自己的序号seq=x+1)这样三次握手结束

192.168.123.88        10.16.23.2       TCP  54    1843 → 21 [FIN, ACK] Seq=55 Ack=141 Win=8052 Len=0

(数据传输结束后,通信的双方都可释放连接,现在双方都处于ESTABLISHED状态,对方主机先向其TCP发出连接释放报文段,并停止再发送数据,主动关闭TCP连接,FIN置1,Sequence number (raw): 4250625684,记为u, Acknowledgment number (raw): 3203977356,记为w)

10.16.23.2        192.168.123.88       TCP  60    21 → 1843 [ACK] Seq=141 Ack=56 Win=65481 Len=0

(本机收到连接释放报文段后即发出确认,确认号ack=u+1。)

10.16.23.2        192.168.123.88       TCP  60    21 → 1843 [FIN, ACK] Seq=141 Ack=56 Win=65481 Len=0

(若本机已经没有要向A发送的数据,其应用进程就通知TCP释放连接,这时FIN置1,本机还必须重复上次已发送过的确认号ack=u+1)

192.168.123.88        10.16.23.2       TCP  54    1843 → 21 [ACK] Seq=56 Ack=142 Win=8052 Len=0

(对方主机在收到本机的连接释放报文段后,必须对此发出确认,ACK置1,seq=u+1,ack=w+1)

观察TCP连接中的交互式的输入,分析键入用户名和密码时的数据报文。

192.168.123.88        10.16.23.2       FTP  72    Request: USER 20200616888

(输入用户名)

10.16.23.2        192.168.123.88       TCP  60    21 → 1843 [ACK] Seq=61 Ack=33 Win=65503 Len=0

(确认报文)

10.16.23.2        192.168.123.88       FTP  90    Response: 331 User name okay, need password.

(用户名存在回复)

192.168.123.88        10.16.23.2       TCP  54    1843 → 21 [ACK] Seq=33 Ack=97 Win=8096 Len=0

(确认报文)

192.168.123.88        10.16.23.2       FTP  70    Request: PASS zjlgdx110

(输入密码)

10.16.23.2        192.168.123.88       TCP  60    21 → 1843 [ACK] Seq=97 Ack=49 Win=65487 Len=0

(确认报文)

10.16.23.2        192.168.123.88       FTP  84    Response: 230 User logged in, proceed.

(登录成功回复)

192.168.123.88        10.16.23.2       TCP  54    1843 → 21 [ACK] Seq=49 Ack=127 Win=8066 Len=0

(确认报文)

TCP的编号及确认并观察TCP流量控制的机理。

原理:让发送方的发送速率不要太快,要让接收方来得及接收。

原则:发送方的发送窗口不能超过接收方给出的接收窗口的数值。窗口单位是字节,不是报文段。[通过TCP首部窗口字段(rwnd)调整接收方的发送窗口数值大小]

第三部分 观察ARP协议

1、同二,打开SNORT并记录。

2、在另一命令窗口执行以下命令:

arp –a 观察高速缓存

telnet 192.168.0.3 discard 注:和一个在ARP缓存中不存在的主机进行telnet连接。

quit

3、分析所捕获的数据包,并且写出arp的全过程。

分析ARP协议的请求包,首先在frame帧中该数据包的大小为42字节,Ethernet部分数据包目的地址是ff:ff:ff:ff:ff:ff,这是一个广播地址会发送当前网段所有设备,接着是arp的请求头部信息,目标mac地址是未知的,因此以全0的形式显示。

分析arp的响应包,主要区别为数据包操作码Opcode为2表明为响应包,发送方的mac地址和ip地址变成目标MAC地址和IP地址,即表示我们已经获取到了对方mac地址了。

五、实验心得体会:

通过本实验,熟悉SNORT的使用,通过抓包分析,进一步加深对协议工作过程的理解。对TCP的建立连接过程有了更深入的了解,arp和ftp命令有了进一步的巩固。

参考文章

https://shentuzhigang.blog.csdn.net/article/details/106351455

https://blog.csdn.net/LL845876425/article/details/90143936

https://www.cnblogs.com/lsdb/p/10715886.html

https://wenku.baidu.com/view/957a8a4f02020740be1e9ba2.html

https://jingyan.baidu.com/article/e8cdb32b06ce2b37052bad82.html

https://zhidao.baidu.com/question/433879546.html

http://www.360doc.com/content/08/0114/14/25127_972488.shtml

《计算机网络》实验报告——使用SNORT观察网络数据包和TCP连接相关推荐

  1. 华科计算机网络报告,华科-计算机网络实验报告-Java Socket编程-网络组建实验

    1.Java编写的邮件客户端 2.网络组建的实验(路由配置.VLAN划分.访问控制) 计算机科学与技术学院 目 录 1实验二 Socket 编 程(E-Mail) .................. ...

  2. 【php毕业设计】基于php+mysql+apache的网络数据包分析工具设计与实现(毕业论文+程序源码)——网络数据包分析工具

    基于php+mysql+apache的网络数据包分析工具设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于php+mysql+apache的网络数据包分析工具设计与实现,文章末尾附有本毕业设 ...

  3. 搬砖:网络数据包解析

    Itsad 网络数据包解析 TCP/IP协议数据包,一般由应用层.传输层.网络层.数据链路层封装而成. 四层协议各自的作用: 数据链路层实现了网卡接口的驱动程序. 网络层实现了数据包的选路和转发. 传 ...

  4. 基于php的网络数据包分析工具的设计与开发

    摘 要 当前,随着信息化发展,网络安全问题日渐突出,网络攻击日益泛滥,所以网络信息安全就变的非常重要.网络主机必须有足够的安全措施,否则网络的价值就会贬值.本系统的开发就是为了给网络使用者提供一个有用 ...

  5. Wireshark网络抓包之抓取聊天网络数据包

    一.Wireshark 1. Wireshark简介 Wireshark(前称Ethereal)是一个网络封包分析软件.网络封包分析软件的功能是截取网络封包,并尽可能显示出最为详细的网络封包资料.Wi ...

  6. 计算机网络数据分析报告,贵州大学计算机网络实验报告-实验四-分析IP协议数据包格式...

    贵州大学计算机网络实验报告-实验四-分析IP协议数据包格式 (7页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 贵州大学GUIZHOU UN ...

  7. 计算机网络实验报告嗅探器,《计算机网络实验报告》5_网络嗅探与协议分析实验.pdf...

    计算机网络实验报告 1. 实验报告如有雷同,雷同各方当次实验成绩均以 0 分计. 警示 2. 当次小组成员成绩只计学号.姓名登录在下表中的. 3. 在规定时间内未上交实验报告的,不得以其他方式补交,当 ...

  8. 计算机网络ospf实验报告,计算机网络实验报告 12_OSPF实验.doc

    计算机网络实验报告PAGE 15 警示实验报告如有雷同,雷同各方当次实验成绩均以0分计.当次小组成员成绩只计学号.姓名登录在下表中的.在规定时间内未上交实验报告的,不得以其他方式补交,当次成绩按0分计 ...

  9. 计算机网络实验报告-632007060215

    计算机网络实验报告 验证性实验--验证性实验 ipconfig 实作一 实作二 ping 实作一 实作二 tracert 实作一 实作二 ARP 实作一 实作二 实作三 DHCP 实作一 实作总结(失 ...

最新文章

  1. 别再说程序员不懂时尚
  2. 沃尔沃主动召回40万台车,只因一个罕见的问题
  3. leetcode题解767-重构字符串
  4. Deep Learning 参数--学习率α、批样本数量batch_size
  5. MySQL千万级大表优化解决方案
  6. 为什么优酷的《楚乔传》画质更清晰?独家解密窄带高清技术
  7. 树莓派安装DLNA实现流媒体服务器
  8. ubuntu tty联网
  9. 批处理PS给不同图片添加不同文字
  10. 7-2 sdut-oop-5 计算长方体和四棱锥的表面积和体积(类的继承) (10 分)
  11. 素描构图中的对比与调和
  12. 第七十三回 玄德进位汉中王  云长攻拔襄阳郡
  13. dh算法 java_java密钥交换算法DH定义与应用实例分析
  14. 2020年iOS如何申请苹果公司开发者账号流程详细图文介绍
  15. 各类文件头及其十六进制标识
  16. 基于纹理的复杂环境下道路消失点检测算法
  17. UM5202EEDFSOT-143工作电压5V用于高速线路保护的2线ESD保护二极管阵列管UM5202EEDF USB端口和以太网端口保护TVS二极管阵列,低泄漏电流和箝位电压25V结电容1PF
  18. 蒙纳丽莎的微笑系列 广告软文:“效益之源”(转载自:中国灯饰商贸网)
  19. CVE-2022-1388 BIG-IP_POC-YAML
  20. android+tv+社区,Android TV Overscan

热门文章

  1. 欣喜若狂--成功的第一步
  2. tcpdump 识别成dns_dns tcpdump
  3. springboot 增加prometeus监控
  4. spark-submit
  5. 计算机等级考试二级c语言笔试,全国计算机等级考试二级C语言笔试试题和答案.doc...
  6. oss图片上传api_交互式核保系统:api明细:图片上传oss接口
  7. mysql 临时表 汉字_转MySQL临时表的简单用法
  8. C语言中前面有四个空格,在C语言编程中什么叫前导空格,什么叫尾随空 – 手机爱问...
  9. scws sphinx mysql_Sphinx+Scws 搭建千万级准实时搜索应用场景详解
  10. Mybatis源码解析-sql执行