重放攻击
重放攻击简单说就是黑客截获了请求方的报文,然后用此报文直接发给后端,让后端误以为黑客是正常的请求方。
重放攻击是一种常见的黑客攻击手段。web应用常见的场景是利用重放攻击手段登陆别人的账号,获取token,然后为所欲为。
重放攻击不需要知道密码,只要拦截报文,就可以攻击。
应对重放攻击
网上大多的思路基本都是利用某一个不可逆的序列作为比较依据,例如“时间戳”、“自定义序列”,然后还有一个重要因是传输的报文加密算法不能被截获,否则就相当于明文传输了。
对于普遍意义的重放攻击(拦截后短时间频繁重发请求),可以考虑后端系统设置短期最大访问次数。
“时间戳”方式的优点是节省服务端的内存,缺点是需要客户端和服务端系统时间尽可能一致。
“自定义序列”的有点是不依赖系统时间,缺点是需要额外的内存。
同样针对普遍意义的重放攻击防护,也需要额外的内存来记录当前请求次数。
中间人攻击
中间人攻击虽然也是拦截,但是这种攻击是屏蔽了客户端和服务端,完全充当了中转服务。这种攻击常见的一种应对方案就是https。
网友评论