TuziCMS是一款用于企业官网的CMS,基于ThinkPHP 3.2.3版本
0x00 SQL注入
SQL注入发生于程序中针对参数过滤不严谨导致
发现在这款版本的TuziCMS大部分的参数都是没过滤,且使用的是拼接SQL语句字符串形式,因此可以注入的地方较多
定位到App\Home\Controller\ZhuantiController.class.php
一般参数都有:
if (!preg_match('/^\d+$/i', $id)){ $this->error('url参数错误'); exit;//仿制用户恶意输出url参数 }
但是这里没有做过滤,与此同时,直接进行了SQL拼接
当SQL语句出错的时候,系统会直接提示错误信息
在 Core\Library\Think\Think.class.php
默认设置的错误提示模版,定位到其下
最下的halt()
函数是用于错误输出的
那么,在默认开启debug或错误信息输出的情况下,就可以直接回显注入
0x01 Payload
版权声明:《 TuziCMS 2.0.6 SQL注入漏洞分析 》为DYBOY原创文章,转载请注明出处!
最后编辑:2019-9-28 11:09:34
2020-08-25 15:47
2020-07-28 10:13
2020-04-19 09:55
2020-04-11 22:05