前端——安全類
安全類
一、CSRF:通常稱為跨站請求偽造,英文名Cross-Site request forgery縮寫CSRF
CSRF攻擊原理:
實現CSRF攻擊的兩大因素:
1、網站中介面存在漏洞
2、使用者一定在註冊網站登入過
CSRF防禦措施:
1、Token驗證
2、Referer驗證(存在於HTTP的頭部,頁面來源驗證)
3、隱藏令牌
二、XSS攻擊——cross-site scripting 跨站指令碼攻擊
XSS攻擊是Web攻擊中最常見的攻擊方法之一,它是通過對網頁注入可執行程式碼且成功地被瀏覽器執行,達到攻擊的目的,形成了一次有效XSS攻擊,一旦攻擊成功,它可以獲取使用者的聯絡人列表,然後向聯絡人傳送虛假詐騙資訊,可以刪除使用者的日誌等等,有時候還和其他攻擊方式同時實施比如SQL注入攻擊伺服器和資料庫、Click劫持、相對連結劫持等實施釣魚,它帶來的危害是巨大的,是web安全的頭號大敵。
攻擊條件:
1、需要向Web頁面注入惡意程式碼
2、惡意程式碼能夠被瀏覽器成功執行
XSS攻擊方式:反射型、儲存型
反射型:發出請求時,XSS程式碼出現在URL中,作為輸入提交到伺服器端,伺服器端解析後響應,XSS程式碼隨響應內容一起傳回給瀏覽器,最後瀏覽器解析執行XSS程式碼,這個過程像一次反射,故叫做反射型XSS。
儲存型:儲存型XSS和反射型XSS的差別僅在於提交的程式碼會儲存在伺服器端吧(資料庫、記憶體、檔案系統等),下次請求目標頁面時不用再提交XSS程式碼。
XSS防禦措施:
1、編碼——對使用者輸入的資料進行HTML Entity編碼
2、過濾——移除使用者上傳的DOM屬性,如:onerror等
移除使用者上傳的
3、校正——避免直接對HTML Entity解碼
使用DOM Parse轉換,校正不配對的DOM標籤。
CSRF與XSS的區別:
XSS是向頁面注入JS去執行,在JS函式體裡做它想做的事;CSRF利用本身的漏洞幫你自動執行介面,CSRF依賴於使用者要登入的網站。