• 中间件漏洞总结(二)- Tomcat


    (一) Tomcat简介

    Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用 服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应 HTML ( 标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。

    (二) 远程代码执行

      1、 漏洞简介及成因

        Tomcat 运行在Windows 主机上,且启用了 HTTP PUT 请求方法,可通过构造的攻击请求向服务器上传包含任意代码的 JSP 文件,造成任意代码执行。

        影响版本: Apache Tomcat 7.0.0 – 7.0.81

      2、 漏洞复现

        配置漏洞,开启put方法可上传文件功能。

        tomcat文件夹下的/conf/web.xml文件插入:

         <init-param>
               <param-name>readonly</param-name>
               <param-value>false</param-value>
         </init-param>

        重启tomcat服务。

        

        访问127.0.0.1:8080,burp抓包,send to Repeater,将请求方式改为PUT,创建一个122.jsp,并用%20转义空格字符。123.jsp内容为:

    <%Runtime.getRuntime().exec(request.getParameter("cmd"));%>

        返回201,说明创建成功。

        

        访问127.0.0.1:8080/122.jsp?cmd=calc。

        弹出计算器:

          

      3、 漏洞修复

        1)检测当前版本是否在影响范围内,并禁用PUT方法。

        2)更新并升级至最新版。

    (三)war后门文件部署

      1、漏洞简介及成因

        Tomcat 支持在后台部署war文件,可以直接将webshell部署到web目录下。

        若后台管理页面存在弱口令,则可以通过爆破获取密码。

      2、漏洞复现

        Tomcat安装目录下conf里的tomcat-users.xml配置如下:

        

         访问后台,登陆:

         

         上传一个war包,里面是jsp后门:

        

         成功上传并解析,打开:

        

         可执行系统命令:

        

         也可进行文件管理,任意查看、删除、上传文件:

        

       3、漏洞修复

        1)在系统上以低权限运行Tomcat应用程序。创建一个专门的 Tomcat服务用户,该用户只能拥有一组最小权限(例如不允许远程登录)。

        2)增加对于本地和基于证书的身份验证,部署账户锁定机制(对于集中式认证,目录服务也要做相应配置)。在CATALINA_HOME/conf/web.xml文件设置锁定机制和时间超时限制。

        3)以及针对manager-gui/manager-status/manager-script等目录页面设置最小权限访问限制。

        4)后台管理避免弱口令。

  • 相关阅读:
    Web Service平台有三种元素构成:SOAP、WSDL、UDDI。区别和联系
    WSDL(Web服务描述语言)详细解析(全文转载学习用)
    SOAP和WebService的那些事
    成本加浮动酬金合同 成本加激励费用合同
    理解量子信息
    面向(过程、对象、组件、服务)编程
    POP-OOP-SOP-COP-SOA-AOP
    法律知识
    义帝熊心--秦末汉初
    接口绑定有几种实现方式,分别是怎么实现的?
  • 原文地址:https://www.cnblogs.com/ssw6/p/12098625.html
Copyright © 2020-2023  润新知