XSS實戰漏洞挖掘

接下來一年時間將會主要研究滲透測試方向的眾多問題,文章中的內容也會在后面定期更新。本文主要記錄了一些XSS漏洞挖掘中的實用心得和學習筆記。

漏洞描述

漏洞描述:跨站腳本攻擊的英文全稱是Cross Site Script,為了和樣式表區分,縮寫為

XSS。發生的原因是網站將用戶輸入的內容輸出到頁面上,在這個過程中可能有惡意代碼被

瀏覽器執行。跨站腳本攻擊,它指的是惡意攻擊者往Web頁面里插入惡意html代碼,當用戶

瀏覽該頁之時,嵌入其中Web里面的html代碼會被執行,從而達到惡意用戶的特殊目的。已

知的跨站腳本攻擊漏洞有三種:1)存儲式;2)反射式;3)基于DOM。1、 存儲型跨站腳本攻擊涉及的功能點:用戶輸入的文本信息保存到數據庫中,并能夠在頁面展示的功能點,例如用戶留言、發送站內消息、個人信息修改等功能點。

2、 反射型跨站腳本攻擊涉及的功能點:URL參數需要在頁面顯示的功能點都可能存在

反射型跨站腳本攻擊,例如站內搜索、查詢功能點。

3、 基于DOM跨站腳本攻擊涉及的功能點:涉及DOM對象的頁面程序,包括(不限這

些):

document.URL

document.URLUnencoded

document.location

document.referrer

window.location

測試方法:

1)?在輸入的參數后逐條添加以下語句,以第一條為例,輸入

http://www.exmaple.com/page.xxx?name=<script>alert(123456)</script>

只要其中一條彈出顯示123456的告警框,就說明存在跨站漏洞,記錄漏洞,停止測試。

2)?如果沒有彈出顯示123456的告警框,則在返回的頁面上單擊鼠標右鍵,選擇“查看源文件”。

3)?查找網頁源文件中是否包含完整的字符串<script>alert(123456)</script>,則不管有沒有彈出顯示123456的告警框,都表明存在跨站腳本漏洞。

4)?由于有些HTML元素(比如<textarea>或”)會影響腳本的執行,所以不一定能夠正確彈出123456告警框,需要根據返回網頁源文件的內容,構造value的值,比如多行文本輸入框:

</textarea><script>alert(123456)</script>

文本輸入框:

</td><script>alert(123456)</script>

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

"><script>alert(123456)</script>

</title><script>alert(123456)</script>

--><script>alert(123456)</script>

[img]javascript:alert(123456)[/img]

<scrip<script>t>alert(123456)</scrip</script>t>

</div><Script>alert(123456)</script>

需要對頁面上所有可以提交參數的地方進行測試。具體跨站腳本的測試語句根據實際情況的不同而不同,可自行構造,以及觸發事件等切換,這里只列出了一些最常見構造語句。

基本用例

從攻的角度探討以下用例

1、利用<>標記注射腳本

最簡單的就是<script>alert(123456)</script>,但是XSS。filter首當其沖要進行過濾和轉義的就是<>和<script>這類字符。

2、利用HTML標簽屬性值

可以利用HTML中標簽的屬性值,很多HTML標記中的屬性都支持jcavscript:[code]的偽協議形式,例子如下:

<img src="javascript:alert('XSS');">

但這個方式由于瀏覽器的升級局限性較高

3、使用空格回車鍵

在引號中使用額外的換行和分隔來跳過過濾,因為JS語句通常以分號結尾。

例子:

<img src ="javas

ceript:

alert(/xss/)" width=100>

4、對標簽屬性轉碼:

支持ASCII形式

5、產生自己的事件

6、使用CSS進行xss

7、擾亂過濾規則

使用不同的大小寫、使用單引號、不使用引號等方式

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/10474.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/10474.shtml
英文地址,請注明出處:http://en.pswp.cn/web/10474.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

python實現pip一鍵切換國內鏡像源腳本分享

本文主要分享一個自己寫的pip一鍵切換國內鏡像源python腳本 import subprocess# pip 國內鏡像源加速 source_urls [{"name": "默認鏡像源", "url": ""},{"name": "清華大學鏡像源(推薦使用)", "url": …

