安全客 7小时前
关键vBulletin论坛漏洞让攻击者执行远程代码
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

vBulletin论坛平台存在一处未经身份验证的远程代码执行(RCE)漏洞,影响使用PHP 8.1或更高版本的vBulletin 5.x和6.x版本。攻击者可利用该漏洞调用受保护的内部方法,突破安全边界,实现系统完全控制,无需任何身份验证。漏洞核心在于vBulletin对PHP Reflection API的依赖及其动态路由机制,攻击者通过精心构造的HTTP请求,将恶意代码注入模板,进而执行任意系统命令。该漏洞已在vBulletin 6.0.4版本中修复,对开发人员而言,此漏洞突显了依赖方法可见性作为安全边界的风险,以及在动态Web框架中明确访问控制的重要性。

🔑vBulletin论坛平台存在未经身份验证的远程代码执行(RCE)漏洞,影响PHP 8.1+版本上的vBulletin 5.x和6.x,攻击者无需登录即可完全控制系统。

🛡️漏洞利用vBulletin对PHP Reflection API的依赖,攻击者可绕过访问控制,调用受保护方法,向/api.php发送请求,直接在PHP 8.1+上调用受保护方法。

🔨攻击者通过精心构造的HTTP POST请求,调用vB_Api_Ad::replaceAdTemplate()方法,将恶意代码注入模板,从而执行任意系统命令,获得服务器Webshell访问权限。

❗此漏洞是对开发者的警示,强调了依赖方法可见性作为安全边界的风险,以及在动态Web框架中明确实施访问控制的重要性。

vBulletin世界上最受欢迎的论坛平台之一vBulletin的新发现漏洞使数千个在线社区面临未经身份验证的远程代码执行(RCE)的风险。

该漏洞存在于 PHP 8.1 或更高版本上的 vBulletin 5.x 和 6.x 版本中,允许攻击者调用受保护的内部方法,打破基本安全边界,并在无需身份验证的情况下实现完整的系统妥协。

此漏洞的核心是 vBulletin 依赖 PHP 的 Reflection API 来定制 Model-View-Controller (MVC) 框架和 API 系统。

反射 API 和动态路由

该平台的架构使用动态路由,其中API端点映射到基于传入HTTP请求的控制器方法。

例如,对 /ajax/api/user/fetchProfileInfo 的 AJAX 调用被路由到 vB_Api_User::fetchProfileInfo() 方法。

关键问题来自vBulletin如何使用ReflectionMethod::invoke()和ReflectionMethod::invokeArgs()函数。

从 PHP 8.1 开始,这些函数允许调用受保护和私有方法,而无需 setAccessible(true),这是对以前 PHP 版本的更改。

这种微妙的转变意味着,如果应用程序不执行可见性检查,则旨在成为内部助手的方法现在可以直接由远程用户调用。

简化的易受攻击代码模式包括:

向/api.php 请求的?method=protectedMethod 将直接在 PHP 8.1+ 上调用受保护方法,绕过预期的访问控制。

剥削 路径

虽然调用受保护方法的能力是危险的,但当其中一种方法可用于执行代码时,就会出现真正的威胁。

在 vBulletin 中,vB_Api_Ad::replaceAdTemplate() 方法是一个受保护的函数,旨在插入或更新广告模板。

攻击者发现,他们可以通过精心制作的HTTP POST请求调用此方法,将任意模板代码注入系统。

vBulletin 模板引擎支持使用 <vb:if> 标签的条件逻辑。由于模板解析器如何过滤输入存在单独的缺陷,攻击者可以绕过限制并使用变量函数调用注入PHP代码。例如:

此模板一旦注入,允许攻击者执行通过POST请求发送的系统命令,有效地在服务器上授予Webshell。

概念验证漏洞利用演示了攻击者如何获得shell访问,运行任意命令,并完全破坏底层系统,所有这些都无需身份验证。

此漏洞链已确认适用于在 PHP 8.1+ 上运行的 vBulletin 5.1.0、5.7.5、6.0.1 和 6.0.3。该漏洞被认为在6.0.4版本中进行了修补。

此漏洞对开发人员来说是一个警告:依靠方法可见性(公共,受保护,私有)作为安全边界从根本上是不安全的,特别是在使用动态调度和反射时。

在 PHP 8.1 中引入新行为,其中 ReflectionMethod 可以默认调用受保护和私有方法,这意味着应用程序必须在应用程序级别明确执行访问控制。

vBulletin RCE漏洞表明,底层编程语言的微妙变化会对Web应用程序安全产生灾难性后果。

它强调了明确访问控制的重要性,以及依靠语言级可见性在动态Web框架中的安全性的危险。

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

vBulletin RCE漏洞 PHP 远程代码执行 安全漏洞
相关文章