pikachu學習——XSS漏洞3種基本類型


XSS漏洞是一種發生在Web前端危害較大的漏洞,其危害對象主要是前端用戶,此漏洞可以用來進行釣魚攻擊,前端js挖礦,用戶cookie獲取,甚至結合瀏覽器對用戶主機進行遠程控制等。

XSS漏洞常見類型有3種,分別是反射型,儲存型和DOM型,危害性:儲存型>反射型>DOM型。

反射型:交互數據一般不會儲存在數據庫里面,一次性,所見即所得,一般出現在查詢頁面等

儲存型:交互的數據會被儲存在數據庫里面,永久性儲存,一般出現在留言板,注冊等頁面

DOM型:不與后台的服務器產生數據交互,是一種通過DOM前端代碼輸出的時候產生的問題,一次性也屬於反射型

下面我在pikachu平台對這幾種常見類型進行演示。

反射型XSS漏洞

首先我們可以在界面中輸入一些特殊的字符進行提交,例如'"<>112233

 

 

 

 

根據返回信息我們知道錯誤,數據庫沒有,那么我們直接右擊查看頁面源代碼,

用Ctrl+f快捷鍵快速搜索剛提交的信息、

 

 

 我們發現我們輸入的特殊字符直接被輸出到html的p標簽中,那我們就可以直接在前端寫入js語句讓它輸出到這里進行執行

但輸入之前我們應打開火狐瀏覽器web控制台修改一下可輸入最大字符長度

 

 

輸入簡單js的彈窗語句,試一下

 

 

 

我們發現我剛輸入的js代碼成功在瀏覽器中執行,這就是反射型XSS漏洞get型,

但是我們從前端輸入的信息並未在后端進行存儲,當我們刷新頁面時,我們上一次輸入的信息就會消失。

 

存儲型XSS漏洞

我剛才已經介紹了反射型XSS漏洞,存儲型XSS漏洞與它不同的就是它可以把我們注入到后台的腳本存儲起來,造成更持久的危害,

我們可以打開pikachu平台存儲型XSS漏洞模塊,首先輸入一些特殊字符你可以在頁面源碼中看到它被輸出到了后端

然后我們在前端輸入一個js彈窗語句

 

 

 

我們發現語句被執行了,刷新一下界面

 

 

 

我們發現依然會彈出彈窗,查看頁面源碼,我們發現輸入的腳本被儲存進了數據庫中,這就是存儲型XSS漏洞

 

 

 

DOM型XSS漏洞

 

 DOM我們可以把它理解為一個訪問html的標准編程接口

打開pikachu平台DOM界面隨便輸入一些信息

 

 

 

 

隨便輸入些字符,返回了what do you see?然后我們查看一下頁面源碼。

 

 

通過js代碼可知道,他將我們輸入的值拼接到了一個a標簽里並將拼接的結果再放入id=dom的盒子里

所以我們可以通過閉合的方式利用這個漏洞 在輸入框中輸入<a href='#' onclick="alert('xss')"'>what do you see?</a>"

然后將我們補充部分也就是#' onclick="alert('xss')"輸入到框中執行,

 

 如圖輸入內容后點擊“what do you see”就看到我們輸入的js彈框,原理就是我們前端輸入的信息被DOM獲取進行了相關操作,並從前端輸出

 

接下來我們試一下DOM型xss-x,隨便輸入一些信息,看一下它的源碼

 

 

 

 查看源碼發現他通過window.location獲取url中我們的輸入信息然后還是發送到a標簽。我們再次使用上次的代碼進行,發現依然彈出窗。

這樣寫與上面不同的就是他的輸入是從前端的url中獲取,及漏洞輸入點在我們url的參數中類似上面提到的反射型

window.location獲取url中我們的輸入信息然后還是發送到a標簽。我們再次使用上次的代碼進行,發現依然彈出窗

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM