ThinkCMF5存在代码执行漏洞

发布于 2019,01,15  717 次阅读


ThinkCMF5存在代码执行漏洞

版本:ThinkCMF 5.0.190111 正式版

官网:https://www.thinkcmf.com

 

漏洞文件:\app\admin\controller\RouteController.php 中的index方法:


图片1.png


getRoutes函数:

图片2.png



可以看到数据先使用了var_export函数处理,但是紧接着又使用了stripslashes

函数处理,造成了逃逸单引号写入内容,造成代码执行。

图片3.png



数据是在下面的setroute函数中写入数据库的,数据我们可控。

 

漏洞利用:

先登录后台->设置->URL美化->添加URL规则->选择规则(这个随便选一个,但必须要从这里面选)->在显示网址处填写我们的payload保存即可。

图片4.png



Payload:'.file_put_contents('1.php','<?php phpinfo();').'

 

就会将内容写入到\data\conf\route.php 文件中去。

图片5.png



在点击下刚的那个URL美化,即可在public目录下面生成shell。

图片6.png



我的全部野心,就是自由的生活