色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術(shù)文章
文章詳情頁

PHP安全-遠(yuǎn)程文件風(fēng)險

瀏覽:84日期:2022-09-11 18:49:41
遠(yuǎn)程文件風(fēng)險

PHP有一個配置選項叫allow_url_fopen,該選項默認(rèn)是有效的。它允許你指向許多類型的資源,并像本地文件一樣處理。例如,通過讀取URL你可以取得某一個頁面的內(nèi)容(HTML):

<?php

$contents = file_get_contents(’http://example.org/’);

?>

正如第五章所討論的那樣,當(dāng)被污染數(shù)據(jù)用于include和require的文件指向時,會產(chǎn)生嚴(yán)重漏洞。實際上,我認(rèn)為這種漏洞是PHP應(yīng)用中最危險的漏洞之一,這是因為它允許攻擊者執(zhí)行任意代碼。

盡管嚴(yán)重性在級別上要差一點,但在一個標(biāo)準(zhǔn)文件系統(tǒng)函數(shù)中使用了被污染數(shù)據(jù)的話,會有類似的漏洞產(chǎn)生:

<?php

$contents = file_get_contents($_GET[’filename’]);

?>

該例使用戶能操縱file_get_contents( )的行為,以使它獲取遠(yuǎn)程資源的內(nèi)容。考慮一下類似下面的請求:

http://example.org/file.php?file ... mple.org%2Fxss.html

這就導(dǎo)致了$content的值被污染的情形,由于這個值是通過間接方式得到的,因此很可能會忽視這個事實。這也是深度防范原則會視文件系統(tǒng)為遠(yuǎn)程的數(shù)據(jù)源,同時會視$content的值為輸入,這樣你的過濾機(jī)制會潛在的起到扭轉(zhuǎn)乾坤的作用。

由于$content值是被污染 的,它可能導(dǎo)致多種安全漏洞,包括跨站腳本漏洞和SQL注入漏洞。例如,下面是跨站腳本漏洞的示例:

<?php

$contents = file_get_contents($_GET[’filename’]);

echo $contents;

?>

解決方案是永遠(yuǎn)不要用被污染的數(shù)據(jù)去指向一個文件名。要堅持過濾輸入,同時確信在數(shù)據(jù)指向一個文件名之前被過濾即可:

<?php

$clean = array();

/* Filter Input ($_GET[’filename’]) */

$contents = file_get_contents($clean[’filename’]);

?>

盡管無法保證$content中的數(shù)據(jù)完全沒有問題,但這還是給出了一個合理的保證,即你讀取的文件正是你想要讀取的文件,而不是由攻擊者指定的。為加強(qiáng)這個流程的安全性,你同樣需要把$content看成是輸入,并在使用前對它進(jìn)行過濾。

<?php

$clean = array();

$html = array();

/* Filter Input ($_GET[’filename’]) */

$contents = file_get_contents($clean[’filename’]);

/* Filter Input ($contents) */

$html[’contents’] = htmlentities($clean[’contents’], ENT_QUOTES, ’UTF-8’);

echo $html[’contents’];

?>

上面的流程提供了防范多種攻擊的強(qiáng)有力的方法,同時在實際編程中推薦使用。

標(biāo)簽: PHP
相關(guān)文章:
主站蜘蛛池模板: 91精品一区二区三区在线观看 | 亚洲韩精品欧美一区二区三区 | 国产成人a大片大片在线播放 | 国产亚洲精品久久久久久久久激情 | 欧美手机手机在线视频一区 | 上海一级毛片 | 国产精品福利午夜h视频 | 午夜精品视频在线观看美女 | 国产永久精品 | 亚洲视频中文 | 日本加勒比在线观看 | 成年免费大片黄在线观看一 | 国产九九精品视频 | 欧美国产精品亚洲精品第一区 | 国内美女福利视频在线观看网站 | 91网在线 | 久久综合免费 | 久久精品国产半推半就 | 国产成人自拍在线 | 欧美 在线 成 人怡红院 | 欧美一级毛片在线一看 | 国产欧美一区二区三区视频在线观看 | 一区二区三区视频在线 | 欧美国产精品不卡在线观看 | 国产第一页久久亚洲欧美国产 | 18video9ex欧美生活片 | www日本com| 午夜视频在线观看一区二区 | 国产主播精品福利19禁vip | 久久2| 在线a人片免费观看国产 | 日韩性片 | 国产高清在线视频 | 欧美在线观看www | 亚洲欧美第一 | 亚洲国产福利精品一区二区 | 国产精品亚洲二区在线 | 男人天堂男人天堂 | 欧美三级美国一级 | 成在线人永久免费播放视频 | 在线亚洲一区二区 |