漏洞原理

Tomcat配置了两个Connecto,它们分别是HTTP和AJP。

HTTP默认端口为8080,处理http请求;AJP默认端口8009,用于处理 AJP 协议的请求。

AJP比http更加优化,多用于反向、集群等,漏洞由于Tomcat AJP协议存在缺陷而导致,攻击者利用该漏洞可通过构造特定参数,读取服务器webapp下的任意文件以及可以包含任意文件,如果有某上传点,上传图片马等等,即可以获取shell。

AJP Connector

Apache Tomcat服务器通过Connector连接器组件与客户端程序建立连接,Connector表示接收请求并返回响应的端点,即Connector组件负责接收客户的请求,以及把Tomcat服务器的响应结果发送给客户。

在Apache Tomcat服务器中我们平时用的最多的8080端口,就是所谓的Http Connector,使用Http(HTTP/1.1)协议,在 conf/server.xml 文件里Ajp协议对应的配置为

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

Tomcat服务器默认对外网开启该端口,Web客户访问Tomcat服务器的两种方式:

漏洞环境搭建

进入vulhub-master/tomcat/CVE-2020-1938目录下,docker环境启动

docker-compose up -d
  • 使用nmap,扫描目标指定8009端口,表示漏洞环境搭建成功
nmap -p 8009 192.168.2.147

漏洞环境复现

webapp任意文件读取

可以成功读取web.xml文件内容

python2 CNVD-2020-10487-Tomcat-Ajp-lfi.py 192.168.2.147 -p 8009 -f WEB-INF/web.xml

任意文件包含

文件包含漏洞复现

漏洞攻击流量分析

1、Wireshark抓取poc获取web.xml内容流量



2、跟踪流,服务器返回结果如下

漏洞影响版本

Apache Tomcat 6

Apache Tomcat 7 < 7.0.100

Apache Tomcat 8 < 8.5.51

Apache Tomcat 9 < 9.0.31

漏洞修复措施

1、在servce.xml中注释AJP,或者绑定到localhost

2、升级无漏洞版本

3、Tomcat 7和Tomcat 9可为AJP Connector配置secret来设置AJP协议的认证凭证。

4、Tomcat 8的可为AJP Connector配置requiredSecret来设置AJP协议的认证凭证。

EXP

EXP下载

参考链接

CSDN-Tomcat AJP 文件包含漏洞(CVE-2020-1938)

CSDN-Tomcat AJP文件包含漏洞解析

Tomcat AJP 文件包含漏洞(CVE-2020-1938) 修复方案 (含Apache2 ajp 负载如何修复)

先知社区-Tomcat Ajp协议文件包含漏洞分析

声明

严禁读者利用以上介绍知识点对网站进行非法操作 , 本文仅用于技术交流和学习 , 如果您利用文章中介绍的知识对他人造成损失 , 后果由您自行承担 , 如果您不能同意该约定 , 请您务必不要阅读该文章 , 感谢您的配合 !

