男女做爽爽爽网站-男女做羞羞高清-男女做爰高清无遮挡免费视频-男女做爰猛烈-男女做爰猛烈吃奶啪啪喷水网站-内射白浆一区

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

任意文件讀取&下載漏洞的全面解析及利用

admin
2025年5月13日 23:46 本文熱度 48

前言

本人在近期實(shí)戰(zhàn)時(shí)也是挖到了任意文件下載漏洞,想著如何對(duì)此漏洞進(jìn)行最大化利用,遂花了點(diǎn)時(shí)間去學(xué)習(xí)此漏洞的利用,發(fā)現(xiàn)網(wǎng)上知識(shí)點(diǎn)過(guò)于分散,正好看到社區(qū)這方面的知識(shí)很少,于是就想著自己寫一篇關(guān)于任意文件讀取的漏洞文章。

漏洞原理

在目前的很多業(yè)務(wù)系統(tǒng)中,很多上傳點(diǎn)都無(wú)法進(jìn)行利用,最常見(jiàn)的就是上傳一個(gè)文件不返回上傳路徑,即使我們成功上傳了馬子也無(wú)法進(jìn)行后續(xù)連接啊。雖然不返回路徑,但是我上傳的文件我應(yīng)當(dāng)可以進(jìn)行讀取的,所以也就衍生出很多網(wǎng)站采用一個(gè)接口的方式進(jìn)行文件的下載&讀取的需求,但是這種方式真的安全嗎?

在日常中,我們經(jīng)常會(huì)遇到以下幾種下載文件的url格式

http://xxx.com/upload/xxx.pdf
http://xxx.com/readfile?id=1407
http://xxx.com/downfile?name=abc.pdf

首先說(shuō)第一種url,這種url存在的安全問(wèn)題很少,如果非要測(cè)的話,可以對(duì)后面的文件名和后綴進(jìn)行Fuzz,從而在文件中獲取敏感信息等

接著第二種url格式,這種url既然id參數(shù)可控,那么我們可以對(duì)此參數(shù)進(jìn)行SQL注入,服務(wù)器既然接收了id參數(shù),那么應(yīng)該會(huì)對(duì)id參數(shù)進(jìn)行數(shù)據(jù)庫(kù)查詢操作。如果這個(gè)id值有規(guī)律,那么也可以對(duì)id值進(jìn)行遍歷操作。

最后第三種url格式,此種安全問(wèn)題就是可能存在任意文件下載漏洞,也是本文著重講解的主要點(diǎn)。

在Linux和Windows系統(tǒng)中,有點(diǎn)開(kāi)發(fā)經(jīng)驗(yàn)的師傅都知道,在系統(tǒng)中可以用絕對(duì)路徑和相對(duì)路徑來(lái)表示一個(gè)文件的地址,此處不作相對(duì)路徑和絕對(duì)路徑的講解。./在系統(tǒng)中表示當(dāng)前目錄,../為當(dāng)前目錄的上一級(jí)目錄。這樣的話安全問(wèn)題就顯而易見(jiàn)了,我們只需要在我們控制的文件名前加上 ../ 跳到上一級(jí)目錄,然后一直跳就可以跳到根路徑了,想下載&讀取需要的文件就可以造成任意文件讀取漏洞了。

漏洞位置

根據(jù)功能點(diǎn)判斷

文件上傳后的返回url中、文件下載功能,文件預(yù)覽功能,文件讀取功能

如果上訴功能點(diǎn)存在那么可以抓包根據(jù)下面的url判斷

根據(jù)url判斷

url中有以下這類關(guān)鍵詞的
download.php?path=
download.php?file=
down.php?file=
readfife.php?file=
read.php?filename=

繞過(guò)思路

1、Fuzz文件

簡(jiǎn)單粗暴,但是burp發(fā)包的時(shí)候注意編碼問(wèn)題,取消勾選自動(dòng)url編碼

2、url編碼繞過(guò)



使用 %2e 代替 .?name=%2e%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd
使用 %2f 代替 /?name=..%2f..%2f..%2f..%2f..%2fetc%2fpasswd
使用 %2e%2e%2f 代替 ../?name=%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2fetc%2fpasswd

