大家上午好,大家經常聽到XSS攻擊這個詞,那么XSS攻擊到底是什么,以及如何防御大家清楚么?今天,小墨就給大家講一下:XSS攻擊的定義、類型以及防御方法。 什么是XSS攻擊? XSS攻擊全稱跨站腳本攻擊,是一種在web應用中的計算機安全漏洞,它允許惡意web用戶將代碼植入到提供給其它用戶使用的頁面中。
XSS攻擊有哪幾種類型? 常見的 XSS 攻擊有三種:反射型XSS攻擊、DOM-based 型XXS攻擊以及存儲型XSS攻擊。 1.反射型XSS攻擊 反射型 XSS 一般是攻擊者通過特定手法(如電子郵件),誘使用戶去訪問一個包含惡意代碼的 URL,當受害者點擊這些專門設計的鏈接的時候,惡意代碼會直接在受害者主機上的瀏覽器執行。反射型XSS通常出現在網站的搜索欄、用戶登錄口等地方,常用來竊取客戶端 Cookies 或進行釣魚欺騙。 2.存儲型XSS攻擊 也叫持久型XSS,主要將XSS代碼提交存儲在服務器端(數據庫,內存,文件系統等),下次請求目標頁面時不用再提交XSS代碼。當目標用戶訪問該頁面獲取數據時,XSS代碼會從服務器解析之后加載出來,返回到瀏覽器做正常的html和JS解析執行,XSS攻擊就發生了。存儲型 XSS 一般出現在網站留言、評論、博客日志等交互處,惡意腳本存儲到客戶端或者服務端的數據庫中。 3.DOM-based 型XSS攻擊 基于 DOM 的 XSS 攻擊是指通過惡意腳本修改頁面的 DOM 結構,是純粹發生在客戶端的攻擊。DOM 型 XSS 攻擊中,取出和執行惡意代碼由瀏覽器端完成,屬于前端 JAVAScript 自身的安全漏洞。
如何防御XSS攻擊?1. 對輸入內容的特定字符進行編碼,例如表示 html標記的 < > 等符號。 2. 對重要的 cookie設置 httpOnly, 防止客戶端通過document.cookie讀取 cookie,此 HTTP頭由服務端設置。 3. 將不可信的值輸出 URL參數之前,進行 URLEncode操作,而對于從 URL參數中獲取值一定要進行格式檢測(比如你需要的時URL,就判讀是否滿足URL格式)。 4. 不要使用 Eval來解析并運行不確定的數據或代碼,對于 JSON解析請使用 JSON.parse() 方法。 5. 后端接口也應該要做到關鍵字符過濾的問題。 以上,是小墨給大家分享的關于XSS攻擊的全部內容,大家記得收藏方便以后查看哦。如今,各種類型網絡攻擊日益頻繁,除了XSS攻擊之外,比較常見的網絡攻擊類型還包括DDoS攻擊、CC攻擊等,它們非常難以防御,除了需要做好日常網絡安全防護之外,還需要接入高防服務,可以接入墨者盾高防,通過墨者盾高防隱藏源IP,對攻擊流量進行清洗,保障企業網絡及業務的正常運行。