Joomla Core 内核 SQL 注入漏洞

Posted by JenI on 2018-04-03 00:00:00+08:00

前言

Joomla! 是一套全球知名的内容管理系统,由 PHP 加上 MySQL 数据库所开发的软件系统。近日,Joomla 3.5.0-3.8.5 版本后台管理页面的 User Notes 页面被指出存在 SQL 注入漏洞。

漏洞分析

根据官方对该漏洞的描述可知在 User Notes 列表视图中存在 SQL 注入漏洞,漏洞是由于 SQL 语句内的变量缺少类型转换而导致的。

joomla_core_sqli_1

在 Joomla 的后台管理页面中,从 User Notes 列表视图页面发起的请求,会交给 ./administrator/components/com_users/models/notes.php 处理,该文件在上次更新时对传入的 filter.category_id 参数进行了 int 类型的强制转换。

joomla_core_sqli_2

具体请求地址为 http://x.x.x.x/administrator/index.php?option=com_users&view=notes

joomla_core_sqli_3

在此页面点击搜索按钮时,进行抓包,在 Post 数据包中可以看到 filter[category_id] 字段

joomla_core_sqli_4

在 filter[category_id] 参数值内添加单引号,页面返回内容包含数据库错误信息,证明确实存在注入。

joomla_core_sqli_5

joomla_core_sqli_6

将数据包保存至文本文档,利用 -r 参数将数据包传入 sqlmap 进行注入尝试

sqlmap -r request_header.txt -p filter[category_id]

得到以下结果:

joomla_core_sqli_7

参考

http://blog.nsfocus.net/cve-2018-804-analysis/


作者:   JenI   转载请注明出处,谢谢


Comments !