XSS基礎

2020-10-29 11:00:22

XSS漏洞簡介

跨站指令碼攻擊(XSS),是最普遍的Web應用安全漏洞。這類漏洞能夠使得攻擊者嵌入惡意指令碼程式碼到正常使用者會存取到的頁面中,當正常使用者存取該頁面時,則可導致嵌入的惡意指令碼程式碼的執行,從而達到惡意攻擊使用者的目的。

XSS漏洞原理

反射型XSS
反射型XSS也叫做非持久型XSS,攻擊者在URL中插入XSS程式碼,伺服器端將URL中的XSS程式碼輸出到頁面上,攻擊者將帶有XSS程式碼的URL傳送給使用者,使用者開啟後受到XSS攻擊。
在這裡插入圖片描述
反射型XSS攻擊

  1. 將 XSS 資料夾放到php網站根目錄下
    在這裡插入圖片描述
  2. 在瀏覽器中存取http://127.0.0.1/XSS/xss1.php
  3. 在「輸入」表單中輸入 「>< img src=1 οnerrοr=「alert(/xss/)」/> ,(<和img之間沒有空格)點選提交,會看到瀏覽器彈窗顯示「/xss/」。在這裡插入圖片描述
    儲存型XSS
    攻擊者在頁面上插入XSS程式碼,伺服器端將資料存入資料庫,當使用者存取到存在XSS漏洞的頁面時,伺服器端從資料庫中取出資料展示到頁面上,導致XSS程式碼執行,達到攻擊效果。
    在這裡插入圖片描述
    儲存型XSS攻擊
    1.先建立資料庫,點選phpMyAdmin,登入介面。
    2.點選test表格,點選匯入。在這裡插入圖片描述
    選擇test.sql檔案,點選執行。
    在這裡插入圖片描述
    3.在瀏覽器開啟http://127.0.0.1/XSS/xss2.php,在內容出輸入< img src=1 οnerrοr=「alert(/xss/)」/>,(<和img之間沒有空格)點選提交後會出現"/xss/"彈窗。

DOM型XSS
通過修改頁面的DOM節點形成的XSS,稱之為XSS;效果跟反射型XSS類似
攻擊者在URL中插入XSS程式碼,前端頁面直接從URL中獲取XSS程式碼並且輸出到頁面,導致XSS程式碼的執行,攻擊者將帶有XSS程式碼的URL發給使用者,使用者開啟後受到XSS攻擊。
在這裡插入圖片描述
在瀏覽器開啟http://127.0.0.1/XSS/xss3.php,輸入< img src=1 οnerrοr=「alert(/xss/)」/>,(<和img之間沒有空格)點選替換,就可出現彈窗。