首页 > 编程知识 正文

销售必看的书,重放攻击的例子

时间:2023-05-03 05:40:55 阅读:156913 作者:2976

3358 www.Sina.com/http://www.Sina.com /重放攻击(Replay Attacks ),也称为重放攻击、重放攻击或新鲜性攻击,是攻击者由目标主机接收到的爸爸

这是一种不断地恶意或欺骗性地重复有效数据传输的攻击类型。 重放攻击可以由启动器进行,也可以由截获并重新发送数据的敌人进行。 攻击者利用网络监听等窃取认证证书,并将其重新发送到认证服务器。 从该说明可以理解,加密可以有效地防止会话劫持,但不能防止重放攻击。 在网络通信过程中可能会发生重放攻击。 重放攻击是计算机世界黑客常用的攻击方式之一,其书面定义对不懂密码学的人来说是抽象的。

重放攻击的概念

根据百科的解释:

时间戳- -表示当前时间的数量

基本的想法——a接收信息,只在对a来说包含了足够接近当前时刻的时间戳的情况下

原理播放的时间戳相对远离当前时刻

时钟请求--通信人员的计算机时钟同步

处理方法设置适当大小的时间窗(间隔),越大越允许网络传输延迟,越小越能防止重播攻击

适合性用于非连接性的对话(如果在连接状况下双方的时钟偶然不同步,则正确的信息会被误判定为再生信息而被废弃,错误的再生信息有可能被作为最新信息接收) ) )。

概念性的几个防御手段

通信双方根据消息中的序列号判断消息的新鲜度

通信双方应事先协商初始序列号,并协商增加方法

时间戳

“当前”- -与当前事件相关联的一次性随机数n (只要彼此不重叠即可) )。

基本的做法从b收到消息的a预先向b发送现在的n,要求b应答的消息中包含n或f(n ),f包含a、b事先约定好的简单函数

原理A根据b回复的n或f(n )是否与自己的发信一致来判定这次的信息是否被播放了

钟表的要求--无

适用性--用于连接性对话

重放攻击是对协议攻击中危害最大、最常见的攻击形式。

序号

提问与应答

1 .前端网页用户输入帐户、密码,然后单击登录。

2 .在请求发送之前,web端首先通过客户端脚本(如javascript )对密码原文进行md5加密。

3 .提交账号、md5及以上密码

4 .向后端发送请求,验证帐户和密码是否与数据库中的匹配,如果匹配,则认为登录成功,反之亦然。

以登陆为例看具体的例子

上述流程看起来很安全。 传输中的密码在md5之后,即使被拦截并被拦截,由于md5的不可逆性,密码也不会以明文形式泄露。 其实不然! 监听者不解密密码就可以用明文登录! 监听者可以输入监听到的url (例如http://****/login.do? 播放method=loginpassword=md5或更高版本的密码userid=登录帐户),可以冒充您的身份登录系统。

常规流程

1 .进入登录页面后,会生成一个称为盐值的随机代码,并保存在客户端页面和会话中各一份。

2 .客户端有登录要求时,将md5及以上密码与该随机码连接后,再次运行md5并提交(提交的密码=md5 ) md5 (密码明文)随机码) )。

3 .后端收到登录请求后,将从数据库中取出的密码与session的随机码连接后,用md5进行运算,与前端传来的结果进行比较。

有什么问题呢?

这种登录方式,即使登录要求被拦截,播放登录URL,由于随机代码不一致(拦截者的session中的随机代码和拦截者的session中的随机代码有同样的概率可以忽略),所以登录不成功。

在这种登录方案中,发送的密码是原始密码md5之后的随机码和再次是md5之后的结果,因此,即使采用窃听者暴力解密的方案,也很难解密明文。

稍微安全点的方式

考虑到密码输入的便利性,很多用户的密码很短,不复杂。 多数情况下是6位数字和字母的组合。 这样的密码md5随后被存储在数据库中,如果数据库数据被泄露,则通过暴力解密方法容易地解密简单密码md5。 更何况,md5问世已经几年了,可能已经有很多词典了。 另外,为了方便用户登录,我们的系统不能要求用户设置长而复杂的密码怎么办? 固定盐的值。 1 .系统设定固定盐值,该盐值宜足够复杂。 例如,1qaz2wsx3edc4rfv! @ # $ % ^ qqtrtrtwdfhajbfhagfuahkjfhajhfjhajwrfa

2 .用户注册、修改密码时,将用户原密码和我们的固定盐

值拼接,然后做md5运算。

3.传递至后端,保存进数据库(数据库中保存的密码是用户的原始密码拼接固定盐值后,md5运算后的结果)。

4.登录时,将用户的原始密码与我们的固定盐值进行拼接,然后做md5运算,运算后的结果再拼接上我们的随机码,再次md5运算,然后提交。

5.后端接收到登录请求后,将从数据库中查询出的密码与session中的随机码拼接后,md5运算,然后与前端传递的结果进行比较。

再再进一步

1.加登录验证码,可预防人为地暴力登录破解

2.账户锁定,如果用户密码输入错误次数达到一定量后(如6次),则可以锁定该账号

转自:http://www.jb51.net/hack/546644.html

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。