日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

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

PHP安全-文件系統(tǒng)跨越

瀏覽:249日期:2022-09-12 08:01:32
文件系統(tǒng)跨越

無論你用什么方法使用文件,你都要在某個(gè)地方指定文件名。在很多情況下,文件名會(huì)作為fopen()函數(shù)的一個(gè)參數(shù),同時(shí)其它函數(shù)會(huì)調(diào)用它返回的句柄:

<?php

$handle = fopen(’/path/to/myfile.txt’, ’r’);

?>

當(dāng)你把被污染數(shù)據(jù)作為文件名的一部分時(shí),漏洞就產(chǎn)生了:

<?php

$handle = fopen('/path/to/{$_GET[’filename’]}.txt', ’r’);

?>

由于在本例中路徑和文件名的前后兩部分無法由攻擊者所操縱,攻擊的可能性受到了限制。可是,需要緊記的是有些攻擊會(huì)使用NULL(在URL中表示為%00)來使字符串終止,這樣就能繞過任何文件擴(kuò)展名的限制。在這種情況下,最危險(xiǎn)的攻擊手段是通過使用多個(gè)../來方問上級(jí)目錄,以達(dá)到文件系統(tǒng)跨越的目的。例如,想像一下filename的值被指定如下:

http://example.org/file.php?file ... nother/path/to/file

與許多攻擊的情況相同,在構(gòu)造一個(gè)字串時(shí)如果使用了被污染數(shù)據(jù),就會(huì)給攻擊者以機(jī)會(huì)來更改這個(gè)字串,這樣就會(huì)造成你的應(yīng)用以你不希望方式運(yùn)行。如果你養(yǎng)成了只使用已過濾數(shù)據(jù)來建立動(dòng)態(tài)字串的習(xí)慣,就可以防止很多類型包括很多你所不熟悉的漏洞的出現(xiàn)。

由于fopen()所調(diào)用的文件名前導(dǎo)的靜態(tài)部分是/path/to,所以上面的攻擊中向上跨越目錄的次數(shù)比所需的更多。因?yàn)楣粽咴诎l(fā)起攻擊前無法察看源碼,所以典型的策略是過多次地重復(fù)../字串。../字串使用太多次并不會(huì)破壞上面的攻擊效果,所以攻擊者沒有必要猜測目錄的深度。

在上面的攻擊中使fopen()調(diào)用以你不希望方式運(yùn)行,它簡化后等價(jià)于:

<?php

$handle = fopen(’/another/path/to/file.txt’, ’r’);

?>

在意識(shí)到這個(gè)問題或遭遇攻擊后,很多開發(fā)者都會(huì)犯試圖糾正潛在的惡意數(shù)據(jù)的錯(cuò)誤,有時(shí)根本不會(huì)先對數(shù)據(jù)進(jìn)行檢查。正如第一章所述,最好的方法把過濾看成檢查過程,同時(shí)迫使使用者遵從你制定的規(guī)則。例如,如果合法的文件名只包含字母,下面的代碼能加強(qiáng)這個(gè)限制:

<?php

$clean = array();

if (ctype_alpha($_GET[’filename’]))

{

$clean[’filename’] = $_GET[’filename’];

}

else

{

/* ... */

}

$handle = fopen('/path/to/{$clean[’filename’]}.txt', ’r’);

?>

并沒有必要對filename值進(jìn)行轉(zhuǎn)義,這是因?yàn)檫@些數(shù)據(jù)中只用在PHP函數(shù)中而不會(huì)傳送到遠(yuǎn)程系統(tǒng)。

basename( )函數(shù)在檢查是否有不必要的路徑時(shí)非常有用:

<?php

$clean = array();

if (basename($_GET[’filename’]) == $_GET[’filename’])

{

$clean[’filename’] = $_GET[’filename’];

}

else

{

/* ... */

}

$handle = fopen('/path/to/{$clean[’filename’]}.txt', ’r’);

?>

這個(gè)流程比只允許文件名是字母的安全性要差了一些,但你不太可能要求那樣嚴(yán)格。比較好的深度防范流程是綜合上面的兩種方法,特別是你在用正則表達(dá)式檢查代碼合法性時(shí)(而不是用函數(shù)ctype_alpha( ))。

當(dāng)文件名的整個(gè)尾部是由未過濾數(shù)據(jù)組成時(shí),一個(gè)高危漏洞就產(chǎn)生了:

<?php

$handle = fopen('/path/to/{$_GET[’filename’]}', ’r’);

?>

給予攻擊者更多的靈活性意味著更多的漏洞。在這個(gè)例子中,攻擊者能操縱filename參數(shù)指向文件系統(tǒng)中的任何文件,而不管路徑和文件擴(kuò)展名是什么,這是因?yàn)槲募U(kuò)展名是$_GET[’filename’]的一部分。一旦WEB服務(wù)器具有能讀取該文件的權(quán)限,處理就會(huì)轉(zhuǎn)向這個(gè)攻擊者所指定的文件。

如果路徑的前導(dǎo)部分使用了被污染數(shù)據(jù)的話,這一類的漏洞會(huì)變得甚至更加龐大。這也是下一節(jié)的主題。

