iT邦幫忙

0

XSS&CSRF&Replay

跨站點腳本(Cross-Site Scripting:XSS)和注入(Injection)
輸入驗證可以有效緩解跨站點腳本(XSS)和注入。沒有輸入驗證,惡意用戶可以輸入JavaScript,SQL或XML代碼來攻擊系統。

跨站請求偽造(Cross-Site Request Forgery:CSRF)
跨站請求偽造(CSRF)是一個很好的選擇。傳統的CSRF攻擊會發生以下先決條件:

  1. 受害用戶已登錄到系統(例如,在線銀行)。
  2. 受害用戶單擊帶有偽造或操縱參數的惡意超鏈接。
  3. 受害系統接受作為HTTP GET請求發送的URL。
    以下是緩解CSRF攻擊的技巧:
  4. 系統不應接受通過GET進行的交易請求。而是應通過POST,PUT或DELETE完成事務。RESTful API通過以下方式使用HTTP動詞/方法:GET用於查詢,POST用於插入,PUT用於修改,DELETE用於刪除。
  5. CSRF攻擊也可以通過iframe內的HTTP形式觸發。因此,應執行同源政策。現代Web瀏覽器默認情況下啟用同源策略。
  6. 攻擊者可以從攻擊工具發送CSRF攻擊。減輕這種風險的最終方法是以每種HTTP形式實現存儲在隱藏輸入中的身份驗證代碼。Microsoft ASP.NET MVC很好地支持此功能。

重播(Replay)
重播可能由中間人,惡意用戶或無意行為觸發。重播消息可能會或可能不會被操縱。該問題並不建議緩解重放攻擊。
參考
. 跨站點腳本(XSS)
. 跨站請求偽造(CSRF)
. 防止ASP.NET MVC應用程序中的跨站點請求偽造(CSRF)攻擊
. 財務導向的Web應用程序中的常見安全問題
. 同源政策
. 同源策略:現代瀏覽器中的評估
. 現代瀏覽器中的原始策略執行
. 同源政策的權威指南
. 靜默提交POST表單(CSRF)的示例

資料來源: Wentz Wu QOTD-20200520
個人部落格:https://choson.lifenet.com.tw/


尚未有邦友留言

立即登入留言