本文內容:
- XSS簡介
- XSS漏洞原理
- XSS挑戰實例
- 瀏覽器攻擊框架Beef-XSS
xss跨站腳本攻擊,是java script代碼插入web頁面中,之后當用戶瀏覽頁面,會執行嵌套在Wen頁面里面的java script代碼,從而達到攻擊機用戶的目的,
為了根HTML里面的層疊樣式表[css,Cascading style sheets]作為區分,所以叫做XSS。
1.xss簡介:
注入攻擊的本質,是把用戶輸入的數據當做代碼執行。
條件:
用戶能夠控制值輸入
原本要執行的代碼,拼接了用戶輸入的數據。
2,xss漏洞原理:
xss主要拼接的是什么?
xss拼接的是網頁的HTML代碼,一般而言拼接合適的HTML代碼去執行惡意的JS語句。
xss就是拼接惡意的HTML代碼,代碼並能成功解析。
xss的危害:
盜取Cookie[使用最頻繁]
獲取內網IP
獲取瀏覽器保存的明文密碼
截取網頁屏幕
網頁上的鍵盤記錄
xss的種類:
反射型xss:提交的數據成功實現xss,僅僅對本地訪問產生影響,是非持久型攻擊。
存儲型xss:提交的數據成功實現xss,存入數據庫,每次訪問就會自動觸發,持久性。
Dom型xss:Dom[文檔對象模型],客戶端腳本處理邏輯導致的安全問題。
xss平台:
方便xss攻擊,只需要引入一個平台外部鏈接就可以實現各種功能。
推薦:
http://xss.tf/
https://xsspt.com/index.php?do=login
https://xsshs.cn/
常見的xss測試點:
手工:根據網頁源代碼中反饋的信息,構建payload,見框就插。
工具:safe3、Awvs、Burpsuite、xsssniper瀏覽器插件,cookie修改工具。
思路:個人信息、李璐藍旗、評論等,注意觀察url變化,也可能出現其他漏洞,如:邏輯漏洞。
注意:漏洞=手工+工具+思路+勤奮的雙手。
3,xss的挑戰實例:
360插件:xss插件掃描0kee.360.cn/ee/
360瀏覽器:https://browser.360.cn/ee/
更多工具:https://github.com/rajeshmajumdar/BruteXSS
4,瀏覽器攻擊框架beer-xss
1.beef-xss簡介:
beef:beef:一款瀏覽器攻擊框架,用Runy語言開發的,kali中默認安裝的一個模塊,用戶實現對xss漏洞的攻擊和利用。
beef主要是往網頁中插入一段名為hook.js的JS腳本代碼,如果瀏覽器訪問了有hook.js(鈎子)的頁面,就會被hook(勾住),
勾連的瀏覽器會執行初始代碼返回一些信息,接着目標主機會每隔一段時間(默認為1秒)就會向beef服務器發送一個請求,
詢問是否有新的代碼需要執行。beef服務器本質上就像一個Web應用,被分為前端和后端。前端會輪詢后端是否有新的數據需要更新,
同時前端也可以向后端發送指示, beef持有者可以通過瀏覽器來登錄 beef 的后端,來控制前端(用戶的瀏覽器)。beef一般和XSS漏洞結合使用
2.beef-xss配置:
修改默認密碼:vim /etc/beef-xss/config.yaml
測試界面:http://127.0.0.1:3000/demos/butcher/index.html
3.beef-xss模塊:
每個命令模塊都一個交通燈圖標,用於指示一下內容:
綠色:命令模塊對目標器作用,對用戶應該是不可見的。
橙色:命令模塊對目標器作用,對用戶是可見的。
灰色:尚未針對此目標驗證命令模塊。
紅色:命令模塊不適用於此目標。
4.使用教程:https://www.fujieace.com/kali-linux/courses/beef-xss-framework.html
補充:
如果kali中未存在,beef-xss,可以使用此命令下載:git clone https://github.com/beefproject/beef.git