sqlserver數據庫日志文件log.ldf文件占用過大清除的辦法

sqlserver數據庫日志文件log.ldf文件占用過大清除的辦法 技術交流 http://idea.coderyj.com/ 1.清除數據庫日志的方法 --- 查看數據庫日志文件名 USE cs GO SELECT file_id, name,size,* FROM sys.database_files;ps 可以看到其中name字段為數據庫日志名稱"數據庫日志名稱…

【MATLAB源碼-第206期】基于matlab的差分進化算法(DE)機器人柵格路徑規劃,輸出做短路徑圖和適應度曲線。

操作環境&#xff1a; MATLAB 2022a 1、算法描述 差分進化算法&#xff08;Differential Evolution, DE&#xff09;是一種有效的實數編碼的進化算法&#xff0c;主要用于解決實值函數的全局優化問題。本文將詳細介紹差分進化算法的背景、原理、操作步驟、參數選擇以及實際應…

返回分類信息(帶層級)

文章目錄 1.前端展示分類管理信息1.目前項目架構2.啟動前后端項目1.啟動mysql容器2.啟動后端 renren-fast3.啟動前端1.界面2.用戶名密碼都是admin 3.創建分類管理菜單1.菜單管理 -> 新增 -> 新增目錄2.刷新3.能夠新增菜單的原因是前端腳手架與renren-fast后端腳手架通信&…

全面理解BDD(行為驅動開發):轉變思維方式,提升軟件質量

在傳統的軟件開發流程中&#xff0c;開發人員和測試人員的工作通常是相互獨立的。開發人員負責編寫代碼&#xff0c;測試人員負責找出代碼中的問題。然而&#xff0c;這種方法可能導致溝通不足&#xff0c;而且會浪費時間和資源。為了解決這些問題&#xff0c;出現了一種新的開…

Mask2former代碼詳解

1.整體流程 Mask2former流程如圖所示&#xff0c;對于輸入圖片&#xff0c;首先經過Resnet等骨干網絡獲得多層級特征&#xff0c;對于獲得的多層級特征&#xff0c;一個方向經過pixel decoder(基于DetrTransformerEncoderLayer)得到per-pixel embedding,另外一個方向經過transf…

matlab的imclose()詳解

J imclose(I,SE) J imclose(I,nhood) 說明 J imclose(I,SE) 使用結構元素 SE 對灰度或二值圖像 I 執行形態學閉運算。形態學閉運算是先膨脹后腐蝕&#xff0c;這兩種運算使用相同的結構元素。 J imclose(I,nhood) 對圖像 I 執行閉運算&#xff0c;其中 nhood 是由指定結…

mac監聽 linux服務器性能可視化(Grafana+Promethus+Node_exporter)

Grafana和promethus(普羅米修斯)的安裝和使用 監控系統的Prometheus類似于一個注冊中心&#xff0c;我們可以只需要配置一個Prometheus,而在其他服務器&#xff0c;只需要安裝node_exporter,它們的數據流轉就是通過exporter采集數據信息&#xff0c;然后告訴prometheus它的位置…

分布式鏈路追蹤 Zipkin+Sleuth(8)

項目的源碼地址 Spring Cloud Alibaba 工程搭建&#xff08;1&#xff09; Spring Cloud Alibaba 工程搭建連接數據庫&#xff08;2&#xff09; Spring Cloud Alibaba 集成 nacos 以及整合 Ribbon 與 Feign 實現負載調用&#xff08;3&#xff09; Spring Cloud Alibaba Ribbo…

CUDA專項

1、講講shared memory bank conflict的發生場景&#xff1f;以及你能想到哪些解決方案&#xff1f; CUDA中的共享內存&#xff08;Shared Memory&#xff09;是GPU上的一種快速內存&#xff0c;通常用于在CUDA線程&#xff08;Thread&#xff09;之間共享數據。然而&#xff0…

BUUCTF[PWN]

BUUCTF[PWN] 題目&#xff1a;warmup_csaw_2016 地址&#xff1a;warmup_csaw_2016ida打開&#xff0c;進main函數&#xff1a;gets函數的棧溢出&#xff1a;給出了sub_40060D函數的地址直接&#xff0c;溢出到sub_40060D的地址即可&#xff1a; from pwn import *p remote…

