Joomla!3.8.3:通过SQL注入进行权限提升 | 申博官网
登录
  • 欢迎进入申博官网!
  • 如果您觉得申博官网对你有帮助,那么赶紧使用Ctrl+D 收藏申博官网并分享出去吧
  • 这里是申博官方网!
  • 申博官网是菲律宾sunbet官网品牌平台!
  • 申博开户专业品牌平台!

Joomla!3.8.3:通过SQL注入进行权限提升

申博_安全工具 申博 276次浏览 已收录 0个评论

Joomla!3.8.3:通过SQL注入进行权限提升

Joomla!3.8.3:通过SQL注入进行权限提升

的Joomla!是内容管理系统市场中最大的参与者之一。它易于安装,使用和扩展,使其成为WordPress 1旁边网络上使用次数最多的CMS 。去年,我们的PHP静态代码分析解决方案在Joomla 的500,000行中推出了一个罕见的LDAP注入漏洞!码。我们之前的博文中解释了这个LDAP注入漏洞,攻击者可以完全接管Joomla!<= v3.7.5依赖LDAP进行身份验证的安装。

我们的分析引擎的最新更新导致在Joomla中发现新的漏洞!核心影响3.8.4之前的版本。RIPS发现了一个二阶SQL注入,攻击者可以使用它来利用较低的权限并将其升级为完全管理员权限。这个以前未知的漏洞被泄露给了Joomla!安全团队于2018年1月30日发布了安全修复程序。

谁受到影响

具有以下要求的安装受此漏洞的影响:

  • 的Joomla!版本<= 3.8.3和> = 3.7.0

为了利用攻击者,需要对Joomla进行身份验证!使用经理帐户后端。此用户组默认在Joomla中可用!并且具有比管理员超级用户用户组更低的权限。

影响 – 攻击者可以做些什么

利用此漏洞的攻击者可以从数据库中读取任意数据。此数据可用于进一步扩展攻击者的权限。通过获得完全的管理权限,她可以接管Joomla!通过执行任意PHP代码进行安装。

在这篇博文中,我们将演示如何使用RIPS静态代码分析器自动查找以前未知的漏洞。此外,我们将讨论安全问题背后的技术细节。

自动检测

RIPS花了大约4分钟来改造Joomla的大代码库!将超过500,000行代码放入抽象图模型中,并在整个图中执行数据流分析,以检测80多种漏洞类型。在此深入的代码分析过程中,报告了两种类型SQL注入的高严重漏洞。

Joomla!3.8.3:通过SQL注入进行权限提升

仔细查看RIPS网络界面中报告的漏洞的详细描述,发现在Joomla!的特定文件中,用户控制的输入用于构造SQL查询而无需任何清理。

Joomla!3.8.3:通过SQL注入进行权限提升

配备其独特静态代码分析算法的RIPS引擎成功识别出危险的用户输入源。此外,Joomla!的数据库抽象层的方法被识别为安全敏感,因为它连接SQL代码以执行数据库查询。RIPS检测到在此安全敏感方法中未使用用户输入,并报告了SQL注入漏洞。它允许攻击者注入SQL代码并根据自己的优势修改数据库查询并窃取私有数据。

见RIPS报告

技术分析:二阶盲SQL注入

SQL注入位于文件中administrator/templates/hathor/postinstall/hathormessage.php。以下代码摘要显示了此漏洞。

管理员/模板/哈索尔/后安装/ hathormessage.php

	{
        $query = $db->getQuery(true)
            ->select('template')
            ->from($db->quoteName('#__template_styles'))
 ->where($db->quoteName('id') . ' = ' . $adminstyle[0])             ->where($db->quoteName('client_id') . ' = 1');

        // Get the template name associated to the admin style  $template = $db->setquery($query)->loadResult();         
    }
    
}

hathormessage_postinstall_condition()组件为Joomla中引入的安装后消息调用该函数!3.2.0每次加载仪表板时。在此函数中,变量的内容$adminstyle连接到WHERE构造的SQL查询的一部分,而没有在第10行中进行适当的清理。如果攻击者可以控制参数的内容admin_style,她可以将任意SQL注入到行中执行的查询中14。

该参数admin_style在第4行中接收。它包含用户已配置使用的后端模板的ID。用户可以在其配置文件设置中更改此参数。通过拦截用户参数的保存请求并更改其值来快速验证admin_style表明它已保存到数据库而无需进一步检查或清理。因此,攻击者可以将任意内容注入此参数,稍后将在SQL查询中使用该参数。此SQL注入是一个二阶漏洞,因为有效负载首先保存到数据库中,然后在查询中使用。查询结果不直接显示在网页中,因此,攻击者需要使用基于错误或基于时间的注入技术进行利用。下图演示了如何使用SQL查询中的XPath错误消息来读出当前登录管理员的会话ID。

Joomla!3.8.3:通过SQL注入进行权限提升

时间线

日期 什么
2018年1月17日 报告了Joomla的漏洞!安全团队
2018年1月17日 供应商确认并提出补丁
2018年1月29日 MITER分配了CVE-2018-6376
2017年1月30日 供应商发布了固定版本3.8.4

摘要

安全漏洞无处不在,甚至可以在最受欢迎和最受欢迎的开源应用程序中找到。在Joomla中发现了一个新的SQL注入漏洞!这会影响3.8.4之前的版本。使用最先进的SAST技术的RIPS静态代码分析器自动识别该漏洞。在这篇博文中,我们研究了二阶盲SQL注入的根源,并演示了RIPS如何帮助在大型复杂的PHP项目中找到隐藏的安全问题。

我们要感谢Joomla背后的安全团队!通过3.8.4版本的专业协作和快速解决问题。如果您仍在使用旧版本,我们建议您更新。


申博|网络安全巴士站声明:该文看法仅代表作者自己,与本平台无关。版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明Joomla!3.8.3:通过SQL注入进行权限提升
喜欢 (0)
[]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址