PHP是一種具有豐富特性的語言,提供了大量的函數,使編程者實現某個功能很容易。但是從安全的角度來看,功能越多,要保證它的安全性就越難,,遠程文件就是說明這個問題的一個很好的例子:
<?php if (!($fd = fopen("$filename", "r")) echo("Could not open file: $filename<BR>\n");?>
上面的腳本試圖打開文件“$filename”,如果失敗就顯示錯誤信息。很明顯,如果我們能夠指定“$filename”的話,就能利用這個腳本浏覽系統中的任何文件。但是,這個腳本還存在一個不太明顯的特性,那就是它可以從任何其它WEB或FTP站點讀取文件。實際上,PHP的大多數文件處理函數對遠程文件的處理是透明的。
例如:
如果指定“$filename”為“