常用繞過(guò)一般是后兩種,點(diǎn)一般不會(huì)被過(guò)濾,因?yàn)槲募虚g也會(huì)存在一個(gè) .

3、二次編碼繞過(guò)



使用 %25%32%65 代替 .?name=%252e%252e/%252e%252e/%252e%252e/%252e%252e/etc/passwd
使用 %25%32%66 代替 /?name=..%252f..%252f..%252f..%252f..%252fetc%252fpasswd
使用 %25%32%65%25%32%65%25%32%66<br><br>代替 ../?name=%252e%252e%252f%252e%252e%252f%252e%252e%252f%252e%252e%252fetc%252fpasswd

4、將 / 替換為 \ 繞過(guò)

5、%00繞過(guò)

?name=.%00./.%00./.%00./.%00./etc/passwd

6、雙寫繞過(guò)

有些代碼會(huì)進(jìn)行過(guò)濾,會(huì)把 ../ 置空,那么利用 ....// 代替 ../ ,利用 ..// 代替 /

這種情況很少見(jiàn),視情況而定

漏洞利用

Linux 系統(tǒng)下利用

/root/.ssh/authorized_keys
/root/.ssh/id_rsa
/root/.ssh/id_ras.keystore
/root/.ssh/known_hosts
/etc/passwd
/etc/shadow
/etc/issue 系統(tǒng)版本
/etc/fstab
/etc/host.conf
/var/log/xferlog  FTP會(huì)話,記錄拷貝了什么文件
/var/log/cron 計(jì)劃任務(wù)日志
/etc/(cron.d/|crontab) //這兩個(gè)也是定時(shí)任務(wù)文件
/var/log/secure 用戶登錄安全日志
/etc/rc.local 讀apache的路徑
/etc/motd
/etc/sysctl.conf
/var/log/syslog 記錄登陸錯(cuò)誤時(shí)的密碼等信息
/etc/environment 環(huán)境變量配置文件 可能泄露大量目錄信息
/etc/inputrc 輸入設(shè)備配置文件
/etc/default/useradd 添加用戶的默認(rèn)信息的文件
/etc/login.defs 是用戶密碼信息的默認(rèn)屬性
/etc/skel 用戶信息的骨架
/sbin/nologin 不能登陸的用戶
/var/log/message 系統(tǒng)的日志文件
/etc/httpd/conf/httpd.conf 配置http服務(wù)的配置文件
/etc/mtab     包含當(dāng)前安裝的文件系統(tǒng)列表   有時(shí)可以讀取到當(dāng)前網(wǎng)站的路徑
/etc/ld.so.conf
/etc/my.cnf
/etc/httpd/conf/httpd.conf
/root/.bash_history     終端命令操作記錄
/root/.mysql_history
/proc/mounts
/porc/config.gz
/var/lib/mlocate/mlocate.db     Linux系統(tǒng)全文件路徑數(shù)據(jù)庫(kù)
/porc/self/cmdline
tomcat/conf/server.xml   tomcat連接數(shù)據(jù)庫(kù)的密碼配置文件
tomcat/webapps/ROOT/WEB-INF/classes/database.properties  同上
tomcat/conf/tomcat-users.xml  tomcat管理員賬號(hào)密碼的配置文件
思路:

1、讀取/etc/passwd 和/etc/shadow 進(jìn)行撞庫(kù)解密,如果能解出來(lái)那么直接ssh登錄

2、讀取/root/.ssh/id_rsa 等ssh登錄密鑰文件,從而通過(guò)密鑰免密登錄服務(wù)器

3、讀取/root/.bash_history 終端命令操作記錄,進(jìn)而從命令記錄中推測(cè)出web源碼位置,審計(jì)源碼進(jìn)行g(shù)etShell

4、讀取數(shù)據(jù)庫(kù)配置信息,遠(yuǎn)程連接數(shù)據(jù)庫(kù),進(jìn)行脫庫(kù)等操作

