漏洞公告

https://seclists.org/fulldisclosure/2019/Sep/31

漏洞分析

实际上这算是模板注入漏洞。
poc中第一个参数 routestring, 确定了用什么模板来进行渲染

调用callRender,经过explode$routeInfo[2]widget_php, $params在经过array_merge($_POST, $_GET)后将包括widgetConfig[code]

\core\install\vbulletin-style.xml中,定义了一个名为widget_php的模板

所以在$widgetConfig['code'] 不为空,且 $vboptions['disable_php_rendering']没开启的情况下,将会执行下面的模版语法:

{vb:action evaledPHP, bbcode, evalCode, {vb:raw widgetConfig.code}}
            {vb:raw $evaledPHP}

includes\vb5\frontend\controller\bbcode.php 中定义了 evalCode,如下:

最终造成代码注入漏洞。

漏洞复现

[盗图]

poc都在上面了,自己复现吧。

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