標(biāo)簽: PHP
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
麻豆国产一区| 中文在线а√天堂| 97精品久久| 97在线精品| 三级欧美韩日大片在线看| 国产精品一区二区免费福利视频| 91亚洲成人| 99xxxx成人网| 国产精品22p| 欧美在线网站| 麻豆极品一区二区三区| 99成人在线| 国产在视频一区二区三区吞精| 久久蜜桃av| 欧美日韩亚洲一区| 99久久夜色精品国产亚洲狼| 欧美日本三区| 欧美日韩高清| 精品亚洲免a| 中文字幕中文字幕精品| 日韩三区在线| 久久gogo国模啪啪裸体| 丝袜美腿亚洲色图| 欧美成人基地| 国产精品丝袜在线播放| 亚洲女同一区| 久久精品国产99国产| 中文在线日韩| 免费久久久久久久久| 久久久久97| 日本不卡高清视频| 欧美在线资源| 丁香六月综合| 国产精品免费不| 亚洲一区导航| 亚洲一区二区成人| 色综合www| 日韩精品乱码av一区二区| 伊人成人在线视频| 精品丝袜在线| 精品成人18| 国产视频一区二区在线播放| 视频在线观看一区二区三区| 久久久精品久久久久久96 | 欧美午夜精品一区二区三区电影| 精品视频国内| 人人爱人人干婷婷丁香亚洲| 欧美午夜不卡| 亚洲成人精品| 亚洲精品**中文毛片| 久久99蜜桃| 国产日产高清欧美一区二区三区 | 国产精品伊人| 欧美一级一区| 国产探花在线精品一区二区| 亚洲人成精品久久久| 日韩午夜一区| 国产婷婷精品| 国产美女精品| 在线综合亚洲| 欧美色图国产精品| 久久国产小视频| 欧美日韩一二三四| 伊人久久大香线蕉av不卡| 久久精品91| 日韩精品永久网址| 激情国产在线| 超碰超碰人人人人精品| 高清久久精品| 中文字幕在线高清| 久久天堂影院| 精品久久中文| 国产色播av在线| 日韩成人三级| 私拍精品福利视频在线一区| 日韩欧美国产精品综合嫩v| 国产不卡人人| 久久精品在线| 极品日韩av| 老鸭窝亚洲一区二区三区| 国产精品普通话对白| 亚洲欧美日本国产专区一区| 三级欧美在线一区| 日韩av中文在线观看| 国产无遮挡裸体免费久久| 久久精品国产成人一区二区三区| 丁香婷婷久久| 日本美女一区| 伊人久久婷婷| 亚洲精品九九| 国产亚洲人成a在线v网站| 里番精品3d一二三区| zzzwww在线看片免费| 蜜桃视频欧美| 亚洲一区av| 国产精品大片| 亚洲美女久久精品| 成人av二区| 亚洲精品少妇| 国产精品网在线观看| 麻豆国产在线| 视频在线观看一区二区三区| 国产日韩欧美一区| 中文字幕在线视频久| 亚洲欧美日韩高清在线| 首页亚洲欧美制服丝腿| 国产日韩在线观看视频| 福利片在线一区二区| 亚洲午夜在线| 日韩午夜视频在线| 久久精品伊人| 欧美精品激情| 91午夜精品| 一区二区三区四区日本视频| 国产精品日本| 久久伊人久久| 国产免费成人| 精品久久久中文字幕| 亚洲国产一区二区三区在线播放 | 日韩精品首页| 日韩欧美中文字幕在线视频| 国产一区福利| 亚洲一区国产| 麻豆一区二区三| 欧美精品一区二区三区精品| 欧美亚洲色图校园春色| 中文字幕成在线观看| 亚洲最新av| av综合电影网站| 日韩免费精品| 蜜臀av免费一区二区三区| 你懂的亚洲视频| 99视频精品免费观看| 国产福利亚洲| 久久福利毛片| 97精品视频在线看| 婷婷视频一区二区三区| 日韩免费福利视频| 欧美日韩xxxx| 好看不卡的中文字幕| 免费亚洲婷婷| 免费视频一区二区| 麻豆mv在线观看| 久久精品99久久久| 亚洲精品99| 亚洲黄色免费看| 欧美自拍一区| 日韩视频一区二区三区在线播放免费观看| 免费一级欧美片在线观看网站 | 视频一区视频二区中文字幕| 国产一区三区在线播放| 久久国产88| 88xx成人免费观看视频库| 日韩va亚洲va欧美va久久| 伊人久久成人| 日韩欧美不卡| 精品日韩一区| 欧美视频精品全部免费观看| 丝袜美腿高跟呻吟高潮一区| 日韩啪啪电影网| 久久在线91| 国产精品最新自拍| 亚洲精品日本| 丝袜诱惑制服诱惑色一区在线观看| 电影亚洲精品噜噜在线观看| 美女精品视频在线| 免费在线观看视频一区| 蜜桃国内精品久久久久软件9| 不卡一二三区| 精品国产乱码久久久久久樱花| 日韩欧美高清一区二区三区| 亚洲在线电影| 亚洲a一区二区三区| www.51av欧美视频| 久久三级毛片| 欧美极品中文字幕| 国产乱人伦精品一区| 日韩国产精品久久久久久亚洲| 亚洲尤物在线| 不卡一区2区| 欧美日韩在线二区| 快播电影网址老女人久久| 97在线精品| 国产91在线播放精品| 精品视频在线观看网站| 麻豆国产一区| 国产极品久久久久久久久波多结野 | 日韩精品一级| 亚洲免费观看| 伊人成人网在线看| 999在线观看精品免费不卡网站| 欧美丝袜一区| 欧美va天堂| 精品欧美激情在线观看| 久久精品国产99久久| 亚洲国产影院| 91精品国产调教在线观看| 久久国产小视频| 伊人精品视频| 免费一级片91|