5、讀取/var/lib/mlocate/mlocate.db 文件信息,獲取全文件絕對(duì)路徑,想下載啥就下啥了
...... 圍繞著如何拿權(quán)限和拿數(shù)據(jù)的角度去想就行了

總結(jié):

以上一些利用思路,核心思想不過(guò)與對(duì)數(shù)據(jù)的獲取或者是權(quán)限的獲取,黑客的目的也不過(guò)如此,數(shù)據(jù)和權(quán)限這兩者其實(shí)是可以互相轉(zhuǎn)換的,當(dāng)一個(gè)無(wú)法進(jìn)行利用時(shí),那么可以轉(zhuǎn)換一下思路對(duì)另一個(gè)進(jìn)行利用

Windows 系統(tǒng)利用

windows的這些路徑不一定都存在
C:\boot.ini //查看系統(tǒng)版本
C:\Windows\System32\inetsrv\MetaBase.xml          //IIS配置文件
C:\Windows\repair\sam                                          //存儲(chǔ)系統(tǒng)初次安裝的密碼
C:\Program Files\mysql\my.ini                               //Mysql配置
C:\Program Files\mysql\data\mysql\user.MYD     //Mysql root
C:\Windows\php.ini              //php配置信息
C:\Windows\my.ini             //Mysql配置信息
C:\Windows\win.ini             //Windows系統(tǒng)的一個(gè)基本系統(tǒng)配置文件

由于windows服務(wù)器特性,可以分盤操作,導(dǎo)致我們黑盒測(cè)試很難知道目標(biāo)服務(wù)器是否存在其他盤符,即使知道了盤符也很難知道絕對(duì)路徑,所以window系統(tǒng)很難利用此漏洞。

修復(fù)建議

1、限定文件訪問(wèn)范圍,在php.ini等配置文件中配置open__basedir限定文件訪問(wèn)范圍

2、禁止客戶端傳遞../這些敏感字符

3、文件放在web無(wú)法直接訪問(wèn)的目錄下。

實(shí)戰(zhàn)案例

在點(diǎn)擊文件下載的時(shí)候發(fā)現(xiàn)url格式如圖所示,當(dāng)輸入任意字符時(shí)會(huì)返回文件不存在,如果輸入存在的文件名則會(huì)直接下載文件

因?yàn)榉?wù)器是Linux系統(tǒng),所以我們可以讀取/etc/passwd文件來(lái)判斷是否存在漏洞。依次進(jìn)行 ../ 跳目錄測(cè)試

發(fā)現(xiàn)測(cè)試了許久都是返回文件不存在,那可以考慮當(dāng)前web程序可能存在防護(hù)了,一般開(kāi)發(fā)者在代碼層進(jìn)行防護(hù)的話,一般都是過(guò)濾掉 . / 這種字符進(jìn)行防護(hù),根據(jù)上面提到的方式進(jìn)行繞過(guò)處理

單次編碼不行,那就繼續(xù)在原來(lái)編碼的基礎(chǔ)上進(jìn)行二次url編碼,再測(cè)試一波,最終也是驗(yàn)證成功漏洞存在

驗(yàn)證漏洞存在了,如果是在未授權(quán)的情況下進(jìn)行利用,那么可以直接提交漏洞了;如果在已授權(quán)情況下,還想進(jìn)一步對(duì)漏洞進(jìn)行利用更深入,那么可以考慮怎么進(jìn)行更深入的利用呢。

我先是讀取/root/.bash_history 內(nèi)容,根據(jù)命令操作拼接路徑,先是下載了目標(biāo)網(wǎng)站的源碼,我也是從源碼中讀到一些數(shù)據(jù)庫(kù)賬號(hào)密碼等信息,可惜都是內(nèi)網(wǎng),我不能利用到。如果你是代碼審計(jì)大牛,那么可以直接開(kāi)始審計(jì)代碼,從代碼中挖掘漏洞,進(jìn)行g(shù)etShell。很顯然我不是

后來(lái)我也是想著下載ssh公鑰文件等思路,可惜的是,此目標(biāo)網(wǎng)站只對(duì)外開(kāi)放web服務(wù)端口,所以我無(wú)法進(jìn)行其他服務(wù)的攻擊利用。

