看板 talk 關於我們 聯絡資訊
XSS攻擊,就是攻擊者對某個他要攻擊的網站,網站內的input欄位,寫入惡意的script, 若網站本身不對這些輸入進行處理,那麼當有不知情的使用者開啟該網站, 這段惡意script就有可能跟著網站內容一起被下載下來到使用者的電腦, 惡意script就會在不知情使用者電腦中來執行,這就是XSS攻擊。Thymeleaf這個類似JSP的前端渲染工具,他的語法本身即具備了防止XSS攻擊的功能。 因為Thymeleaf的語法,會將<script>開頭的字串,通通轉成是另一種格式的字串, 這樣瀏覽器看到這些被轉換後的字串, 就不會解讀成是一串script來執行,而是解讀成一串純文字。既然是純文字那呈顯就好, 這樣就避免了惡意script被執行。也就避免了XSS攻擊。 -------------------------------------------------- CSRF攻擊,是攻擊者利用某個網站對於表單登入沒有多加檢查的缺點, 偽造一個某網站的表單,這個表單與該網站的關鍵功能相關聯 ,例如匯款,只要對這個表單按下確認,就會執行匯款動作。 攻擊者做出這樣的表單,接著傳送給不知情的使用者,例如透過電子郵件來傳送, 不知情的使用者點擊後,表單即會被確認,進而執行匯款動作。造成使用者的損失。 這種攻擊的防禦方法,就是利用原始使用者的資訊都會被事先保存於HttpSession內 這個特性,於表單jsp檔,渲染原始使用者的Session資訊, 這樣表單本身在傳送時,就都會一併傳送原始使用者的相關資訊, 而攻擊者的Session資訊,同時也會隨著以上的資訊,一起傳送到後端。 這樣只要後端接收到表單,拿著表單內原始使用者資訊,跟攻擊者的Session來做比較, 若兩方資料不同,即可判斷該張表單並非原始使用者發出,那就把這個請求給阻擋下來。 這樣即成功防止了CSRF攻擊。 這可以透過Spring Security來實作。 -------------------------------------- 而Session hijacking,是透過攔截http請求回應中的sessionId,來偽造某個使用者的 HttpSession。 所以若是對http請求回應進行加密,即可避免被攔截到明碼的sessionId,進而避免 被偽造出使用者的HttpSession。 具體加密的方式,是告訴瀏覽器,http請求回應都要改以https來傳送。 告訴瀏覽器的方式,就是在html檔內添加設定。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.125.132.50 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/talk/M.1710327458.A.2BE.html
iLeyaSin365: 蠻想駭喜歡的人的ig的 03/13 22:00