如果某个网站是通过下面的代码获取IP
那么我们只要在Header里随意设置HTTP_VIA和X_FORWARDED_FOR
就可以达到伪造IP的目的
在网卡随便一搜: Aspnet 客户端IP
可以搜索到很多页面提供的代码基本都类似于
复制代码 代码如下:
if (Request
ServerVariables["HTTP_VIA"] != null)
return Request
ServerVariables["HTTP_X_FORWARDED_FOR"]
Split(new char[] {
})[
];
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也是可以伪造的但是会造成无法正常接收数据好比写信时发件人写假地址那当然不可能收到对方的回复了