既然從目標(biāo)中獲取權(quán)限不行,那我轉(zhuǎn)換一下思路,通過(guò)漏洞獲取數(shù)據(jù),再?gòu)墨@得數(shù)據(jù)中提取信息,從而獲取系統(tǒng)的更高權(quán)限。

Linux下有mlocate.db文件,此文件介紹如下,我可以下載這個(gè)文件,再?gòu)倪@個(gè)文件中獲取其他文件的絕對(duì)地址,這樣的話我就可以下載到目標(biāo)服務(wù)器上任意的文件了

將獲取到的全文件數(shù)據(jù)庫(kù)解出明文,然后從明文中翻找重要文件進(jìn)行下載

在計(jì)算機(jī)中,重要文件,無(wú)非就是數(shù)據(jù)和權(quán)限相關(guān),所以我們主要找備份文件和數(shù)據(jù)庫(kù)文件

.rar、.zip、.7z、.tar、.gz、.tar.gz、.bz2、.tar.bz2、.sql、.bak、.dat、.txt、.log、.mdb

在全文件路徑中搜索以上格式文件,再重點(diǎn)關(guān)注一下不同路徑下的文件,因?yàn)長(zhǎng)inux系統(tǒng)中不同文件夾的作用是不一樣的,最后,我也是成功找到不少數(shù)據(jù)庫(kù)備份文件rdb


.rdb文件是redis數(shù)據(jù)庫(kù)的備份文件,后來(lái)也是從網(wǎng)上找了相關(guān)的rdb文件恢復(fù)工具——rdbtools成功將我下載下來(lái)的rdb文件恢復(fù)為明文格式 (數(shù)據(jù)庫(kù)備份文件一般無(wú)法直接打開(kāi),需要一些其他手段恢復(fù)數(shù)據(jù)才可以)!

后來(lái)也是因?yàn)檫@提取的數(shù)據(jù)量過(guò)于龐大,文件太大打開(kāi)太卡了,只能自己寫一個(gè)腳本提取數(shù)據(jù)了

最后也是成功將數(shù)據(jù)提取出來(lái),可見(jiàn)成功獲取到全站1.6W用戶數(shù)據(jù),一不小心就脫庫(kù)了呀,事后本人也是提交了漏洞并將相關(guān)數(shù)據(jù)全部銷毀。


原文來(lái)自:https://forum.butian.net/share/2664


該文章在 2025/5/14 10:03:22 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 高潮无遮挡成人A片 | 日本大片高清免费视频 | 亚洲欧美日韩精品专区52 | 日韩精品中文字幕乱码一区 | 久久无码人妻中文国产AV | 色视频综合无码一区二区三区 | 国产中文精品无码欧美综合小说 | 四虎影视最新的2024网址 | 国产suv一区二区:新车型发布引发市场热议 | 麻花传媒MD01 | 免费看高视频hh网站免费 | 欧美色偷偷亚洲天堂bt | 精品国产欧美一区二区 | 国产精品视频久久视频小视频香蕉视频 | 精品一区二区成人在线 | 久久国产免费观看精品A片 久久国产人妻一区二区免费 | WWW亚洲精品久久久无码 | 国产精品亚洲av毛片一区二区 | 欧洲极品无码一区二区三区 | 亚洲五月婷婷 | 成年女人免费影院播放 | 国产精品无码卡在线播放 | 国产成人AV综合久久不卡 | 狠狠久久免费视频在线 | 久久水蜜桃 | 国产成人综合欧美 | 久久久人妻无码A片一区二区三区 | 亚洲国产精品无码AV久久久 | 91久久线看在观草草青青 | 国产啪精品视频网站 | 久久精品最新免费国产成人 | 韩国理伦三级做爰在线播放 | 国产乱伦精品一区二区三区久久 | JAPANESE少妇出轨内射 | 国产三级2024在线观看 | 97精品人妻系列无码人妻 | 久久精品国产99久久久 | 国产精品www在线无码 | 永久免费的无码中文字幕 | 北条麻妃中文高清在线观看 | 99久久久无码一区二区 |