嗅探欺骗

嗅探欺骗是指通过对目标主机实施欺骗,来嗅探目标主机网络上经过的所有数据包,最典型的就是中间人攻击。如果目标主机不存在漏洞,用户则无法进行漏洞利用以实现渗透。此时,用户可以通过中间人攻击的方式对目标主机进行欺骗,以嗅探目标主机从网络中传输的数据

中间人攻击

中间人攻击(Man-in-the-Middle Attack),简称MITM攻击,是一种“间接”的入侵攻击。这种攻击模式是通过各种技术手段将入侵者控制的一台计算机虚拟放置在网络连接中的两台通信计算机之间,这台计算机就称为“中间人”

工作原理

中间人攻击就是通过拦截正常的网络通信数据,并进行数据篡改和嗅探。最典型的中间人攻击手段有ARP欺骗和DNS欺骗等技术

ARP欺骗并不是使网络无法正常通信,而是通过冒充网关或其他主机使得到达网关或主机的数据流通过攻击主机进行转发。通过转发流量可以对流量进行控制和查看,从而获取流量或得到机密信息

当主机A和主机B之间通信时,如果主机A在自己的ARP缓存表中没有找到主机B的MAC地址,主机A将会向整个局域网中的所有计算机发送ARP广播,广播后整个局域网中的计算机都会收到该数据。这时候,主机C响应主机A,说我是主机B,我的MAC地址是XX-XX-XX-XX-XX-XX,主机A收到地址后就会重新更新自己的缓存表。当主机A再次与主机B通信时,该数据将被发送给攻击主机(主机C)上,主机C收到后再转发到主机B

实施中间人攻击

使用arpspoof工具

arpspoof是一款专业的ARP欺骗工具,能够直接欺骗网关,使得通过网关访问网络的计算机全被欺骗攻击。通过ARP欺骗,可以达到中间人嗅探和捕获数据包的目的,并替换传输中的数据

arpspoof [选项] host

该工具支持的选项及含义如下:

  • -i interface:指定使用的接口。
  • -t target:指定ARP欺骗的目标。如果没有指定,将对局域网中所有主机进行欺骗。
  • -r:实施双向欺骗。该选项需要与-t选项一起使用才有效。
  • host:指定想要拦截包的主机,通常是本地网关。

使用arpspoof工具实施ARP攻击

攻击主机的IP地址为 192.168.101.54,MAC地址为 00:1c:42:33:15:28

目标主机的IP地址为 192.168.101.57,MAC地址为 00:1c:42:b9:b1:99

网关的IP地址为 192.168.101.1,MAC地址为14:77:40:a0:ea:8

1.开启路由转发

echo 1 > /proc/sys/net/ipv4/ip_forward

如果不开启路由转发,则目标主机就无法访问网络

2.查看攻击主机的ARP缓存表

攻击主机中有一条网关ARP记录,并且该网关的MAC地址为 14:77:40:a0:ea:08

3.查看目标主机的ARP缓存表

从输出信息可以看到,也只绑定了网关的ARP条目,并且没有和攻击主机进行过任何通信

只要这两台主机进行通信,将互相请求对方的IP和MAC地址。这时候就可以对其实施ARP攻击

4.对目标主机实施ARP攻击

arpspoof -i eth0 -t 192.168.101.57 192.168.101.1

可以看到攻击主机在向目标主机发送ARP应答包,告诉目标主机网关的MAC地址为00:1c:42:33:15:28(攻击主机的MAC地址)。但是,实际上网关的MAC地址为14:77:40:a0:ea:8。由此可以说明,已开始对目标主机实施ARP欺骗

5.对网关进行ARP攻击

arpspoof -i eth0 -t 192.168.101.1 192.168.101.57

也可以通过一条命令同时对目标主机和网关实施ARP攻击

arpspoof -i eth0 -t 192.168.101.57 -r 192.168.101.1

6.查看目标主机的ARP缓存表

