天天看點

由被WebInspect攻擊引發的php header()使用問題

最新做的一個項目,被測試組猛烈攻擊,暴露了不少問題。其中一個問題印象深刻!

  測試使用了webinspect這個掃描工具,掃描了整個網站,包括背景。結果我們的資料庫裡被灌入大量的垃圾資料,并修改了原有的資料。總之,慘不忍睹!

  後來,我們發現我們背景的一個簡單的檢查是否登入的方法有問題:在判定未登入時,使用php header()跳轉頁面,沒有在這個方法執行後退出執行。這樣的話,頁面跳轉,但在header()下面的代碼依然會執行。

  現總結下php header()使用時注意的問題:

  1、location和“:”号間不能有空格,否則會出錯。

  2、在用header前不能有任何的輸出。

  3、header後的php代碼還會被執行。記得加exit() 或者die 退出。

  另外,背景登入位址注意安全,不讓他人輕易猜到!