原文始发于 先知社区(是juju呀):菜鸡一次艰难的审计
写在前面
又来学习了,师傅们都太卷了,我这样的菜鸡只能挣扎一下
正文
很少看大的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:
结尾
我好菜,师傅们带带我。。。。。。