Re: [閒聊] 關於安全性

看板PHP作者 (請勿忘記密碼)時間19年前 (2007/01/28 15:13), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串3/4 (看更多)
※ 引述《chweng ()》之銘言: : ※ 引述《eric77712 (心要讓你聽見)》之銘言: : : 大家好: : : PHP有個函是叫include();, : : 我覺得這個函式有個小缺點,他可以include("url");, : : 這樣的話對於對方Server的資料安全可能會有危險, : : 因為可以在include("url");完之後去Try看看對方PHP有什麼變數, : : 所以我在想,是不是可以在每個頁面最後加上unset();把不用的變數拿掉, : : 大家的看法如何呢? : 沒那麼誇張吧? : 就算是去 include 別人的 url,也祇會收到對方處理過後的資料而已, : 應該不會接收到對方處理過程中所用的變數。 : 我剛剛試了一下,應該是沒辦法用這方法讀到才對, : 或者我誤會你的意思了?可以請你實作一個看看嗎? : 有一種比較常見的情況是,某些程式會以 inc 為副檔名, : 但偏偏 server 又忘了把這類檔案的 MIME type 設成 application/x-httpd-php, : 導致 server 直接以 text/plain 直接把程式碼全給倒出來… : 如果這時候程式中剛好又含有重要資訊的話,就直接被別人看光光了。 : 不過這時候也不需要 include,直接踹到該 inc 正確的位置就可以了…… include("http://") 這種方式只能擷取到對方web server執行完後送出的html (或者其他格式)內容,這樣是不會抓到對方的PHP原始碼的(除非就像c網友所 提到的狀況)。不過include在多人共用的伺服器上面確實有可能把其他使用者 的程式碼抓進來,例如在虛擬主機上面,這種狀況是有可能發生的(其他檔案 操作的功能也一樣)。PHP對於這個問題有提供一些方式去防止使用者試圖 去include/require/fopen()他們不該看到的檔案,請查詢關於safe mode的資料。 http://www.php.net/manual/en/features.safe-mode.php -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.132.153.19

01/28 18:13, , 1F
Good...
01/28 18:13, 1F
文章代碼(AID): #15l4qC_e (PHP)
討論串 (同標題文章)
本文引述了以下文章的的內容:
以下文章回應了本文
完整討論串 (本文為第 3 之 4 篇):
文章代碼(AID): #15l4qC_e (PHP)