OWASP ZAP 憑證安裝的方式(OWASP ZAP Certificate)

問題

透過 ZAP 去錄 https 時,如果沒有安裝憑證時,在 Browser 就會出現「 “Your connection is not private”, “你的連線並不安全”」的警告訊息,如下圖所示。
Chrome的警告

Firefox的警告

解法

為什麼會出現那個警告訊息呢? 因為 Browser 用的那個憑證已經不是原本連接的那個 host 的憑證,而變成了 OWASP Zed Attack Proxy Root CA 了哦! 而這個憑證並沒有被電腦 Trust 所以就會有那個警告訊息哦!
那要怎麼辦呢? 就是把憑證裝進去電腦的信任區。
以下我們就一步步來說明,

1.儲存 ZAP 憑證

開啟 OWASP ZAP ,Tools -> Options -> Dynamic SSL Certificates -> Save
儲存 ZAP 憑證

2.匯入 ZAP 憑證

DbClick剛才儲存的憑證檔,按下「Install Certificate…」,並將憑證存到「Trusted Root Certification Authorities」之中,如下,
Certificate Import Wizard

記得要將憑證存到「Trusted Root Certification Authorities」之中
存到「Trusted Root Certification Authorities」

最後按下 Finish 就可以了哦!
Import 完成

FIREFOX 匯入 ZAP 憑證

因為 firefox 憑證是自已管理的,所以 firefox 也要匯入 ZAP 憑證 ,如果會用 firefox 來錄的話,可以省略這步哦!
firefox 選項 -> 隱私權與安全性 (或在網址列輸入 about:preferences#privacy) -> 檢視憑證
隱私權與安全性

匯入 ZAP 憑證
匯入 ZAP 憑證

勾選「信任此憑證機構以識別網站」
勾選「信任此憑證機構以識別網站」

透過上述的方式,我們就可以錄 https 的網站,而不會一直出現警告訊息。 如果不會再錄的話,就請記得將 ZAP 的憑證移除哦!

ASP.NET MVC架構下如何防範表單偽造(CSRF)

首先,何謂CSRF?CSRF是Cross-Site Request Forgery的簡稱,簡單來說就是惡意駭客為竊取資訊用script創造成的假表單。詳情請參考OWASP官網解說:Cross-Site_Request_Forgery

那麼在ASP.NET MVC底下,其實要防範這個問題相當簡單,只要在Razor Ajax.BeginForm或是Html.BeginForm,甚至是一般傳統Html

內加上@Html.AntiForgeryToken,就會在表單Submit的時候產生2個相同值的Token。 繼續閱讀 “ASP.NET MVC架構下如何防範表單偽造(CSRF)”

資安弱點與解決範例

在叡揚內部的 Jenkins 上有個 Secure Codes 頁籤,其中有許多兩兩成對的專案,每對表達一個資安弱點的具體案例與解決。由於我們以 Checkmarx 掃描工具為主,所以每對專案名稱中都會含 Checkmarx 報告中的弱點全名,例如「Stored XSS」這個弱點,就會有一個 Stored XSS 與一個 Stored XSS Resolved 專案。

繼續閱讀 “資安弱點與解決範例”