用户名:
密 码: 记住
您当前的位置:首页 > 网络编程 > Net教程

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

时间:2015-01-29  来源:互联网  作者:佚名
在网卡随便一搜: 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也是可以伪造的,但是会造成无法正常接收数据,好比写信时,发件人写假地址,那当然不可能收到对方的回复了
来顶一下
返回首页
返回首页
推荐资讯
VS2010 水晶报表的使用方法 VS2010 水晶报表的使用方法在VS2010中新建一个“Windows 窗体应用程序”项目,在该项目
asp.net Repeater 数据绑定的具体实现(图文详解) asp.net Repeater 数据绑定的具体实以下为设计步骤:1、在C# 中连接数据库。如下图:2、在项目中
相关文章
栏目更新
栏目热门