防止重放攻击最有效的方法是

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了防止重放攻击最有效的方法是相关的知识,希望对你有一定的参考价值。

防止重放攻击的最有效的方法是使用一个时间戳和会话密钥,每次传输数据时,发送一个由时间戳和会话密钥组成的哈希值来标识这次传输。然后在接收方检查这个哈希值,当重放攻击发生时,它们接收到的哈希值将与最初传输的不同,从而可以阻止重放攻击。此外,还可以使用加密技术,通过创建一个只能用一次的加密摘要来阻止重放攻击,就像一次性密码一样。 参考技术A 最有效的防止重放攻击的方法是使用时间戳。使用时间戳可以确保请求是有效的,且不会被重复使用。另外,还可以使用加密算法来验证请求的完整性,避免重放攻击。

网络安全-重放攻击及其防御

参考技术A 重放攻击(Replay Attacks)又称重播攻击、回放攻击,是指攻击者发送一个目的主机已接收过的包,来达到欺骗系统的目的,主要用于身份认证过程,破坏认证的正确性。重放攻击可以由发起者,也可以由拦截并重发该数据的敌方进行。攻击者利用网络监听或者其他方式盗取认证凭据,之后再把它重新发给认证服务器。重放攻击在任何网络通信过程中都可能发生,是计算机世界黑客常用的攻击方式之一。

根据重放消息的接收方与消息的原定接收方的关系。

该方法优点是认证双方不需要时间同步,双方记住使用过的随机数,如发现报文中有以前使用过的随机数,就认为是重放攻击。缺点是需要额外保存使用过的随机数,若记录的时间段较长,则保存和查询的开销较大。

该方法优点是不用额外保存其他信息。缺点是认证双方需要准确的时间同步,同步越好,受攻击的可能性就越小。但当系统很庞大,跨越的区域较广时,要做到精确的时间同步并不是很容易。(受限于网络情况和客户机)

就是双方在报文中添加一个逐步递增的整数,只要接收到一个不连续的流水号报文(太大或太小),就认定有重放威胁。该方法优点是不需要时间同步,保存的信息量比随机数方式小。缺点是一旦攻击者对报文解密成功,就可以获得流水号,从而每次将流水号递增欺骗认证端。

nonce是仅一次有效的随机字符串,要求每次请求时,该参数要保证不同,所以该参数一般与时间戳有关,我们这里为了方便起见,直接使用时间戳作为种子,随机生成16位的字符串,作为nonce参数。

每次HTTP请求,都需要加上timestamp参数,然后把timestamp和其他参数一起进行数字签名。因为一次正常的HTTP请求,从发出到达服务器一般都不会超过60s,所以服务器收到HTTP请求之后,首先判断时间戳参数与当前时间相比较,是否超过了60s,如果超过了则认为是非法的请求。

我们常用的防止重放的机制是使用timestamp和nonce来做的重放机制。
每个请求带的时间戳不能和当前时间超过一定规定的时间(60s)。这样请求即使被截取了,你也只能在60s内进行重放攻击,过期失效。
但是攻击者还有60s的时间攻击。所以我们就需要加上一个nonce随机数,防止60s内出现重复请求。

Chrome现已支持DNS OVER HTTPS加密服务

在谷歌浏览器最新推出的Google Chrome V83稳定版中,正式推出基于HTTPS的DNS(DNS-over-HTTPS)。

HTTPS上的DNS是一种有争议的互联网隐私技术,可对DNS连接进行加密并将其隐藏在常见的HTTPS流量中,从而使第三方(例如 ISP)无法知晓您正在浏览的网站。

以上是关于防止重放攻击最有效的方法是的主要内容,如果未能解决你的问题,请参考以下文章

HTTPS如何防止重放攻击?

如何有效防止API的重放攻击(转自阿里云)

防止重放攻击 appStoreReceiptURL 应用收据

重放攻击

API设计中防重放攻击

时间戳如何帮助防止 Web 服务中的重放攻击