写在前面
又来学习了,师傅们都太卷了,我这样的菜鸡只能挣扎一下

正文
很少看大的cms,一是被大佬们挖的差不多了,基本上没什么希望,二是能力有限,大的cms基本上就是看看别人的审计,学习一下别人的思路和技巧,自己也就找找冷门的开刀。
前台直接跳过,从后台看,然后这里的类似删除、文章显示什么的都是通过数据库,没看到直接访问路径什么的,也就没找到目录穿越这种问题,可能自己看得不仔细。

后台的话,不能getshell的洞感觉都没什么价值了,不过也有任意文件删除,删除install.lock配合重装网站写马这种的话当我没说。

在某cms后台找到个上传绕过,已提交(后来发现cnvd有人交了,但不知道是不是撞了)。
在设置-链接设置-伪静态设置中apache模块中可以设置.htaccess:


看到这个,打过ctf的都懂了(我没打过),看能不能编辑这个内容绕过一波

在源码中找到对应处:

发现只有一个$cfg['webdir'],往回走发现$cfg = $this->kv->xget('cfg');
看下这个$this->kv->xget('cfg');
全局搜索xget函数,发现这是个数据库操作的相关函数:

那么$this->kv->xget('cfg')就是从tw_kv表中取cfg的数据:

看看能不能写入这个值。在当前setting_control.class.php中搜索webdir:

发现index()下$this->kv->xset('webdir', R('webdir', 'P'), 'cfg');
结合前面分析,这个应该就是写入操作,那么跟进一下R():

就是获取变量值。

那么利用如下:
基本设置-所在目录保存然后在webdir添加:

</IfModule>
<FilesMatch "jpg">
SetHandler application/x-httpd-php
</FilesMatch>
<IfModule mod_rewrite.c>

改完后生成.htaccess

然后在 我的-发布文章-上传缩略图中上传一个内容为shell,的jpg 文件

然后复制图像链接

去掉链接中的_thumb,如下:
127.0.0.1/TWCMS/upload/article/202201/30/15132861f63a98cb20085eyPl.jpg

这里去_thumb的原因是上传图片后会添加一个_thumb:

结尾
我好菜,师傅们带带我。。。。。。

点击收藏 | 2 关注 | 1
登录 后跟帖