snort数据包嗅探_全网最强嗅探浏览器

snort数据包嗅探_全网最强嗅探浏览器

数据包嗅探和欺骗

网络安全课程实验一
在做的时候参考了很多网上主要就是CSDN上的教程。
(感觉最近还是很忙,所以等我有空想起来再来写这个教程)
(下面放一下我的实验报告部分,里面有流程,可以做参考。
注意配合另一个文章一起看,放了命令和代码
实验一的命令代码
https://blog.csdn.net/weixin_/article/details/?spm=1001.2014.3001.5502

实验具体步骤

下载虚拟机seed ubuntu 20.04,并在virtualbox上安装。
首先,配置实验环境。在虚拟机上下载并解压Labsetup,然后安装启动docker。

在这里插入图片描述
然后,在seed ubuntu 20.04上开始做实验。

(1) 尝试使用 scapy 进行IP数据包 Sniffing

1,写一个python程序(test1.py文件)。

在这里插入图片描述

2,先使用如下命令添加执行权限:chmod a+x test1.py(给所有用户给予文件可执行权限。u 表示用户,g 表示用户组,o 表示其它,a 表示所有。)

3,用root权限运行上面的程序,同时ping任意一个IP地址。
结果如图所示,可以看到其成功嗅探到了IP数据包。
在这里插入图片描述
在这里插入图片描述

4,另外,使用普通权限运行该程序。结果如下,可以看到报错了,提示无权限。
这说明嗅探包是一件拥有高权限才能做的事情,没有高权限,系统是不允许嗅探数据包的。
在这里插入图片描述

(2) 编程实现数据包 Sniffing 功能

本任务要求利用 scapy 库来编写 python 程序实现数据包的 Sniffing,捕获特定类型的数据包,如捕获指定 IP 的 TCP 数据包等。
步骤与第一个相同,要捕获特定类型的数据包,只需要修改python程序。如捕获指定 IP 的 TCP 数据包,对test1.py略作修改,改为test2.py。
发送数据包的代码,send2.py。
(1)
在这里插入图片描述

(2)

send2.py在这里插入图片描述

(3)
在这里插入图片描述
在这里插入图片描述

其它同上,修改python程序即可。
捕捉ICMP数据包

pkt = sniff(filter="icmp",prn=print_pkt) 

捕获来自一个特定的子网的数据包,这里使用的子网为128.230.0.0/16

pkt = sniff(filter="net 128.230.0.0/16",prn=print_pkt) 

(3) 编程实现数据包 Spoofing 功能

作为数据包 spoofing 工具,scapy 允许任意修改 IP 数据包内的字段值。
本任务要求利用 scapy 来伪造 ICMP 请求数据包发送给另一台主机,并使用 wireshark 工具来观察 ICMP 请求及响应数据包。
1,写一个python程序(test3.py文件)。
在这里插入图片描述

2,先启动wireshark,选择网卡。再运行发包的程序。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(4) 实现数据包先 Sniffing 再 Spoofing 功能

在之前的任务的基础上,本任务使用两台虚拟机 A 和 B,并且结合使用数据包 Sniffing以及 Spoofing 功能。任务要求是当 A ping 任意主机时,B 都能接收到 ICMP 请求数据包,并返回相应的 ICMP 响应包给 A。
1,写一个python程序(test4.py文件)。
在这里插入图片描述

2,用root权限运行上面的程序。同时ping任意一个IP地址,如1.2.3.4。
在这里插入图片描述
在这里插入图片描述

(5) 使用 pcap 进行数据包 Sniffing & Spoofing

本任务同样需要完成上述几个功能,不过此处不使用scapy 而是使用 C 语言的 pcap 库来实现 Sniffing & Spoofing。

5.1 Sniffing

1,写一个打印捕获的包的源IP和目的IP地址的程序(test-c1.c文件)。
在这里插入图片描述

2,使用如下命令编译:
gcc -o test-c1 test-c1.c -lpcap
在这里插入图片描述

3,用root权限运行上面的程序,同时ping任意一个IP地址。
结果如图所示,可以看到其成功嗅探到了IP数据包。
在这里插入图片描述
在这里插入图片描述

5.2 Filters

在这里插入图片描述

步骤与5.1相同,同时复用 5.1中test-c1.c 文件的代码。只是对代码中过滤器略作修改。例如:
(1)捕捉两个特定主机之间的ICMP包。使用的过滤器为
icmp and src host 192.168.31.245 and dst host 192.168.31.31
写一个程序(test-c2.c文件)。

char filter_exp[] = "icmp and src host 192.168.31.31 and dst host 192.168.31.245" 

在这里插入图片描述
编译,用root权限运行。结果如图所示。
在这里插入图片描述

其它同上,修改程序即可。
如:捕捉目的端口在10到100之间的TCP包。使用的过滤器为 tcp and dst portrange 10-100。
char filter_exp[] = "tcp and dst portrange 10-100"

5.3 Spoofing

伪造包。当一个普通用户发送一个数据包时,操作系统通常不允许用户设置所有的数据包协议头中的字段(例如TCP、UDP和IP头)。OSes将设置大部分字段,而只允许用户设置一些字段,例如目标IP地址、目标端口号等。
但是,如果用户具有root权限,则可以在包头中设置任意字段。这叫做包欺骗,它可以通过原始套接字来完成。原始套接字使程序员对包构造有绝对的控制权,允许程序员构造任意数据包,包括设置报头字段和有效负载。
使用原始套接字为相当直截了当;它包括四个步骤:(1)创建一个原始套接字,(2)设置套接字选项,(3)构造分组 (4)通过原始套接字发送数据包。

1,首先,写以下几个文件:
myheader.h,checksum.c,spoof.c
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2,伪造UDP包,编译并运行,结果如图所示。

udp.c在这里插入图片描述
在这里插入图片描述

3,伪造ICMP Echo请求,编译并运行,结果如图所示。
icmp.c在这里插入图片描述
在这里插入图片描述

5.4 Sniffing and Spoofing

同时嗅探和伪造包,实现一个机器ping任意IP x,另一个机器伪造ICMP回复请求,使得其有回复,而IP x所对应的机器可能根本不存在。
1,写一个代码文件(ss.c)
在这里插入图片描述

2,编译运行。
在这里插入图片描述
在这里插入图片描述

2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/140045.html

(0)
上一篇 2024年 6月 26日
下一篇 2024年 6月 26日

相关推荐

关注微信