• Web Security 27.10.2014

    網站安全的設定 — Asp .Net 為例Web.config

    網站的資訊安全設定可以避免不必要的駭客攻擊行為,

    這篇文章主要的目的是針對 ASP .Net 網站設定 web.config ,提出建議

     

    httpCookies

    • httpOnlyCookies = true

    這個值表示 Cookie 只會在透過網路 http 時被傳輸,

    換句話說,程式 JavaScript 的讀取,該 cookie 不會被讀取

    為什麼要這麼做呢? 因為Cookie 通常包含有login session 的資訊,

    取得Authentication cookie 可以間接在不需要帳號密碼的情況下,登入該網站。

    • requireSSL = true

    這個值表示只有在 SSL 也就是 https 的情況下才會傳輸 cookie 給 Web Server 端。

    SSL 會強制將雙方通訊的內容加密,因此可以避免 man in the Middle 的攻擊

     

    • sessionState

    設定如果多久沒有用就必須 timeout。

    “regenerateExpiredSessionId” 主要是用來重新產生 Session ID

    避免駭客容易猜到,或是使用之前用過的 SessionID

     

    compilation

    這個值 debug = true 時,就會把相關的 debug symbols 輸出到網頁錯誤頁面上。

    造成太多的內部資訊讓有心的駭客知道。

     

    httpRuntime

    • enableHeaderChecking = true

    這個值可以幫助 web Server 檢查基本的 Injection Attacks 或是 XSS (cross-site scripts)

     

    • enableVersionHeader= false

    如果設定為 enableVersionHeader= true. 則該網站會回傳過多的版本資訊給使用者。

    間接讓駭客有機會查詢該版本已知的弱點進行攻擊。

    customErrors


    這個值主要是用來設定當網頁錯誤頁面發生時,如何呈現該問題

    因為錯誤頁面的訊息中,往往會透露 Web Server 版本,甚至是程式內部運作的邏輯。

    因此,設計一頁用來顯示404 檔案找不到的錯誤,會降低該風險。

    404

     

    如果您的網站也是 ASP .net 建置,不防可以檢視這些設定。

    • httpCookies
    • compilation
    • customErrors
    • httpRuntime

     

     

    Posted by Tony @ 9:36 pm

    Tags: , ,

  • Leave a Reply

    Your email address will not be published.