实验二 网络嗅探与身份认证
1、实验目的
1.1、通过使用Wireshark软件掌握Sniffer(嗅探器)工具的使用方法,实现捕捉HTTP等协议的数据包,以理解TCP/IP协议中多种协议的数据结构、通过实验了解HTTP等协议明文传输的特性。
1.2 研究交换环境下的网络嗅探实现及防范方法,研究并利用ARP协议的安全漏洞,通过Arpspoof实现ARP欺骗以捕获内网其他用户数据。
1.3 能利用BrupSuite实现网站登录暴力破解获得登录密码。
1.4 能实现ZIP密码破解,理解安全密码的概念和设置。
系统环境:Kali Linux 2、Windows
网络环境:交换网络结构
实验工具:Arpspoof、WireShark、BurpSuite、fcrackzip(用于zip密码破解)。
实验原理:
2.网络嗅探
2.1 网络嗅探概述
Sniffer(嗅探器)工作在OSI模型的第二层,利用计算机的网卡截获网络数据报文的一种工具,可用来监听网络中的数据,分析网络的流量,以便找出所关心的网络中潜在的问题。例如,假设网络的某一段运行得不是很好,报文的发送比较慢,而我们又不知道问题出在什么地方,此时就可以用嗅探器确定不同网络协议、不同用户的通信流量,相互主机的报文传送间隔时间等,这些信息为管理员判断网络问题、管理网络区域提供了非常宝贵的信息。
在正常情况下,一个合法的网络接口应该只响应这样的两种数据帧:帧的目标区域具有和本地网络接口相匹配的硬件地址;帧的目标区域具有“广播地址”。
如果网卡处于混杂(promiscuous)模式,那么它就可以捕获网络上所有的数据帧,处于对网络的“监听”状态,如果一台机器被配置成这样的方式,它(包括其软件)就是一个嗅探器。
在交换型以太网中,上述条件2是不满足的。所有的主机连接到SWITCH,SWITCH比HUB更聪明,它知道每台计算机的MAC地址信息和与之相连的特定端口,发给某个主机的数据包会被SWITCH从特定的端口送出,而不是象HUB那样,广播给网络上所有的机器。这种传输形式使交换型以太网的性能大大提高,同时还有一个附加的作用:使传统的嗅探器无法工作。
交换型网络环境嗅探的核心问题是:如何使本不应到达的数据包到达本地。通常的方法有MAC洪水包和ARP欺骗。其中MAC洪水包是向交换机发送大量含有虚构MAC地址和IP地址的IP包,使交换机无法处理如此多的信息,致使交换机就进入了所谓的"打开失效"模式,也就是开始了类似于集线器的工作方式,向网络上所有的机器广播数据包。
2.2 ARP欺骗
本实验中,我们将要详细分析ARP欺骗模式,并通过ARP欺骗达到交换网络嗅探的目的。
每一个主机都有一个ARP高速缓存,此缓存中记录了最近一段时间内其它IP地址与其MAC地址的对应关系。如果本机想与某台主机通信,则首先在ARP高速缓存中查找此台主机的IP和MAC信息,如果存在,则直接利用此MAC地址构造以太帧;如果不存在,则向本网络上每一个主机广播一个ARP请求报文,其意义是"如果你有此IP地址,请告诉我你的MAC地址",目的主机收到此请求包后,发送一个ARP响应报文,本机收到此响应后,把相关信息记录在ARP高速缓存中,以下的步骤同上。
可以看出,ARP协议是有缺点的,第三方主机可以构造一个ARP欺骗报文,而源主机却无法分辨真假。如果发送者硬件地址字段填入攻击者的硬件地址,而发送者IP地址填入被假冒者的IP地址,那么就构造出了一个用于欺骗的ARP请求报文。那么被欺骗主机的ARP高速缓存,被假冒者的IP地址与其MAC地址的对应关系就会更改为欺骗者的,从而达到ARP欺骗的目的。特别的,如果攻击者冒充网关,将转发子网内到外网的所有通信量,以达到捕获其他主机的通信量,从而破坏数据传输的保密性。
2.3 密码(口令,Password)安全
在现实网络中,攻击事件发生的频率越来越高,其中相当多的都是由于网站密码泄露的缘故,或是人为因素导致,或是口令遭到破解,所以从某种角度而言,密码的安全问题不仅仅是技术上的问题,更主要的是人的安全意识问题。
2.31 口令破解方法
口令破解主要有两种方法:字典破解和暴力破解。
字典破解是指通过破解者对管理员的了解,猜测其可能使用某些信息作为密码,例如其姓名、生日、电话号码等,同时结合对密码长度的猜测,利用工具来生成密码破解字典。如果相关信息设置准确,字典破解的成功率很高,并且其速度快,因此字典破解是密码破解的首选。
而暴力破解是指对密码可能使用的字符和长度进行设定后(例如限定为所有英文字母和所有数字,长度不超过8),对所有可能的密码组合逐个实验。随着可能字符和可能长度的增加,存在的密码组合数量也会变得非常庞大,因此暴力破解往往需要花费很长的时间,尤其是在密码长度大于10,并且包含各种字符(英文字母、数字和标点符号)的情况下。
2.32 口令破解方式
口令破解主要有两种方式:离线破解和在线破解。
离线破解攻击者得到目标主机存放密码的文件后,就可以脱离目标主机,在其他计算机上通过口令破解程序穷举各种可能的口令,如果计算出的新密码与密码文件存放的密码相同,则口令已被破解。
2.33 候选口令产生器
候选口令产生器的作用是不断生成可能的口令。有几种方法产生候选口令,一种是用枚举法来构造候选口令(暴力破解),另一种方法是从一个字典文件里读取候选口令(字典破解)。
2.34 口令加密
口令加密过程就是用加密算法对从口令候选器送来的候选口令进行加密运算而得到密码。这要求加密算法要采用和目标主机一致的加密算法。加密算法有很多种,通常与操作系统或应用程序的类型和版本相关。
Burp Suite是一个用于测试Web应用程序安全性的图形工具。该工具使用Java编写,由PortSwigger Security开发。该工具有两个版本。可免费下载的免费版(免费版)和试用期后可购买的完整版(专业版)。免费版本功能显着降低。它的开发旨在为Web应用程序安全检查提供全面的解决方案,Burp Suite是进行Web应用安全测试集成平台。它将各种安全工具无缝地融合在一起,以支持整个测试过程中,从最初的映射和应用程序的攻击面分析,到发现和利用安全漏洞。
3、实验内容
3.1 A主机上外网,B运行sinffer(Wireshark)选定只抓源为A的数据)。
网络嗅探:Wireshark 监听网络流量,抓包。
ARP欺骗: ArpSpoof,实施ARP欺骗。
防范: 防范arp欺骗。
实验网络拓扑
3.1.1 写出以上过滤语句
首先我们先让kali作为B主机,kali上的metasploitable2作为A主机。然后为了以下操作,我们首先检查两台主机是否互通(就是处于同一网段下),结果如下
接下来我们使用kali中的wireshark进行抓取A主机的数据,执行语句为:ip.src == 192.168.46.131(因为主机A的ip为192.168.46.131),得到结果如下
3.2.1 为了捕获A到外网的数据,B实施ARP欺骗攻击,B将冒充该子网的什么实体?
在局域网中,B 主机冒充的是子网中的网关
3.2.2
首先在进行ARP欺骗之前,首先安装以下arpspoof;安装语句:sudo apt-get install dsniff.
为了我们在截获到目标主机发往网关的数据包,我们首先要打开一个终端,开启的方式如下:echo 1 >> /proc/sys/net/ipv4/ip_forward
然后我们可以通过输入“arpspoof”打开arpspoof,
然后我们以可以看到arpspoof的使用方法:arpspoof [-i 指定使用的网卡] [-t 要欺骗的目标主机] [-r ] 要伪装成的主机。
现在我们要明确我们的主机ip地址为192.168.46.130,要欺骗的目标主机IP地址为192.168.46.132,网络的网关为192.168.46.2,所有的主机与外部的通信都是通过这一台主机完成的,所以现在我们就要伪装成网关,就可以截获到目标主机上所有的数据。
攻击者:192.168.46.130;
被欺骗主机:192.168.46.132
默认网关:192.168.46.2
在开始之前,我们来确认一下网关是否正确
从上面我们可以看到网关没有问题了。
下面我们就对目标主机进行一次“欺骗”;
3.2.3 B是否能看到A和外网的通信(A刚输入的帐户和口令)?
应该是不能确定,因为当B接收到A的账户和口令的时候可能经过了保护,导致我们无法直接查看。
3.2.4 在互联网上找到任意一个以明文方式传递用户帐号、密码的网站,截图Wireshark中显示的明文信息。
现在我们登录某大学的选课系统,通过wireshark抓包,我们就可以发现我们输入的账号,密码了。
3.3 FTP数据还原部分:利用WireShark打开实验实验数据data.pcapng。
3.3.1
首先我们现在在Wireshark中打开文件data.pcapng。
通过FTP过滤发现了一堆FTP数据,然后我们就可以推测其使用FTP服务器,而且这些在服务器下都进行了response的数据对应的ip都是192.168.182.1,所以我们可以肯定ftp服务器的IP地址为192.168.182.1。
3.3.2
通过对上面图片中的内容分析我们可以知道,用户IP地址为192.168.182.132的用户在第一次输入账号:anonymous,密码:Mozilla@example.com时,出现了密码错误。随后他再次输入账号:student ,密码:sN46i5y,后就成功登录了。
3.3.3 客户端从FTP下载或查看了2个文件,一个为ZIP文件,一个为TXT文件,文件名分别是什么?提示:文件名有可能是中文。
3.3.4 还原ZIP文件并打开(ZIP有解压密码,试图破解,提示:密码全为数字,并为6位)。截图破解过程。
在这里我们在进行文件资源查找时要注意,文件下载的时候使用到的是TCP协议,尽管FTP服务器是在FTP协议下工作的,所以我们要在TCP数据包中找到文件内容
我们可以发现,下面是一堆ASCLL码,这时候我们先要将这一堆ASCLL转化为原始数据
这时候,发现图片文件被加密了。所以我们选择使用工具kali中的fcrakzip密码破解工具,由于我的kali中没有安装这个软件,现在我们先安装一下,具体安装指令如下
sudo apt-get install fcrackzip
接下来我们就使用它,对这个zip进行爆破,执行语句为fcrackzip -b -c1 -l 6 -u 1.zip,
其中:
• -b:使用暴力模式
• -c1:使用纯数字进行破解
• -l:规定破解密码长度/范围
• -u:使用unzip
然后我们就可以得到密码
接着就看到我们的小企鹅了
3.3.5 TXT文件的内容是什么?
3.4 MD5破解
SqlMap得到某数据库用户表信息,用户口令的MD5值为7282C5050CFE7DF5E09A33CA456B94AE
那么,口令的明文是什么?(提示:MD5值破解)
这个的话我们可以在网上随便找个网站https://www.somd5.com/查找,得到以下结果:
3.5 John the Ripper的作用是什么?
John the Ripper免费的开源软件,是一个快速的密码破解工具,用于在已知密文的情况下尝试破解出明文的破解密码软件,支持目前大多数的加密算法,如DES、MD4、MD5等。它支持多种不同类型的系统架构,包括Unix、Linux、Windows、DOS模式、BeOS和OpenVMS,主要目的是破解不够牢固的Unix/Linux系统密码。
4、思考问题
4.1 谈谈如何防止ARP攻击
一、 双绑措施
双绑是在路由器和终端上都进行IP-MAC绑定的措施,它可以对ARP欺骗的两边,伪造网关和截获数据,都具有约束的作用。这是从ARP欺骗原理上进行的防范措施,也是最普遍应用的办法。它对付最普通的ARP欺骗是有效的。
二、 设置ARP防火墙
4.2 2、 安全的密码(口令)应遵循的原则。
一、 尽量不设置弱口令
二、 不使用自己的生日,电话号码,等等这些个人信息作为密码,防止被字典爆破。
4.3 3、 谈谈字典攻击中字典的重要性
在破解密码或密钥时,逐一尝试用户自定义词典中的可能密码(单词或短语)的攻击方式。与暴力破解的区别是,暴力破解会逐一尝试所有可能的组合密码,而字典式攻击会使用一个预先定义好的单词列表(可能的密码)。通过社会工程学组合而成的字典,极大地增加破解密码的可能性。
4.4 实验小结。
通过本次实验首先我就了解到了ARP协议,通过arpspoof学会了ARP欺骗,理解安全密码的概念和设置。对Wireshark的操作有了更深入的了解,也知道了密码的安全意识还是要提高。