復(fù)制代碼 代碼如下: function getIP() { if (isset($_SERVER['HTTP_X_FORWARDED_ " /> 国产树林野战在线播放,欧美一区二区三区不卡免费,国产午夜精品不卡视频

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

獲取用戶Ip地址通用方法與常見安全隱患(HTTP_X_FORWARDED_FOR)

分析過程
這個來自一些項目中,獲取用戶Ip,進行用戶操作行為的記錄,是常見并且經(jīng)常使用的。 一般朋友,都會看到如下通用獲取IP地址方法。

復(fù)制代碼 代碼如下:
function getIP() {
if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$realip = $_SERVER['HTTP_X_FORWARDED_FOR'];
} elseif (isset($_SERVER['HTTP_CLIENT_IP'])) {
$realip = $_SERVER['HTTP_CLIENT_IP'];
} else {
$realip = $_SERVER['REMOTE_ADDR'];
}
return $realip;
}


這個是網(wǎng)上常見獲取,ip函數(shù),用這些值獲取IP,我們首先要弄清楚,這些數(shù)據(jù)是從那個地方傳過來的。

IP獲取來源

1.'REMOTE_ADDR' 是遠端IP,默認(rèn)來自tcp 連接是,客戶端的Ip。可以說,它最準(zhǔn)確,確定是,只會得到直接連服務(wù)器客戶端IP。如果對方通過代理服務(wù)器上網(wǎng),就發(fā)現(xiàn)。獲取到的是代理服務(wù)器IP了。

如:a->b(proxy)->c ,如果c 通過'REMOTE_ADDR' ,只能獲取到b的IP,獲取不到a的IP了。

另外:該IP想篡改將很難實現(xiàn),在傳遞知道生成php server值,都是直接生成的。

2.'HTTP_X_FORWARDED_FOR','HTTP_CLIENT_IP' 為了能在大型網(wǎng)絡(luò)中,獲取到最原始用戶IP,或者代理IP地址。對HTTp協(xié)議進行擴展。定義了實體頭。

HTTP_X_FORWARDED_FOR = clientip,proxy1,proxy2 所有IP用”,”分割。 HTTP_CLIENT_IP 在高級匿名代理中,這個代表了代理服務(wù)器IP。既然是http協(xié)議擴展一個實體頭,并且這個值對于傳入端是信任的,信任傳入方按照規(guī)則格式輸入的。以下以x_forword_for例子加以說明,正常情況下,這個值變化過程。

image


分析Bug風(fēng)險點:

通過剛剛分析我們發(fā)現(xiàn),其實這些變量,來自http請求的:x-forword-for字段,以及client-ip字段。 正常代理服務(wù)器,當(dāng)然會按rfc規(guī)范來傳入這些值。但是,當(dāng)一個用戶直接構(gòu)造該x-forword-for值,發(fā)送給用戶用戶,那將會怎么樣呢?

image圖(1)

第2步,修改x-forword-fox值,我們看看結(jié)果

image

 

第三步,我們再修改下看看會怎么樣?

image

 

哈哈,看到上面結(jié)果沒,x-forwarded-for不光可以自己設(shè)置值,而且可以設(shè)置任意格式值。 這樣一來,好比就直接有一個可以寫入任意值的字段。并且服務(wù)器直接讀取,或者寫入數(shù)據(jù)庫,或者做顯示。它將帶來危險性,跟一般對入輸入沒有做任何過濾檢測,之間操作數(shù)據(jù)源結(jié)果一樣。 并且容易帶來隱蔽性。

結(jié)論:

上面getip函數(shù),除了客戶端可以任意偽造IP,并且可以傳入任意格式IP。 這樣結(jié)果會帶來2大問題,其一,如果你設(shè)置某個頁面,做IP限制。 對方可以容易修改IP不斷請求該頁面。 其二,這類數(shù)據(jù)你如果直接使用,將帶來SQL注冊,跨站攻擊等漏洞。至于其一,可以在業(yè)務(wù)上面做限制,最好不采用IP限制。 對于其二,這類可以帶來巨大網(wǎng)絡(luò)風(fēng)險。我們必須加以糾正。

需要對getip 進行修改,得到安全的getip函數(shù)。

這類問題,其實很容易出現(xiàn),以前我就利用這個騙取了大量偽裝投票。有它的隱蔽性,其實只要我們搞清楚了,某些值來龍去脈的話。理解了它的原理,修復(fù)該類bug將是非常容易。

題外話,做技術(shù),有三步,先要會做,會解決;后要思考為什么要這么做,原因原理是什么;最后是怎么樣做,有沒有其它方法。多問問自己,你發(fā)現(xiàn)距離技術(shù)真理越來越近。你做事會越來越得心應(yīng)手的!

作者:chengmo QQ:8292669

php技術(shù)獲取用戶Ip地址通用方法與常見安全隱患(HTTP_X_FORWARDED_FOR),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产亚洲AV精品无码麻豆 | 全部老头和老太XXXXX | 大桥未久电影在线观看 | 久久免费黄色 | 扒开她的黑森林让我添动态图 | 久久精品亚洲AV高清网站性色 | 宿舍BL 纯肉各种PLAY H | 女人把腿张开叫男人桶免费视频 | 免费欧美大片 | 国产亚洲日韩在线播放不卡 | 2019中文字幕乱码免费 | 亚洲色综合中文字幕在线 | 国产成人精品自拍 | 第一福利视频网站在线 | 无码人妻99久久密AV | 有码 亚洲 制服 国产 在线 | 毛篇片在线观看 | 亚洲国产精品嫩草影院久久 | 国产三级视频在线 | 日本吃孕妇奶水免费观看 | 永久免费看A片无码网站四虎 | 亚洲欧洲无码AV在线观看你懂的 | 啊轻点灬大JI巴又大又粗 | 亚洲午夜精品久久久久久抢 | 日韩午夜中文字幕电影 | 亚洲国产欧美日本大妈 | 蜜桃婷婷狠狠久久综合9色 蜜桃视频一区二区 | 永久免费在线观看视频 | 白丝高中生被c爽哭 | 日韩精品在线看 | 亚洲国产黄色 | 被cao的奶水直喷高H | 恋夜影院支持安卓视频美女 | 伦理片a在线线2 | 亚洲国产在线观看免费视频 | 丰满少妇被猛烈进出69影院 | 99久久久久精品国产免费麻豆 | 国拍自产精品福利区 | 亚洲裸舞 hd | 99免费在线 | 国产亚洲精品线观看不卡 |