可以看到该主机中的两条ARP记录(网关和攻击主机的ARP条目)。从显示的ARP条目中,可以看到网关与攻击主机的MAC地址相同。由此可以说明,目标主机成功地被ARP欺骗了

使用Ettercap工具

Ettercap是一款基于ARP地址欺骗的网络嗅探工具,主要适用于交换局域网络。

详细说明:https://blog.csdn.net/qq_41734243/article/details/108409171

1.启动Ettercap工具

ettercap -G

该界面上Ettercap工具的初始界面,通过抓包的方式实现中间人攻击(版本:0.8.3)

2.启动接口,扫描网段下所有的主机,查看列表

 title=

选择其中一台主机作为目标系统。这里选择192.168.101.64主机并单击Add to Target 1按钮,选择192.168.101.1并单击Add to Target 2按钮,然后就可以开始嗅探数据包了

3.启动嗅探后,通过使用ARP注入攻击的方法获取目标系统的重要信息。启动ARP注入攻击,在菜单栏中依次选择Mitm|ARP poisoning...命令

此时,中间人攻击就实施成功了。目标用户访问的所有HTTP数据,都将会被攻击主机监听到

可以看到,目标用户登陆了路由器的管理界面,登陆路由器的管理界面

登陆用户名为CUAdmin,密码经过了base64加密,解密为CUAdmin

4.Ettercap工具提供了两种模式,一种是图形界面,另一种是命令行模式

ettercap [选项] [目标1] [目标2]

用于实施ARP攻击的选项及含义如下:

  • -i:选择网络接口,默认将选择第一个接口eth0
  • -M,--mitm <METHOD:ARGS>:执行中间人攻击。其中,remote表示双向;oneway表示单向
  • -T,--text:使用文本模式
  • -q,--quiet:不显示包内容
  • -P :加载的插件
ettercap -Tq -M arp:remote /192.168.101.64// /192.168.101.1//

社会工程学攻击

社会工程学攻击主要是利用人们的好奇心、信任、贪婪及一些愚蠢的错误,攻击人们自身的弱点。Kali Linux提供了一个社会工程学工具集SET,可以用来实施社会工程学攻击

社会工程学工具包——SET

社会工程学工具包——SET是一个开源的、Python驱动的社会工程学渗透测试工具。使用该工具包,可以实施Web向量攻击和PowerShell攻击等。

1.启动SET

setoolkit

输出的信息详细地介绍了SET。该信息在第一次运行时才会显示。在该界面接受这部分信息后,才可进行其他操作。此时输入y。可以看到创建者、版本8.0.3,和代号Macerick以及菜单信息。根据需求选择相应的编号进行操作

WEB攻击向量

Web攻击向量会特意构造出一些对目标而言是可信且具有诱惑力的网页。当目标用户访问该网页后,即可窃取目标用户的信息。社会工程学攻击工具包可以克隆出和实际运行的可信站点外观完全一样的网页,这使得受害者认为他们正在浏览一个合法站点。

使用SET实施Web攻击向量

1.启动社会工程学工具包,并选择社会工程学攻击

setoolkit

以上信息显示了社会工程学攻击的菜单选项。此时,用户就可以选择工程学攻击的类型,然后实施攻击

2.选择Web攻击向量,所以输入编号为2

以上菜单栏中显示了可实施的Web攻击向量方法,并且详细描述了各种攻击方法的作用。

3.选择证书获取攻击方法,所以输入编号3

以上输出信息中,显示了创建Web站点的方式

4.可以根据自己的需要,选择不同的方式。这里为了方便,选择使用SET提供的Web模板。所以,输入编号1

以上输出信息显示了SET默认提供的几个模板,包括JavaRequired、Google和Twitter

5.这里选择Google站点模板,所以输入编号2

看到以上输出的信息,表示已成功发起了社会工程学攻击。从以上输出的信息中可以看到,这里克隆的站点为http://www.google.com。接下来,攻击者还需要将目标用户诱骗到克隆的站点上。这样,当客户端登录克隆的网站时,提交的用户名和密码将被捕获。

