跨站腳本與跨站請(qǐng)求偽造

跨站腳本( cross site script)XSS

  • 攻擊方式
  1. 通過正常途徑(評(píng)論輸入、表單提交、富文本編輯器)注入拼接的惡意腳本,竊取用戶信息
  • 解決方案
  1. 站點(diǎn)首頁(yè)請(qǐng)求設(shè)置 content-security-policy響應(yīng)頭,規(guī)定哪些腳本可以被執(zhí)行
  2. 對(duì)用戶輸入內(nèi)容進(jìn)行轉(zhuǎn)義、防止惡意腳本被執(zhí)行
  3. 響應(yīng)的cookies設(shè)置httpOnly屬性,規(guī)定腳本不能讀取用戶cookies

跨站請(qǐng)求偽造(cross site request forgery)CSRF

  • 攻擊方式
  1. 用戶登錄A保存cookies,然后引導(dǎo)用戶點(diǎn)訪問攻擊者提供的B站點(diǎn),在B站點(diǎn)內(nèi)訪問A
  2. 這時(shí)發(fā)送的請(qǐng)求就會(huì)攜帶A站點(diǎn)的cookies
  • 解決方案
  1. 可以對(duì) Cookie 設(shè)置 SameSite 屬性。該屬性表示 Cookie 不隨著跨域請(qǐng)求發(fā)送,可以很大程度減少 CSRF 的攻擊,但是該屬性目 前并不是所有瀏覽器都兼容。
  2. 服務(wù)端通過檢查http請(qǐng)求頭頭referer的值是不是這個(gè)本站,來(lái)判斷是不是CSRF攻擊。
  3. 用戶登錄時(shí)生成一個(gè)token或者sessionId,然后返回給用戶,每次向服務(wù)端發(fā)起請(qǐng)求時(shí)請(qǐng)求頭攜帶該令牌,服務(wù)端驗(yàn)證令牌是否存在且有效才放行該請(qǐng)求。
  4. 為關(guān)鍵操作添加驗(yàn)證碼校驗(yàn)。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容