Asp.net获取客户端IP常见代码存在的伪造IP问题探讨

发布时间:2022-04-16 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Asp.net获取客户端IP常见代码存在的伪造IP问题探讨脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
在网卡随便一搜: Asp.net 客户端IP
可以搜索到很多页面,提供的代码基本都类似于:
复制代码 代码如下:

if (Request.ServerVARiables["HTTP_VIA"] != null)
return Request.ServerVariables["HTTP_X_FORWARDED_FOR"].SplIT(new char[] { ',' })[0];
else
return Request.ServerVariables["REMOTE_ADDR"];

上述代码里的HTTP_VIA和HTTP_X_FORWARDED_FOR,都是从客户端提交的Header里获取的,而在正常的HTTP交互中,REMOTE_ADDR是无法伪造的(注),

所以如果某个网站是通过上面的代码获取IP,那么我们只要在Header里随意设置HTTP_VIA和X_FORWARDED_FOR,就可以达到伪造IP的目的,可以使用FireFox的插件“Modify Headers”来测试,用它添加Header

注:实际上,REMOTE_ADDR也是可以伪造的,但是会造成无法正常接收数据,好比写信时,发件人写假地址,那当然不可能收到对方的回复了

脚本宝典总结

以上是脚本宝典为你收集整理的Asp.net获取客户端IP常见代码存在的伪造IP问题探讨全部内容,希望文章能够帮你解决Asp.net获取客户端IP常见代码存在的伪造IP问题探讨所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: