Asp.net獲取客戶端IP常見代碼存在的偽造IP問題探討_.Net教程
推薦:VS2010 水晶報表的使用方法在VS2010中新建一個Windows 窗體應(yīng)用程序項(xiàng)目,在該項(xiàng)目中添加一個水晶報表CrystalReport1.rpt,然后在項(xiàng)目上點(diǎn)擊鼠標(biāo)右鍵屬性,將目標(biāo)框架改為.Net Framework 4 打開app.config文件,在startup節(jié)點(diǎn)一個useLegacyV2RuntimeActivationPolicy=true屬性 復(fù)制代碼 代碼如下
如果某個網(wǎng)站是通過下面的代碼獲取IP,那么我們只要在Header里隨意設(shè)置HTTP_VIA和X_FORWARDED_FOR,就可以達(dá)到偽造IP的目的在網(wǎng)卡隨便一搜: 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是無法偽造的(注),
所以如果某個網(wǎng)站是通過上面的代碼獲取IP,那么我們只要在Header里隨意設(shè)置HTTP_VIA和X_FORWARDED_FOR,就可以達(dá)到偽造IP的目的,可以使用FireFox的插件“Modify Headers”來測試,用它添加Header
注:實(shí)際上,REMOTE_ADDR也是可以偽造的,但是會造成無法正常接收數(shù)據(jù),好比寫信時,發(fā)件人寫假地址,那當(dāng)然不可能收到對方的回復(fù)了
分享:ASP.NET中操作SQL數(shù)據(jù)庫(連接字符串的配置及獲取)在WebConfig中配置數(shù)據(jù)庫連接字符串,代碼如下: 復(fù)制代碼 代碼如下: connectionStrings add name=ConnectionString connectionString=user id=用戶名;password=密碼;initial catalog=數(shù)據(jù)庫名稱;data source=服務(wù)器名稱/ /connectionStrings 然后在Webform_1.aspx.cs
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發(fā)送Email實(shí)例(可帶附件)
- js實(shí)現(xiàn)廣告漂浮效果的小例子
- asp.net Repeater 數(shù)據(jù)綁定的具體實(shí)現(xiàn)
- Asp.Net 無刷新文件上傳并顯示進(jìn)度條的實(shí)現(xiàn)方法及思路
- VS2010 水晶報表的使用方法
- ASP.NET中操作SQL數(shù)據(jù)庫(連接字符串的配置及獲取)
- asp.net頁面?zhèn)髦禍y試實(shí)例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲過程實(shí)現(xiàn)分頁示例代碼
- 模板無憂:在.NET開發(fā)中靈活使用TreeView控件
- 相關(guān)鏈接:
- 教程說明:
.Net教程-Asp.net獲取客戶端IP常見代碼存在的偽造IP問題探討。