[PHP] 如何保護Querystring?
David Walsh的文章:Tips for Protecting Querystring Keys & Values in PHP,建議了以下五種保護Querystring參數和值的方法:
- 整數需指定資料型態(Typecast Value when Expecting Numbers):確保整數不會被當成字串而造成錯誤。
- 淨化輸入值(Sanitize Input):建立各種類型資料的處理函式,確保資料傳遞時的一致性與安全性。類似在Dreamweaver裡面的GetSQLValueString函式。
- 關閉REGISTER_GLOBALS(Make Sure REGISTER_GLOBALS is Off)。
- 不使用有意義的變數名稱(Don’t Make Variable Names Meaningful):David原本的建議如下,但是有一位仁兄在回應中則持反對的意見,認為這並無助於安全性(還是可以從數值的一致性猜出變數的意義)。
- 將數值加密(Encrypt Querystring Values):使用md5來加密參數值。
最後,請問有人知道「Querystring」的中文怎麼翻譯嗎?








