前言 的Joomla!它是世界上最流行的内容管理系统(CMS)解决方案之一。它允许用户自定义构建站点以实现功能强大的在线应用程序。据不完全统计,互联网上有超过3%的网站运行Joomla!与此同时,它占全球CMS市场份额的9%以上。 截至2016年11月,Joomla!下载总数超过了7800万。目前Joomla!该官员还提供超过7,800个扩展(包括免费,付费插件)和其他可供下载的资源。 漏洞描述
漏洞等级:严重 漏洞类型:sql注入 利用难度:很简单 利用方式:远程 影响版本:Joomla! 3.7.0核心 漏洞简述:此漏洞出现在3.7.0中名为“com_fields”的新组件中。任何人都可以访问此组件而无需登录验证。由于缺少对请求数据的严格过滤,sql注入导致数据库中的敏感信息泄露,例如用户的密码哈希和登录后用户的会话(如果登录后获得管理员的会话),则整个网站可以控制后台系统)。 漏洞细节 “com_fields”组件从同一侧管理端组件继承了一些视图,这减少了相同功能的代码量并提高了代码的可重用性。
从上面的代码片段可以看出,$ config ['base_path']变量的值在JPATH_COMPONENT_ADMINISTRATOR常量中传递。此常量值表示admin组件目录的本地路径。这将导致Joomla!从此路径获取视图视图。和模块模型一样,要成功运行需要构造相关参数和值,视图参数的值是字段,布局参数的值是模态的。然后构造的URL如下: 1 /index.php?option=com_fields&view=fields&layout=modal 访问此URL会显示此站点的所有自定义字段的列表。 请注意,这是Administrator视图的唯一组件字段(我们之前提到的$ config ['base_path']变量)。在这种情况下,我们可以直接从管理员模型获取数据。特定漏洞位于: .MarchModelFields /administrator/components/com_fields/models/fields.php在 模型中。 最后,我们找到了有问题的方法getListQuery
如果你不熟悉Joomla!执行SQL查询,$ query-> order()实际上只是一个方法,它的输入将连接到查询的ORDER BY语句,这是我们要做的最后一件事,用未经检查的用户输入来这里看看是否会有惊喜。
用户输入传递给list.fullordering,因为FieldsModelFields模型继承自JModelList类,该类还包含上面的代码片段。您可能会注意到它对内容进行了一些验证,然后相应地设置了list.direction和list.ordering,但是list.fullordering?
在switch语句之后,无论它是否生成有效的list.direction或list.ordering,我们都可以使用这行指令通过我们输入的内容设置我们想要的值。 因此,为了利用此漏洞,攻击者必须做的是向URL添加适当的参数,以便注入SQL查询。 验证截图 PoC 暂时不公开 修复建议 升级最新版本的完整安装包和升级包 https://downloads.joomla.org/cms/joomla3/3-7-1 漏洞环境 感谢开源社区力量 由phithon维护的漏洞范围环境 Vulhub是面向公众的开源漏洞目标。如果不了解docker,只需执行两个命令即可编译并运行完整的漏洞目标映像。 https://github.com/phith0n/vulhub/tree/master/joomla/CVE-2017-8917 参考 https://blog.sucuri.net/2017/05/sql-injection-vulnerability-joomla-3-7.html https://www.joomla.org/announcements/release-news/5705-joomla-3-7-1-release.html https://downloads.joomla.org/cms/joomla3/3-7-1
本文由乘客安全翻译,作者:乘客安全 原文链接:https://blog.sucuri.net/2017/05/sql-injection-vulnerability-joomla-3-7.html 黑客业务列表介绍和一般分类: 类别:攻击入侵破解开发 1:攻击业务订单:暂时取消所有此类业务订单[仅销售常规IDC流量] 2:入侵业务清单:包括网站源代码,办公系统,黑色系统,教育系统等。 3:破解业务类:软件,加密文件,二次打包,脱壳等。 4:二次开发业务清单:软件二次开发,源代码二次开发等 5:其他业务订单:特洛伊木马[通过所有防病毒],远程控制,特殊软件等 备注:未提及的业务订单可根据主要类别查询或直接联系客户服务。为避免浪费双方时间,请在咨询前阅读:业务交易流程及相关说明 注意:仅接受正式业务,个人无权接受。收集此内容。