根据Domo 的“ Data Never Sleeps 6.0”报告,每天有超过250亿字节的数据被创建并上传到互联网上。这些数据很多都是保密的:个人信息,银行转帐,文件,凭证。在网络端点之间安全地传输这些数据是很重要的。
TCP/IP是目前应用最广泛的数据传输协议,具有很高的兼容性。然而,TCP/IP漏洞对黑客来说是众所周知的。TCP协议使用开放通道进行数据传输,攻击者可以滥用此通道来访问、监听和修改流量。
网络犯罪分子可以使用多种类型的攻击来拦截传输中的数据,这些攻击的模式、目标和部署各不相同。在这里,我们将讨论如何保护网络免受中间人(MITM)攻击。
在本文中,我们模拟了在未受保护的网络上的这种攻击。我们使用带有两个网络接口卡的计算机来拦截流量,并使用Wireshark分析流量。我们还讨论了加密是否是保护数据免受MITM攻击的有效方法。
什么是MITM攻击?
中间人攻击(Man-in-the-MiddleAttack,简称“MITM攻击”)是一种“间接”的入侵攻击,这种攻击模式是通过各种技术手段将受入侵者控制的一台计算机虚拟放置在网络连接中的两台通信计算机之间,这台计算机就称为“中间人”。
MITM攻击是一种由来已久的网络入侵手段,并且当今仍然有着广泛的发展空间,如SMB会话劫持、DNS欺骗等攻击都是典型的MITM攻击。简而言之,所谓的MITM攻击就是通过拦截正常的网络通信数据,并进行数据篡改和嗅探,而通信的双方却毫不知情。所以很难检测到这种攻击,因为它不会直接影响网络。
MITM攻击的典型情况:
· 有一个由多台机器交换数据的网络。
· 攻击者想要拦截数据,甚至更改其中一台计算机通过网络发送的数据。
· 攻击者充当目标计算机和网络之间的中介,拦截它们之间的流量。
默认连接和MITM连接之间的区别
MITM攻击有多种形式。ARP欺骗是最普遍的一种,它基于一个地址解析协议(ARP)漏洞:该协议无法确认ARP请求和响应的真实性。ARP欺骗很常见,因为计算机网络接口允许免费的ARP。
现在,让我们模拟一个MITM攻击,看看我们是否可以拦截流量并从目标获取数据。
配置MITM攻击
对于我们的MITM攻击示例,我们将创建一个简单的网络,其中两台计算机交换数据并在它们之间放置一个MITM设备。我们将使用一台带有两个网络接口卡的计算机作为MITM设备。我们的网络如下所示:
我们的示例网络方案
以下是如何将标准Windows计算机转换为MITM设备:
1.将MITM设备放置在要拦截其数据的设备与网络其余部分之间。在我们的示例中,我们将第一台计算机连接到MITM设备的一个以太网端口,并将第二台计算机插入同一设备上的第二个以太网端口。
2.在MITM设备上桥接这些以太网连接。默认情况下,Windows可以执行此操作。只需转到设置-以太网-网络和共享中心-更改适配器选项。
创建MITM设备-步骤1。
创建MITM设备-步骤2。
3.选择具有要桥接的连接的网络接口,右键单击它们,然后选择“桥接连接”。
创建MITM设备-步骤3。
创建网桥后,我们的中间人攻击就可以使用了。目标计算机将连接到网络,而不会发出有关流量被拦截、扫描或更改的警报。
现在我们可以拦截目标的流量。让我们看看能否恢复“它发送的数据”。
使用Wireshark分析网络流量
有很多分析流量的工具:
· Wireshark
· tcpdump
· Kismet
· Cain & Abel
在我们的例子中,我们将使用Wireshark。它是最流行的协议分析程序之一,具有强大的网络诊断功能。Wireshark配备了功能强大的过滤器系统和用户友好的界面,可与各种类型的网络协议配合使用。此外,Wireshark可以截取流媒体视频和图像,与SIP,RTCP,SRTP和其他语音协议配合使用,并节省语音流量。
在其监视模式下,Wireshark允许您将所有流量转储到一个文件中,并通过应用不同的过滤器对其进行分析或解密。
为了开始使用Wireshark,我们必须选择要拦截其流量的接口。
启动Wireshark
让我们选择连接到第一台计算机的接口并分析传入的数据。运行嗅探器后,我们可以输入目标计算机的IP地址和TCP数据包类型:
ip.host==10.100.5.149 && tcp
现在,我们可以侦听来自第一台计算机的流量了。
为了模拟MITM攻击,我们在第一台计算机上生成了一个秘密文件。现在,我们将这个未加密的文件通过不受保护的通道发送到第二台计算机。
未加密数据
我们已经在第二台计算机上成功接收了此文件,现在我们可以查看它的数据。
截获的数据
同时,我们的MITM设备拦截了目标计算机之间的流量并进行了复制。
现在我们可以检查截获的TCP数据包中的数据,并将其与第二台计算机上的数据进行比较。
比较数据
如您所见,在我们的场景中,不受保护的数据最终落入了攻击者的手中。现在让我们看看加密是否有助于减轻这种威胁。
通过加密保护数据
防止中间人攻击的最流行方法是对通信进行加密。它的工作原理如下:当服务器传输数据时,它通过提供数字证书来向客户机标识自己。然后,在客户端和服务器之间建立加密的通信通道。
有两种流行的加密客户端或服务器数据的方法:
1.对称加密,是一种使用一个加密密钥对消息进行加密和解密的系统。密钥成为通信双方之间的共享秘密。
这种保护方法的主要优点是加密速度快。缺点是需要一个安全通道在所有通信参与者之间分发密钥。如果黑客截获了密钥,他们可以轻松地解密传输的数据。
对称加密是一种古老而广泛使用的加密数据的方法。例如,美国政府有义务使用高级加密标准(AES)对通信进行加密。AES是一种对称块加密算法。
2.非对称加密,使用公共和专用加密密钥来保护传输的数据。公钥是每个人都知道的。它通过开放的通信通道传输,并用于加密数据。私钥仅对于消息接收者是已知的,并用于解密该数据。
这种加密类型允许通过开放通道交换密钥。只有私有密钥必须由其所有者安全地存储。一方面,非对称加密比对称加密更可靠。另一方面,加密过程需要更多的计算和时间。当需要加密和解密数据并且不追求过程的速度时,此方法比较适用。
非对称加密用于具有HTTPS支持,银行系统,信使和其他服务的网站对数据进行加密。甚至为加密货币提供支持的流行区块链技术也使用基于非对称加密的电子签名来验证交易。
3.混合加密是对称加密和非对称加密方法的结合版。通过这种加密,可以使用单个密钥通过对称加密对数据进行加密。然后使用非对称加密对该密钥进行加密,并与数据一起发送。
这样,您既可以拥有对称方法的加密速度,又可以拥有非对称方法的可靠性。但是,这种类型的加密仍然不是完美的。例如,它容易受到自适应选择密文攻击。
TLS和PGP协议是基于混合加密。
在加密通信中,传输级加密协议确保了受保护的客户端及服务器数据交换。该协议有两种版本:
· 安全套接字层(SSL)-旧版本
· 传输层安全性(TLS)–较新的
SSL不如新的TLS安全。这两种协议都使用非对称加密来验证通信方的身份,对称加密用于确保数据交换的机密性。此外,这些加密协议通过消息认证码确保消息的完整性。这些保护措施允许TLS/SSL在没有加密密钥的情况下不能窃听或访问流量。
现在我们已经介绍了基本的加密方法。让我们用TLS协议加密一段数据,看看它是否能提供可靠的保护来抵御MITM攻击。
当我们重新创建本文前面部分所述的攻击时,我们的MITM设备仍然能够截获在两台目标计算机之间传输的TCP包。但现在截获的数据用TLS协议加密:
加密数据的内容
如您所见,加密的数据包看起来像是符号的混乱集合。如果攻击者截获这些数据包,他们将几乎没有机会破译加密数据。即使攻击成功,被截获的数据对攻击者也没有任何用处,因此不会受到威胁。
结论
MITM攻击是最广泛,最有效的黑客攻击类型之一。虽然无法完全保护您的网络不会受到此类攻击,但您可以确保您的数据保持受保护。
加密通信是任何网络安全项目的重要组成部分。这是最可靠的方法,即使攻击者可以拦截,也可以确保跨网络传输的数据受到保护。
本文翻译自:https://www.apriorit.com/dev-blog/648-cybersecurity-encryption-for-mitm-attacks如若转载,请注明原文地址