Tomcat 弱口令导致后台 getshell


Tomcat 弱口令导致后台 getshell

复现环境

Tomcat版本:8.0

Tomcat支持在后台部署 war 文件,可以直接将 webshell 部署到 web 目录下。其中,欲访问后台,需要对应用户有相应权限。

Tomcat7+ 权限分为:

  • manager(后台管理)
    • manager-gui 拥有 html 页面权限
    • manager-status 拥有查看 status 的权限
    • manager-script 拥有 text 接口的权限,和 status 权限
    • manager-jmx 拥有 jmx 权限,和 status 权限
  • host-manager(虚拟主机管理)
    • admin-gui 拥有 html 页面权限
    • admin-script 拥有 text 接口权限

conf/tomcat-users.xml 文件中配置用户的权限:

<?xml version="1.0" encoding="UTF-8"?>
<tomcat-users xmlns="http://tomcat.apache.org/xml"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
              version="1.0">

    <role rolename="manager-gui"/>
    <role rolename="manager-script"/>
    <role rolename="manager-jmx"/>
    <role rolename="manager-status"/>
    <role rolename="admin-gui"/>
    <role rolename="admin-script"/>
    <user username="tomcat" password="tomcat" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-gui,admin-script" />

</tomcat-users>

可见,用户 tomcat 拥有上述所有权限,密码是 tomcat。

正常安装的情况下,tomcat8 中默认没有任何用户,且 manager 页面只允许本地 IP 访问。只有管理员手工修改了这些属性的情况下,才可以进行攻击。

漏洞复现

打开tomcat管理页面 http://your-ip:8080/manager/html,输入弱密码 tomcat:tomcat,即可访问后台:

上传 war 包即可直接 getshell。


文章作者: Geekby
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Geekby !
 上一篇
Tomcat PUT 方法任意写文件漏洞(CVE-2017-12615) Tomcat PUT 方法任意写文件漏洞(CVE-2017-12615)
Tomcat PUT 方法任意写文件漏洞(CVE-2017-12615)漏洞原理漏洞本质 Tomcat 配置了可写(readonly=false),导致我们可以往服务器写文件: <servlet> <servlet
2019-03-02
下一篇 
uWSGI PHP目录穿越漏洞(CVE-2018-7490) uWSGI PHP目录穿越漏洞(CVE-2018-7490)
uWSGI PHP目录穿越漏洞(CVE-2018-7490)uWSGI 是一款 Web 应用程序服务器,它实现了 WSGI、uwsgi 和 http 等协议,并支持通过插件来运行各种语言。 uWSGI 2.0.17 之前的 PHP 插件,没
2019-03-02
  目录