[Cmake Qt]找不到文件ui_xx.h的問題?有關Qt工程的問題,看這篇文章就行了。

前言 最近在開發一個組件&#xff0c;但是這個東西是以dll的形式發布的界面庫&#xff0c;所以在開發的時候就需要上層調用。 如果你是很懂CMake的話&#xff0c;ui_xx.h的文件目錄在 ${CMAKE_CURRENT_BINARY_DIR} 下 然后除了有關這個ui_xx.h&#xff0c;還有一些別的可以簡…

Verlog-流水燈-FPGA

Verlog-流水燈-FPGA 引言&#xff1a; ? 隨著電子技術的飛速發展&#xff0c;現場可編程門陣列&#xff08;FPGA&#xff09;已成為電子設計自動化&#xff08;EDA&#xff09;領域中不可或缺的組件。FPGA以其高度的靈活性和可定制性&#xff0c;廣泛應用于通信、圖像處理、工…

go-zero整合asynq實現分布式定時任務

本教程基于go-zero微服務入門教程&#xff0c;項目工程結構同上一個教程。 go-zero微服務入門教程&#xff08;點擊進入&#xff09; 本教程主要實現go-zero整合asynq實現分布式定時任務。 本文源碼&#xff1a;https://gitee.com/songfayuan/go-zero-demo &#xff08;教程源…

外賣點餐單店+多店自由切換小程序源碼系統全功能版 帶完整的安裝代碼包以及搭建部署教程

近年來&#xff0c;外賣市場持續火爆&#xff0c;但許多餐飲商家在接入外賣平臺時面臨著諸多困擾。高昂的平臺費用、復雜的操作流程以及數據安全隱患等問題&#xff0c;讓商家們倍感壓力。為了解決這些問題&#xff0c;小編給大家分享一款集單店與多店管理于一體的外賣點餐系統…

ACM實訓沖刺第四天

【碎碎念】最近的任務有點繁重&#xff0c;所以考慮到實際情況&#xff0c;視頻學習決定放置一段時間&#xff0c;重點是學校的實訓練習題&#xff0c;對于我而言&#xff0c;目標不是優秀/良好&#xff0c;綜合考慮我的實際情況&#xff0c;保佑我及格、順利通過就可&#xff…

通過自建鏡像方式搭建RabbitMQ集群

通過自建鏡像方式搭建RabbitMQ集群 1. 應用準備1.1 應用目錄結構1.2 配置文件1.2.1 .erlang.cookie1.2.2 hosts1.2.3 rabbitmq.conf1.2.4 rabbitmq-env.conf 2. 編寫DockerFile2.1 將所有本地文件拷貝到工作目錄2.2 拷貝文件到源目錄&增加執行權限2.3 安裝Erlang & rab…

Leedcode題目:移除鏈表元素

題目&#xff1a; 這個題目就是要我們將我們的鏈表中的值是val的節點刪除。 我們題目提供的接口是 傳入了指向一個鏈表的第一個節點的指針&#xff0c;和我們要刪除的元素的值val&#xff0c;不只要刪除第一個&#xff0c; 思路 我們這里可以創建一個新的鏈表&#xff0c;…

【C++】學習筆記——模板進階

文章目錄 十一、模板進階1. 非類型模板參數2. 按需實例化3. 模板的特化類模板的特化 4. 模板的分離編譯 未完待續 十一、模板進階 1. 非類型模板參數 模板參數分為類型形參和非類型形參 。類型形參即&#xff1a;出現在模板參數列表中&#xff0c;跟在class或者typename之類的…

掌握SEO優化的關鍵:提升網站排名的秘籍(如何提高網站seo排名)

你是否曾經在搜索引擎上搜索過一個關鍵詞&#xff0c;然后點擊了排在前幾位的網站&#xff1f;如果是&#xff0c;那么你已經體會到了SEO&#xff08;搜索引擎優化&#xff09;的威力。SEO是一項關鍵的網絡營銷策略&#xff0c;它能夠讓你的網站在搜索引擎中獲得更高的排名&…