1. 实验目的和要求
实验目的:
1、通过使用Wireshark软件掌握Sniffer(嗅探器)工具的使用方法,实现捕捉HTTP等协议的数据包,以理解TCP/IP协议中多种协议的数据结构、通过实验了解HTTP等协议明文传输的特性。
2、研究交换环境下的网络嗅探实现及防范方法,研究并利用ARP协议的安全漏洞,通过Arpspoof实现ARP欺骗以捕获内网其他用户数据。
3、能利用BrupSuite实现网站登录暴力破解获得登录密码。
4、能实现ZIP密码破解,理解安全密码的概念和设置。
系统环境:Kali Linux 2、Windows
网络环境:交换网络结构
实验工具:Arpspoof、WireShark、BurpSuite、fcrackzip(用于zip密码破解)。
2. 实验步骤
网络嗅探部分:
网络嗅探:Wireshark 监听网络流量,抓包。
ARP欺骗: ArpSpoof,实施ARP欺骗。
防范: 防范arp欺骗。
实验网络拓扑
1、A主机上外网,B运行sinffer(Wireshark)选定只抓源为A的数据)。
1.1 写出以上过滤语句。
ip.src==ip
Windows11:A
Kali:B
我们查看本机A的ip,在kali中打开wireshark,以A上外网,B运行wireshark选定只捉取源为A的数据。
这里,我们发现捉不到A的数据。
1.2 在互联网上找到任意一个以明文方式传递用户帐号、密码的网站,B是否能看到A和外网(该网站)的通信(A刚输入的帐户和口令)?为什么?
不能。
原因:在交换型的以太网中主机A直接将数据直接发送到网关,没有经过kali。所以我们要进行arpspoof,将kali的ip伪造成靶机的网关。
2.1 为了捕获A到外网的数据,B实施ARP欺骗攻击,B将冒充该子网的什么实体?
B将冒充该子网的网关。
2.2 写出arpspoof命令格式。
Arpspoof -i eth0 -t ip1 ip2 (ip1:被攻击者的ip,ip2:网关ip地址)
2.3 B是否能看到A和外网的通信(A输入的帐户和口令)?截图Wireshark中显示的明文信息。
3.FTP数据还原部分:利用WireShark打开实验实验数据data.pcapng。
在图中,Response是FTP服务器回应。
3.1 FTP服务器的IP地址是多少?你是如何发现其为FTP服务器的?
ip:192.168.182.1
在wireshark中打开FTP数据,筛选Protocol为FTP,我们即可看到FTP服务器的ip。
3.2客户端登录FTP服务器的账号和密码分别是什么?
账号:student
密码:sN46i5y
在wireshark中打开FTP数据,筛选Protocol为FTP,在Inof列,我们即可得到USER和Passwordt。
3.3客户端从FTP下载或查看了2个文件,一个为ZIP文件,一个为TXT文件,文件名分别是什么?提示:文件名有可能是中文。
ZIP文件:1.zip
TXT文件:复习题.txt
3.4 还原ZIP文件并打开(ZIP有解压密码,试图破解,提示:密码全为数字,并为6位)。截图破解过程。
首先找到我们要发送的zip文件。
其次跟踪一下TCP流,显示其原始数据,并将其保存为a.zip文件。
打开该文件,发现其需要密码。
我们安装ARCHPR密码破解工具,最后用ARCHPR进行暴力破解,可以得到密码:123456。
得到密码后输入即可看到该内容。
3.5 TXT文件的内容是什么?
找到该txt文件,打开其TCP流,将其保存为123.txt,然后将其打开即可得到内容。
4、网站登录密码
利用人们平时常用的词、句破译,如果说暴力破解是一个一个的尝试那么字典破译就是利用人们习惯用人名、地名或者常见的词语设置成密码的习惯进行破译。字典破译速度比暴力破译更快但是有时候密码设置中包含了没有字典库中的词句就无法破解出来了,因此有好的字典是关键。
以*****为目标网站,构造字典(wordlist),其中包含你的正确密码,利用burpsuite进行字典攻击,实施字典攻击,你是如何判断某个密码为破解得到的正确密码,截图。
(1) 我们先随便输入账号与密码进行尝试性登录,可以看到其提示用户名或密码不存在,登陆未成功。我们同时打开bp进行抓包,抓取成功的界面如下
(2)我们点击Action然后send to Intruder准备进行爆破。进入 Intruder界面后,我们需要选择需要对需要破解的数据进行标记,并且选择攻击方式(Attack type)
首先选择clear$,然后分别选中username和password输入的数据进行标记,点击Add$,最后选择攻击方式Cluster bomb。
(3)随后进入Payloads模块,在payload set 1位置,也就是username位置,上传关于我们的账号的字典,在2位置选择我们的密码字典,
(4)随后点击右上角start attack进行爆破
爆破结束后,我们可以根据返回数据长度来判断正确的账号密码,返回长度不同于其他数据包的,就是正确的账号密码,我们可以看到其账号:admin 密码:123456,随后放包,即可登入成功。
5、MD5破解
SqlMap得到某数据库用户表信息,用户口令的MD5值为7282C5050CFE7DF5E09A33CA456B94AE
那么,口令的明文是什么?(提示:MD5值破解)
有题目信息我们可以知道其为MD5类型的密码破解,我们打开在线MD5解密网站进行解密,即可将其破解,得到该口令的明文。
6、John the Ripper的作用是什么?
John the Ripper免费的开源软件,是一个快速的密码破解工具,用于在已知密文的情况下尝试破解出明文的破解密码软件,支持大多数的 加密算法 ,如DES、MD4、MD5等。 它支持多种不同类型的系统架构,包括Unix、Linux、Windows、DOS模式、BeOS和OpenVMS,主要目的是破解不够牢固的Unix/Linux系统密码。
思考问题:
谈谈如何防止ARP攻击。
(1)安装ARP防火墙做安全防御。
(2)做ARP双向绑定。
(3)VLAN和交换机端口绑定。
安全的密码(口令)应遵循的原则。
严禁使用空口令和与用户名相同的口令; 不要选择可以在任何字典或语言中找到的口令; 不要选择简单字母组成的口令; 不要选择任何和个人信息有关的口令; 不要选择短于6个字符或仅包含字母或数字; 不要选择作为口令范例公布的口令; 采取数字混合并且易于记忆。
谈谈字典攻击中字典的重要性。
字典攻击是在破解密码或密钥时,逐一尝试用户自定义词典中的可能密码的攻击方式,其核心便是字典中的口令集,口令集越全面,破解成功的可能性就越大。
3. 实验小结
(1)通过使用wireshark实现捕捉HTTP等协议的数据包。
(2)了解到HTTP被称为“明文传输”是因为HTTP协议在传输过程中不对数据进行任何加密处理,数据以明文的形式传输。 这意味着如果攻击者截获了HTTP请求或响应数据包,就可以轻易地查看其中的数据,包括用户名、密码和其他敏感信息。
(3)MD5全称消息摘要算法版本5 (Message Digest Algorithm 5)
它是一种 Hash 算法,其作用是为了信息安全。MD5 值其实就是一串 128 bit 的数据。MD5 的核心是通过算法把任意长度的原始数据映射成128 bit的数据。这一点跟CRC 类似,都是把一串数据经过处理,得到另一个固定长度的数据。
(4)了解了ARP协议的安全漏洞,通过Arpspoof实现ARP欺骗以捕获内网其他用户数据。
(5)能利用BrupSuite实现网站登录暴力破解获得登录密码。
(5)能实现ZIP密码破解,理解安全密码的概念和设置。