0x00漏洞簡介
漏洞編號:cve-2020-1938
cve-2020-1938是一個出現在Apache-Tomcat-Ajp的文件包含漏洞,攻擊者可以利用該漏洞讀取包含Tomcat上所有的webapp目錄下的任意文件,入:webapp配置文件或源代碼。
由於Tomcat默認開啟的AJP服務(8009端口)存在一處文件包含缺陷,攻擊者可構造惡意的請求包進行文件包含操作,進而讀取受影響Tomcat服務器上的Web目錄文件。
0x01漏洞影響范圍
Apache Tomcat 6
Apache Tomcat 7 < 7.0.100
Apache Tomcat 8 < 8.5.51
Apache Tomcat 9 < 9.0.31
0x02漏洞復現
本文章漏洞環境利用的是cve-2019-0232環境,再次就不細說搭建環境過程,詳情請看:https://www.cnblogs.com/twlr/p/12303052.html。
啟動Tomcat服務后,訪問http://localhost:8080可以看的如下界面:
對Tomcat服務掃描端口:
發現開啟了8080 和8009端口,證明存在漏洞。
下載漏洞利用poc:https://github.com/0nise/CVE-2020-1938
poc為python2環境,在cmd命令行執行命令:
python ./ CNVD-2020-10487-Tomcat-Ajp-lfi.py 本地ip –p 8009 –f WEB-INF/web.xml 可以成功訪問文件。
0x03修復建議
1、禁用AIP協議端口,在conf/server.xml配置文件中注釋掉<Connector port="8009" protocol="AJP/1.3"redirectPort="8443" />
2、升級官方最新版本。