通过使用SET工具包,成功克隆了一个伪站点。此时,用户同样可以使用中间人攻击的方式,将目标用户诱骗到克隆的站点上。由于Web页面是通过DNS解析的,所以用户需要实施DNS欺骗。在Ettercap工具中,提供了一个dns_spoof插件,可以用来实施DNS欺骗。

1.修改Ettercap的DNS配置文件,指定欺骗的域名。其中,Ettercap的DNS配置文件为/etc/ettercap/etter.dns

www.google.com    A    192.168.101.61

2..使用Ettercap发起ARP攻击,并启动dns_spoof插件,即可实施DNS欺骗

ettercap -Tq -M arp:remote -P dns_spoof /192.168.101.40 // /192.168.101.1//

看到以上输出的信息,表示成功实施了DNS欺骗。此时,当目标主机访问http://www.google.com网页时,将被欺骗到攻击主机(192.168.101.61)创建的伪页面,即克隆的站点

此时,当目标用户输入登录信息登录Google服务器时,其登录信息将被攻击主机捕获到,并在终端显示捕获到的信息

从以上输出信息中可以看到,成功捕获到了目标用户提交的用户信息。其中,登录的用户名为admin,密码为123456

PowerShell攻击向

PowerShell攻击向量可以创建一个PowerShell文件。当用户将创建好的PowerShell文件发送给目标,并且目标用户执行了该文件,将可以获取一个反向远程连接

1.启动社会工程学攻击

2.选择社会工程学,输入编号1

3.选择Powershell攻击向量,输入编号9

4.选择含字符和数字的Shellcode注入,输入编号1

以上输出信息显示了攻击主机的配置信息。此时已经成功启动了攻击载荷,等待目标主机的连接。以上设置完成后,将会在/root/.set/reports/powershell/目录下创建了一个渗透攻击代码文件。该文件是一个文本文件,其文件名为x86_powershell_injection.txt

5.此时再打开一个终端窗口,查看渗透攻击文件的内容

以上输出信息显示了攻击主机的配置信息。此时已经成功启动了攻击载荷,等待目标主机的连接。以上设置完成后,将会在/root/.set/reports/powershell/目录下创建了一个渗透攻击代码文件。该文件是一个文本文件,其文件名为x86_powershell_injection.txt

查看x86_powershell_injection.txt文件中的内容,从第一行可以看出该文件是运行powershell命令。如果目标主机运行这段代码,将会与Kali主机打开一个远程会话

6.此时,可以将x86_powershell_injection.txt文件中的内容复制到目标主机(Windows 7)的DOS下,运行该脚本内容。或者,直接将该文件复制到目标主机,并将文件的后缀名改为.bat。然后,双击该文件即可运行该脚本。

可以看到Kali主机成功打开一个Meterpreter会话

(我这边一直没有上线成功,不知道是什么原因所以没放截图,步骤都是对的)

捕获和监听网络数据

当成功实施中间人攻击后,即可捕获和监听目标主机的网络数据

通用抓包工具Wireshark

Wireshark是一款专用于网络封包的工具,可以用来捕获并分析数据包。当用户实施中间人攻击后,可以使用Wireshark来监听目标主机流经网络中的数据包。

使用Wireshark监听目标主机的数据包

1.实施中间人攻击

ettercap -Tq -M arp:remote /192.168.101.61// 192.168.101.1//

2.启动Wireshark工具。在菜单栏中依次选择“应用程序”|“嗅探/欺骗”|wireshark命令

image-20220120202351200

3.该界面中选择监听接口eth0。然后,单击开始捕获分组按钮,将开始捕获数据包

image-20220120202505015

4.此时,正在监听经过接口eth0的所有数据包。当捕获到足够的数据包后,单击停止捕获

5.将捕获的包保存到捕获文件中。在菜单栏依次选择“文件”|“保存”命令

image-20220120202812640

6.在该界面中指定捕获文件名称及位置。然后,单击“保存”按钮,即可成功保存捕获的数据包

捕获图片

