我很好奇在PHP代碼嵌入的HTML網頁(可能存在於服務器上的網頁爲「webpage.php」)或PHP腳本中的PHP安全性可能會被HTML頁面引用(也就是說,PHP腳本實際上並不是服務器上存在的網頁的一部分,如「something.php」,並被「webpage.html」引用)。說到這裏,讓我們說如果我的PHP腳本的源代碼被任何人知道,那將是一個非常大的問題。我知道,當您在瀏覽器中查看PHP頁面的源代碼時,PHP腳本未顯示,但如果PHP服務器失敗並且HTML仍然加載(甚至可能),那麼用戶能夠看到PHP腳本? 更爲一般的是,用戶是否可以通過Web瀏覽器訪問PHP腳本的來源,如果有,我該如何防止它?PHP腳本的安全性嵌入式或其他
回答
如果PHP服務器失敗並且HTML仍然加載(甚至有可能),那麼用戶能夠看到PHP腳本?
安全漏洞之外,當有人與服務器搞亂或遷移跨服務器和PHP文件,該網站已被傾倒進,這不是建立執行PHP文件夾這通常發生。這是您爲PHP部署付出的代價,就像將文件放入文件夾一樣簡單。
雖然它從來沒有理想的泄漏PHP源,你可以把所有的敏感部署的信息(如數據庫密碼)在PHP減輕的情況包括文件的web界面的根目錄(映射到/
URL的文件夾外,通常稱爲htdocs
)。要搞砸配置來泄漏這種情況要困難得多。
(對於更大,更模塊化的項目,你通常會反正做散裝包括您處理的工作。)
我是PHP新手,然後如何從我的網頁代碼中訪問這些腳本? – 2010-04-20 22:57:57
這與我的建議基本相同。您只需在「include_once」上使用「include」,並給出文件的相對或絕對路徑。 – 2010-04-21 02:04:46
@bobince,感謝您的回覆,我會確保我的重要腳本不在htdocs文件夾中。在其他閱讀中,我也發現很多人都在加密他們的PHP,你能推薦任何工具和策略來正確地做這件事嗎? – ubiquibacon 2010-04-21 03:35:49
你可以做,以防範簡單的服務器錯誤配置一個簡單的事情就是HTML文件包括PHP文件,該文件是文檔根目錄(域外的或文檔根以上級別的,通常是「 htdocs目錄「)。這樣,如果出現簡短的配置錯誤,所有用戶都將獲得包含文件的路徑,但他們無法直接在瀏覽器中加載包含的文件。
- 1. PHP腳本安全性的差異:嵌入HTML還是獨立文件?
- 2. 使用Python或其他嵌入式腳本語言部署應用程序
- 3. 嵌入式Flash安全
- 4. Power BI嵌入式安全
- 5. 從Boo腳本導入其他腳本
- 6. 安全性添加到不安全的PHP MySQL的腳本半自動地
- 7. 將php腳本嵌入到已經嵌入到php腳本中的href中
- 8. 關於此腳本的安全性
- 9. 分享Lua腳本的安全性
- 10. php安全課程和其他安全建議
- 11. 建立登錄安全的PHP腳本
- 12. 安全的PHP電子郵件腳本
- 13. 安全的PHP文件上傳腳本
- 14. 安全的PHP腳本執行
- 15. 別名,mod_rewrite或其他共享的PHP腳本?
- 16. PHP腳本中這個MySQL語句的安全性如何?
- 17. 從其他域下載PHP內容(安全方式)?
- 18. 以最低安全級別運行DLR嵌入式腳本背景
- 19. .NET DLR安全或沙盒腳本
- 20. 混淆或安全Jmeter腳本
- 21. 使用嵌入或其他嵌入外部網址與Laravel
- 22. EJS安全使用? (嵌入式JS)
- 23. 嵌入式Glassfish,安全和Arquillian問題
- 24. 的腳本Exec的其他腳本
- 25. 從其他目錄運行PHP腳本
- 26. php優於其他腳本語言
- 27. 如何從其他PHP腳本
- 28. 這個PHP腳本是否安全?
- 29. Java - 「安全」腳本
- 30. 解析其他腳本的導入正則表達式?
就像一個不相關的音符,許多最安全的框架都是開源的,所以它肯定不是人們能夠讀取源代碼的安全漏洞,除非你正在做類似「if($ _POST ['password'] =='secret12345'){...}」 – 2010-04-20 23:04:12
@byronh:所以它是好吧,如果我讀你的config.php? – Tower 2010-04-21 08:32:00