真正的体会了一把IP欺骗

我们公司的产品几年来一直饱受黑客暴力猜测密码攻击,一直以来有一个重要的安全策略就是基于IP地址的安全防护.也就是一个地址尝试错误超过10次,就会锁一天.

最近要开发一个跟精细的功能,就是如果用户突然换了一个地域登录,这样就会提示用户输入验证码.这个策略也是基于IP的.

因为我们的产品使用了Ngnix,所以IP的获取也就是通过 X-Forward-For 为了方便测试,测试时切换IP不是很方便,我就尝试找一个方法伪造IP地址测试服务器,最后找到了Firfox插件"Modify Headers", 这个可以很方便的就伪造了一个HTTP Header,在测试服务器上测试,果然欺骗成功了.

在测试服务器上测试成功之后,我突然想何不到产品上面去试试,一试吓一跳,居然把产品也骗了,我的IP被锁了之后,我只要换一个Http头,锁就解了.

经过分析,发现我们服务器的Ngnix设置写X-Forward-For 使用的是追加方式,不是替换.设置替换之后,这个问题就解决了.

还好我们的Nginx上线也就一个月左右,黑客好像还没有发现这个漏洞.要不攻击我们的IP地址就不是一直是1W个左右,会有一个跳跃的上升了.

你可能感兴趣的:(IP)