Tomcat AJP 文件包含漏洞复现(CVE-2020-1938)的更多相关文章

  1. Aapache Tomcat AJP 文件包含漏洞(CVE-2020-1938)

    受影响版本 Apache Tomcat 6 Apache Tomcat 7 < 7.0.100 Apache Tomcat 8 < 8.5.51 Apache Tomcat 9 < ...

  2. CVE-2018-12613-phpmyadmin4.8.1远程文件包含漏洞复现

    CVE-2018-12613-phpmyadmin4.8.1远程文件包含漏洞复现 参考文章1 参考文章2 By:Mirror王宇阳 漏洞原理 攻击者利用发现在服务器上包含(查看和潜在执行)文件的漏洞. ...

  3. 易酷CMS2.5本地文件包含漏洞复现

    易酷CMS是一款影片播放CMS.该CMS2.5版本存在本地文件包含漏洞.我们可以利用这个漏洞,让其包含日志文件,然后再利用报错信息将一句话木马写入日志中.然后利用文件包含漏洞包含该日志文件,再用菜刀连 ...

  4. 骑士CMS<6.0.48 模板注入文件包含漏洞复现及遇到的坑

    1.坑 payload:variable=1&tpl=<?php phpinfo(); ob_flush();?>/r/n<qscms/company_show 列表名=&q ...

  5. phpmyadmin 4.8.1 远程文件包含漏洞(CVE-2018-12613)

    漏洞详情 范围 phpMyAdmin 4.8.0和4.8.1 原理 首先在index.php 50-63行代码 $target_blacklist = array ( 'import.php', 'e ...

  6. CVE-2018-12613phpMyAdmin 后台文件包含漏洞分析

    一.    漏洞背景 phpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库.借由此Web接口可以成 ...

  7. Tomcat文件包含漏洞的搭建与复现:CVE-2020-1938

    Tomcat文件包含漏洞的搭建与复现:CVE-2020-1938 漏洞描述 2020年2月20日,国家信息安全漏洞共享平台(CNVD)发布了Apache Tomcat文件包含漏洞(CNVD-2020- ...

  8. Apache Tomcat 文件包含漏洞(CVE-2020-1938)

    2月20日,国家信息安全漏洞共享平台(CNVD)发布了Apache Tomcat文件包含漏洞(CNVD-2020-10487/CVE-2020-1938).该漏洞是由于Tomcat AJP协议存在缺陷 ...

  9. Apache Tomcat文件包含漏洞紧急修复

    Tomcat 漏洞 tomcat有漏洞, 需要升级到9.0.31 https://cert.360.cn/warning/detail?id=849be16c6d2dd909ff56eee7e26ae ...

随机推荐

  1. selenium 设置代理ip

    from selenium import webdriver options = webdriver.ChromeOptions() options.add_argument("--prox ...

  2. docker安装部署neo4j

    docker部署neo4j 环境:ubuntu16.04LTS docker安装 详见:菜鸟教程(docker安装) docker国内镜像源配置 第一步,进入阿里云,登陆后点击左侧的镜像加速,生成自己 ...

  3. 微信小程序-基于高德地图API实现天气组件(动态效果)

    微信小程序-基于高德地图API实现天气组件(动态效果) ​ 在社区翻腾了许久,没有找到合适的天气插件.迫不得已,只好借鉴互联网上的web项目,手动迁移到小程序中使用.现在分享到互联网社区中,帮助后续有 ...

  4. nrm切换npm源

    使用 nrm 提供了一些最常用的npm包镜像地址,能够让我们快速的切换安装包时候的服务器地址: 全局安装nrm包 npm i nrm -g 查看当前所有可用的镜像源地址以及当前所使用的镜像源地址 nr ...

  5. Redis【二】 set|get那些事

    redis4.0.9 SET\GET方法 从哪里开始 server.c里面有每个redis命令对应的执行方法 如 struct redisCommand redisCommandTable[] = { ...

  6. quart动态执行定时任务

    今天有个需求,前端可以将定时任务自定义保存到数据库,每天根据查询数据库来执行任务. 其实不用动态也是可以实现,但是.也是想试试动态执行定时任务看看怎么样的. (1)建立一个QuartzManage类 ...

  7. 给html添加图标

    <link rel="icon" type="image/ico" href="images/favicon.ico" />

  8. CodeForces 1408I Bitwise Magic

    题意 给定三个整数 \(n,k,c\) 和一个长度为 \(n\) 的序列 \(a\),保证 \(a_i\) 互不相同.可以操作 \(k\) 次,每次随机选择一个 \(a_i\) 变成 \(a_i-1\ ...

  9. Python 1-5】Python教程之——字符串

    字符串或串(String)是由数字.字母.下划线组成的一串字符. 字符串 字符串就是一系列字符.在Python中,用引号括起的都是字符串,其中的引号可以是单引号, 也可以是双引号,如下所示: &quo ...

  10. 快快使用ModelArts,零基础小白也能玩转AI!

    摘要: 走过路过不要错过,看Copy攻城狮如何借力华为云ModelArts玩转AI. "自2018年10月发布以来,ModelArts累计服务了众多行业十几万开发者,通过基础平台的完备性和面 ...