关键点
- 这种攻击是一种网络攻击,也可以被称为回放或重放攻击。
- 当黑客拦截传输数据然后延迟或重复传输时,就会发生这种攻击。
- 时间戳和一次性密码是可以用来防御重放攻击的安全措施的例子。
什么是重放攻击?完整的解释
重放攻击使黑客能够在没有登录凭据的情况下访问帐户信息。
©alexander geiger/shutterstock.com
几乎不夸张地说,今天通过计算机网络传输的数据的价值几乎无法估量。从财务信息到公司商业机密再到信用卡和社会保障号码等个人识别信息,所有这些信息以某种形式存在于与其他机器定期通信的服务器上。虽然快速的信息交换在很大程度上促进了我们的技术文明(我们都从中受益),但也不是没有风险。像那样的信息 – 不断在移动,甚至只是以大量存在 – 是黑客无法抗拒的目标。
黑客拥有一系列令人不安的工具和技术,用来窃取数据并对网络造成破坏。了解这些类型的攻击以及它们的工作原理对于正确的预防至关重要。
与大多数其他犯罪或恶意活动一样,对黑客来说,隐秘通常是关键。一种常见且经常极其有效的黑客技术,称为重放攻击,特别阴险。实质上,重放攻击是试图通过拦截关键的网络流量并将其发送到预定目的地,使其看起来像是攻击者是可信任的一方,以冒充可信任的一方。
幸运的是,有办法保护您的网络基础设施和重要数据免受重放攻击。然而,要了解如何做到这一点,首先需要详细了解重放攻击是什么,它如何运作以及它们旨在利用的安全漏洞。我们将提供您所需的关于攻击者通常希望实现的目标,一些重要的变体以及它的历史,甚至一些重放攻击已被(可能仍然被)使用的实际示例的信息,并介绍您可以采用的预防和缓解策略来对抗它们。
重放攻击:准确定义
重放攻击,也被称为重复攻击或回放攻击,是一种网络攻击类型,黑客拦截有效的数据传输(例如客户端请求访问服务器上的数据),然后欺骗地延迟或重复该数据传输。黑客然后窃取有效客户端的会话id。通过这样做,黑客可以伪装成有效客户端,访问有效客户端在网络上正常可以访问的任何数据。
会话重放攻击是一种被动的中间人攻击,欺骗网络服务器以为自己正在与有效客户端进行通信。当发生这种情况时,服务器或接收者会收到两次消息 – 一次来自真实的发送方,一次来自攻击者。这就是“重放攻击”这个名称的原因。
值得注意的是,这样拦截的通信通常不需要攻击者解密即可发挥作用,因为解密通常是在服务器接收到消息后进行的。事实上,根据某些 安全协议,流量接收者不仅可能接受加密的传入流量,甚至可以要求流量在接受之前必须加密。
重放攻击是如何工作的?
为了充分阐明重放攻击的特点,以及它们如何以及为什么能够给攻击者提供未经授权的网络访问权限,需要一些计算机网络的背景信息。
一些网络背景
所有 计算机 通过向彼此发送数据包并接收和解释发送给它们的数据包来进行通信。没有这个,就不可能进行任何计算机网络。
目前最常用的网络协议 – tcp/ip协议 的核心基础是所谓的三次握手。这是一个在任何客户端或服务器能够相互建立连接之前必须发生的三个步骤的过程。
首先,客户端 – 寻求建立连接的计算机 – 发送一个 syn 包给服务器或要连接的计算机。作为回应,服务器会向客户端发送一个 syn/ack 包,以确认它接收到了客户端的 syn 包。最后,客户端将向服务器发送一个 ack 包,以确认接收到的响应。在每个步骤中,这三个数据包都带有自己特定的序列号,用于区分各自的通信者。
加密和其他安全措施可能会使这个过程有些复杂,但所有重放攻击都旨在颠覆并利用该协议。
重放攻击的步骤和结构
一个成功的重放攻击可以分解为一系列阶段。其中第一个阶段被称为数据包嗅探。数据包嗅探是监听网络上的数据包交换,然后收集、存储和记录这些数据包以供后续黑客攻击使用的行为。通常会使用一种称为网络嗅探器的软件来辅助完成这个任务。wireshark 是一个广泛使用的数据包嗅探器的例子。
会话重放攻击的第二个阶段是窃取网络用户的会话 id。会话 id 是服务器为客户端分配的一个唯一数字,通常与客户端的网络使用或访问时间相对应。它们通常由伪随机数生成器生成,因此很难通过猜测来获取。web 服务器倾向于将这些数字附加到 url 中以形成字符串。
当它们不附加到 url 时,服务器通常会将会话 id 附加到 cookies 或隐藏的表单字段中。cookies 是跟踪用户在网络上的行为并在用户的浏览器和计算机上本地存储某些用户数据(如网站密码)的小文件。因此,通常将会话 id 嵌入到 cookies 中。一些称为会话 cookies 的 cookies 是为用户在网络上的特定会话创建的。当会话 id 嵌入到 cookies 中时,客户端在与服务器的每个数据包交换中发送相应的 cookies,这使得服务器能够识别他。
为了窃取会话id,黑客需要嗅探网络流量并捕获相应的cookie或其他类型的会话id嵌入的数据。
完成这一步骤后,黑客可以发起他的攻击的第三阶段,这时真正的行动发生了。他使用会话id冒充网络中的可信用户。他存储了他嗅探到的适当的认证数据包并将它们发送到服务器。之后,黑客就可以访问原始用户可以访问的所有数据,以及与该用户相关的所有权限。
预防和保护
成功的重放攻击可能会产生非常可怕的后果。如果一家公司无法保护其客户的私人数据,其声誉将受到损害。那些被窃取数据的人的隐私将被破坏,并且他们将容易成为身份盗窃的目标。如果公司的银行账户与受到攻击的网络相关联,黑客可以直接抢劫该公司。
幸运的是,有几种有效的预防策略可以帮助您避免成为重放攻击的受害者。首先,您应该实施所有“标准”的互联网安全措施,例如防火墙、vpn、弹出窗口拦截器、反病毒软件,甚至是特定于web应用程序的防火墙。虽然这些措施并不是专门为了防止重放攻击而设计的,但它们是有用的,可以减少黑客入侵的途径。
此外,以下是一些特定的防重放措施,您应该实施:
- 时间戳:当你给所有数据包加上时间戳时,你会为每个数据包附加一小段数据,准确地指明该数据包被发送的时间。网络服务器可以被编程为忽略所有时间戳不在给定范围内的数据包,随着时间的推移,范围会被适当地调整。这样,即使黑客可以捕获你的数据包,他们也无法在一个相当短的时间窗口之外冒充你。
- 会话id:尽管黑客可以窃取会话id,但使用会话id仍然是一个好主意,因为它们为黑客和你的网络之间添加了额外的身份验证层,使黑客的攻击变得更加困难。
- tls/ssl证书:传输层安全协议(tls)是一种用于加密敏感流量的网络通信安全协议,只有特定的参与方才能访问它。tls通过使用公钥加密两个参与方之间的所有通信,并且是https的核心。只有当一方能够验证另一方的身份时,才接受并解密通信。这种验证是通过tls证书进行的。这些证书由特殊的证书机构签发,签发者会验证每个证书是否已经颁发给了某个特定的域名,而没有颁发给其他域名。由于黑客没有相应的证书,他们将无法窃取你的会话id或对你的流量做出很多利用。你可以在这里了解更多关于tls协议的信息。
- 一次性密码:一种特别极端的安全措施是使用专门为此目的生成的一次性密码来保护两个参与方在网络上的每次数据包交换。由于每个密码只能使用一次,窃取一个用于会话重放攻击的密码是没有意义的。像银行这样的数据安全至关重要的机构经常使用这种方法。
- 删除cookie并安装网络更新:由于cookie可以存储身份验证数据,所以在不需要它们时应该删除它们。http only标志是一个有用的技巧,可以防止javascript代码访问你的cookie。你也不应该错过安装定期的网络更新,以修补你网络的安全漏洞。
重放攻击的起源
黑客和网络安全是两个对立的战争双方,所以它们的历史是相互关联的。考虑到这一点,将重放攻击视为所谓的中间人攻击的被动版本是有帮助的。
中间人攻击是一种针对网络的攻击,攻击者将自己置于两个网络通信者之间,并使通信者相信他们正在彼此通信,而实际上是通过攻击者进行通信。重放攻击是中间人攻击的被动版本,因为在重放攻击中,黑客只是窃听和窃取通信者之间交换的信息,而不对交换的信息进行任何修改。
第一个中间人攻击的发生,就像历史上的许多其他黑客行为一样,开始时只是一个玩笑。据说,诺贝尔奖获得者、电气工程师古列尔莫·马可尼曾经决定戏弄他公司的专家顾问弗莱明教授。
弗莱明会演示马可尼系统能够无线从一个节点发送消息到另一个节点,让当时许多人感到惊讶。在一次计划好的演示中,一条消息将从英格兰康沃尔地区的某个地点发送给皇家学会,一个被历史称为“maskelyne先生”的人决定设置自己的接收和发送节点,并拦截弗莱明的消息。在弗莱明发送消息后,maskelyne先生拦截并将其改成了一些讽刺和刺人的话。不幸的是,我们不知道新消息是什么,但我们知道弗莱明对此非常不满意并感到非常吃惊。
不论是重放攻击还是其他类型的中间人攻击,都利用了设备(如计算机)通过无线交换数据包来形成网络的基本事实。任何不安全的网络都是脆弱的。历史上,网络漏洞是通过试错发现的,网络安全随后应运而生以修补这些漏洞。
因此,黑帽黑客和白帽黑客之间的博弈可以被视为黑客和网络安全之间的一场长久的舞蹈。这不仅适用于马可尼的第一个黑客行为,也适用于80年代广泛传播的后续中间人攻击,最终导致了ssl标准的创建,以及2015年迫使世界将ssl替换为tls的更复杂的攻击。
为什么有人要进行重放攻击?
如果成功,重放攻击将让黑客能够访问他们选择的目标网络。通过欺骗网络架构,使其认为他们是可信任的用户,黑客将被授予访问该用户通常具有的任何数据的权限。然后,他们可以潜在地窃取或破坏任何东西,从银行账户到能源厂的物联网系统。
但恶意黑客并不是唯一受益于重放攻击的人。大型重要组织通常会雇佣渗透测试员(俗称“白帽黑客”)来测试他们的网络安全系统,试图对其进行入侵。如果这种尝试成功,那么渗透测试员将准备一份详细报告,列出所有导致这次违规可能的安全漏洞,并提出加强网络安全、防止此类攻击的措施建议。
重放攻击的一个现实例子
我们将以一个简短但可怕的实例来结束我们的讨论,展示这种“回放攻击”技术的实际应用。
在最近几年制造的汽车中,为了方便起见,可以为驾驶员提供遥控无钥匙进入功能。然而,如果一名汽车贼在离汽车不远的地方设置了一个可以接收和发送无线电波的设备,他可以拦截解锁信号并将其存储以供以后使用。然后,发射器可以拦截并缓冲驾驶员后续解锁车辆的所有尝试。这不仅给了贼进入车辆的机会,而且阻止了驾驶员进入车辆。
接下来…
想了解更多可能的安全漏洞及其原因吗?请阅读以下文章:
- 计算机病毒是什么,有哪些不同类型? 就像生物的同类一样,它们会感染宿主,并可以传播给其他人。只不过在这种情况下,它们感染的是计算机。在这篇文章中了解它们的真正含义以及有多少种类存在。
- 驻留病毒:它们是如何工作的,以及如何保护自己: 它能够渗入您的驱动器,并威胁到与之连接的任何其他设备。在这里了解有关它的一切。
- 引导扇区病毒:它们是如何工作的,以及如何保护自己: 现在它已经相当罕见了,这种病毒回溯到使用软盘启动计算机的日子。我们揭示它的来源、影响以及防范措施。