成功实施中间人攻击后,可以使用driftnet工具来捕获图片。driftnet是一款简单而实用的图片捕获工具,可以很方便地在网络数据包中抓取图片。通过与Ettercap工具配合使用,可以捕获目标主机浏览的所有图片

driftnet工具的语法格式

driftnet [选项]

其中,该工具可用的选项及含义如下:

  • -b:捕获到新的图片时发出嘟嘟声
  • -i interface:指定监听接口
  • -f file:读取一个指定pcap数据包中的图片
  • -a:后台模式。将捕获到的图片保存到目录中,即不显示在屏幕上
  • -m number:指定保存图片的数目
  • -d directory:指定一个临时目录,用来保存捕获到的图片。当退出driftnet工具后,将清除该目录中的临时文件。但是,不会删除其他文件
  • -x prefix:指定保存图片的前缀名称。默认情况下,图片的前缀名称为driftnet-

使用driftnet工具捕获目标主机浏览的所有图片

1.使用Ettercap实施中间人攻击

ettercap -Tq -M arp:remote /192.168.101.61// 192.168.101.1//

成功对目标实施了ARP欺骗后,使用driftnet工具就可以监听目标主机的图片了

2.使用driftnet开始监听目标主机浏览的所有图片

driftnet -i eth0

执行完上面命令后,将会弹出一个driftnet终端窗口

3.当捕获到目标主机浏览的图片时,而且,在driftnet监听的交互模式下也可以看到捕获到的图片信息。

暗示的还不够明显吗👀

监听HTTP数据

HTTP(Hyper Text Transfer Protocol,超文本传输协议),是用于Web服务器传输超文本到本地浏览器的传送协议。通常情况下,客户端访问网页都使用的是HTTP协议。所以,用户通过使用中间人攻击,也可以监听目标用户访问的HTTP数据。由于HTTP协议是以明文方式传输数据,如果用户登录HTTP协议网站,将会监听到用户信。

使用Ettercap工具嗅探HTTP数据

1.使用Ettercap工具对目标实施中间人攻击

ettercap -Tq -M arp:remote /192.168.101.61// /192.168.101.1//

2.当目标主机访问HTTP协议网站时,将会被攻击主机监听到

image-20220121132653212

监听到了目标主机访问ChinaUNIX论坛的登录信息http://account.chinaunix.net/login/?url=http%3A%2F%2Fbbs.chinaunix.net%2F,用户名为admin,密码为123456

监听HTTPS数据

HTTPS(Hyper Text Transfer Protocol over SecureSocket Layer或Hypertext Transfer Protocol Secure,超文本传输安全协议),是以安全为目标的HTTP通道,即HTTP的安全版。对于一些安全通信网站,将会使用HTTPS协议来加密数据,如淘宝和银行网站等。其中,HTTPS协议是在HTTP下加入了SSL层,因此加密的详细内容就是SSL。此时,用户可以使用SSLStrip工具来解密SSL加密的数据,进而获取到HTTPS数据内容。

使用SSLstrip工具监听HTTPS数据

1.开启路由转发

echo 1 > /proc/sys/net/ipv4/ip_forward

2.通过iptables将所有HTTP数据导入到10000端口

iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 10000

3.使用SSLstrip监听10000端口,获取到目标主机传输的敏感信息

sslstrip -a -l 10000

image-20220121133940015

SSLStrip工具正在运行。此时,在当前目录下将创建一个名为sslstrip.log的日志文件。通过实施监控该日志文件,可以看到目标主机传输的数据

tail -f sslstrip.log

4.实施ARP欺骗攻击

ettercap -Tq -M arp:remote /192.168.101.61// /192.168.101.1//

5.当目标主机访问HTTPS加密网站会被SSLStrip工具解密为HTTP协议

网络数据快速分析

使用Wireshark捕获到数据包时,可以借助Xplico工具来对其数据进行快速分析。Xplico工具可以快速找出用户请求的网页地址、图片和视频等内容。

https://blog.csdn.net/weixin_42582241/article/details/104854423

Last modification:January 21, 2022
如果觉得我的文章对你有用,请随意赞赏