我正在使用PHP和Javascript製作一個小文件瀏覽腳本,並且我遇到了一個小問題。當前目錄存儲在URL中的GET爲index.php?dir=/projects/jphp
。然後我用這個存儲在variabe $scandir
:祕密../進入真實目錄PHP
$scandir = $_GET['dir'];
爲fiels都在表中列出,以便用戶可以關注一下thorugh它們,文件夾超鏈接是這樣的:
<td><a style="color: red;" href="edit.php?pid=<?php echo $project['id'] ?>&dir=<?php echo $scandir . "/" . $thisfile; ?>"><?php echo $thisfile; ?></a></td>
變量$thisfile
填充使用遍歷目錄中每個文件的foreach()
循環。
用戶開始瀏覽文件夾和文件,文件地址就會變得混亂如此,例如,瀏覽文件的一分鐘之後,$_GET['dir'];
貌似
projects/jphp/js/../js/../../../projects/jphp
有沒有什麼辦法讓路徑很簡單,因爲上面的路徑是完全一樣的
projects/jphp
如果你知道如何將頂部轉換爲底部,那將是非常好的,謝謝!我可能沒有解釋清楚,所以讓我知道你我沒有道理。
,請務必瞭解的[RFI]的影響(http://de.wikipedia.org/wiki/Remote_File_Inclusion遠程文件包含) – knittl 2011-12-28 14:13:25
是的,我建議不要動態/用戶輸入考慮安全影響。 – Kzqai 2011-12-28 16:19:25
就我個人而言,我發現本地應用程序一起入侵有可能成爲問題,因爲他們總是可以成爲互聯網公衆,如果有人像「好的,在本地網絡上訪問它是好的,但我真的很喜歡從家中或在路上訪問它「等等。但只要你意識到危險。 – Kzqai 2011-12-30 19:18:21