导语:假设有外国政府间谍正在对一位专家的电脑进行监控,我的任务就是检查他们是否从该专家的电脑里盗取了具有图片性质的信息,比如机密地图、计划、知识产权等。这样,为了弄清事情的危害程度,我就要具体判断这些被传输的图片信息到底是什么
前言
MiTM攻击是通过劫持两个用户之间的流量来实现的,而这种流量可以通过使用Wireshark和其他数据包嗅探器等工具来监测到.。你可以在本文接下来的部分,看到Wireshark是如何对每个数据包的细节进行嗅探的,研究者们可以使用Wireshark来捕获这些数据包以供日后的详细分析。
当用Wireshark的filter方法抓取HTTP请求和响应时,我只能看到HTTP流量,不过,我知道该流量包含数据包中的图片。但由于图片经常分散在多个数据包中,所以我无法看到这些图片并重新构建它们。
如果按照传统的办法,使用Wireshark和其他嗅探工具,我们仅仅能监测到图形文件正在通过有线网络或无线网络进行传播的事实,但却并看不到它们,这些图片包含jpg,png等各种格式的图片文件。
攻击情境设置
假设有外国政府间谍正在对一位专家的电脑进行监控,我的任务就是检查他们是否从该专家的电脑里盗取了具有图片性质的信息,比如机密地图、计划、知识产权等。这样,为了弄清事情的危害程度,我就要具体判断这些被传输的图片信息到底是什么内容。
首先,我需要进行MitM,把自己置于攻击目标和路由器之间。这样,所有的流量我就都可以监测到了。完成MitM之后,我需要使用一个名为“driftnet”的工具, driftnet是一款用于抓取指定接口数据流上面图片的软件。这样我就能将图片信息存储并显示在我的计算机上。
步骤1:使用arpspoof实施MiTM
在进行MiTM的方法上,我刚开始有arpspoof和Ettercap两种选择。
ettercap是一款现有流行的网络抓包软件,它利用计算机在局域网内进行通信的ARP协议的缺陷进行攻击,在目标与服务器之间充当中间人,嗅探两者之间的数据流量,从中窃取用户的数据资料。
而arpspoof同样也可以完成APR欺骗,在经过对比后,我发现虽然Ettercap使用起来更加简单上手,但arpspoof却更加可靠。于是最后,我决定用arpspoof实施MiTM。
要设置arpspoof,我需要三个终端。kali > arpspoof -i eth0 -t 192.168.1.1 192.168.1.115终端的特点:
-i eth0是我想要嗅探和实施arpspoof的接口 -t目标 192.168.1.1是路由器的IP地址 192.168.1.115是疑似攻击者的IP地址
值得注意的是,如果我在无线网络上实施这个MiTM,我可以用“-i wlan0”替换“-i eth0”。
然后,通过反转IP地址来连接另一终端,kali > arpspoof -i eth0 192.168.1.115 192.168.1.1。
最后,我需要对ip_forward进行设置,kali > echo 1 > /proc/sys/net/ipv4/ip_forward。
现在,我就成功地通过MiTM劫持了攻击者和目标路由器之间的流量。这样,两者之间的流量就都被我嗅探到了。
步骤2:设置driftnet
现在,我应该可以看到双方发送或接收的所有图片,下一步我要做的就是激活driftnet。我可以通过在Kali的任何终端输入driftnet来做到这一点,不过切记,不要使用arpspoof运行的开放终端,因为这将终止arpspoof。
kali > driftnet
如上图所左下方所示,我的终端下面显示了一个小窗口,这正是driftnet证明它发现和重构图片的位置。
步骤3:实时查看图片
现在,一旦攻击者对目标发送或接收任何互联网流量,那该流量都将遍历我的系统。如此一来,我就可以过滤、重构、查看和保存图片。
现在要做的就是等待,等待攻击者发起攻击,我好捕获图片的流量。 按照既定的攻击测试,这时,我会发现一个传输照片的流量,该流量出现在我屏幕上的driftnet窗口里。
从上图可以看出,攻击对象是个体育爱好者。我是通过driftnet应用程序捕获并重现的图片,这些图片正是被攻击对象在www.espn.com浏览过的。虽然这些被嗅探到的图片流量并没有什么涉及机密的信息,但这并不意味着攻击者就没有恶意。所以当被攻击对象继续上网或发送文件时,我会用driftnet继续进行嗅探。
步骤4:进一步分析图片
虽然起初发现的那些体育图片似乎并没有显示出什么恶意,但我仍然有可能要把它们保存下来,以进行进一步的分析。
如果我返回driftnet命令终端,我会看到,driftnet已经把保存图片的路径显示了出来。
要注意的是,driftnet会使用随机选择的子目录将图片保存到/tmp 目录。 有趣的是,子目录拼写错误(以下所示),应该是driftnet而不是drifnet。
让给我来浏览一下该目录,看看driftnet为我捕获并保存了什么。
kali > cd /tmp/drifnet-1Ilw8b
你可以看到,在短短几秒钟内,driftnet已经捕获,重构和保存了许多图片。这些都是jpeg和gif文件,但是driftnet也能够捕获和重构其他图片文件,包括MPEG和音频文件。