Apache-Tomcat-Ajp漏洞(CVE-2020-1938)漏洞復現
0X00漏洞簡介
Apache與Tomcat都是Apache開源組織開發的用於處理HTTP服務的項目,兩者都是免費的,都可以做為獨立的Web服務器運行。
Apache Tomcat服務器存在文件包含漏洞,攻擊者可利用該漏洞讀取或包含 Tomcat 上所有 webapp 目錄下的任意文件,如:webapp 配置文件或源代碼等。
由於Tomcat默認開啟的AJP服務(8009端口)存在一處文件包含缺陷,攻擊者可構造惡意的請求包進行文件包含操作,進而讀取受影響Tomcat服務器上的Web目錄文件。
0X01漏洞編號
CVE-2020-1938
CNVD-2020-10487
0X02漏洞影響范圍
Apache Tomcat 6
Apache Tomcat 7 < 7.0.100
Apache Tomcat 8 < 8.5.51
Apache Tomcat 9 < 9.0.31
0X03漏洞環境搭建
本漏洞由於影響版本較多,因此環境利用復現cve-2019-0232的環境
關於環境搭建請移步於https://www.cnblogs.com/L0ading/p/12312064.html
0X04漏洞復現過程
首先啟動apache tamcat服務,訪問localhost:8080可以成功訪問如下界面
對其進行端口掃描發現8009 8080端口開啟,證明有該漏洞。
接着下載利用的poc
Poc1下載地址:https://github.com/0nise/CVE-2020-1938
Poc2下載地址:https://github.com/YDHCUI/CNVD-2020-10487-Tomcat-Ajp-lfi
下載好后進入該文件夾cmd命令執行並加上網址參數利用poc
注意poc為py2環境
命令為
python ./ CNVD-2020-10487-Tomcat-Ajp-lfi.py 本地ip –p 8009 –f WEB-INF/web.xml
執行成功后可以看到成功訪問到該文件。
0X05漏洞修復建議
、臨時禁用AJP協議端口,在conf/server.xml配置文件中注釋掉<Connector port="8009" protocol="AJP/1.3"redirectPort="8443" />
2、配置ajp配置中的secretRequired跟secret屬性來限制認證
3、官方下載最新版下載地址:
https://tomcat.apache.org/download-70.cgi
https://tomcat.apache.org/download-80.cgi
https://tomcat.apache.org/download-90.cgi
或Github下載:https://github.com/apache/tomcat/releases
0X06AJP協議規范
詳見https://tomcat.apache.org/connectors-doc/ajp/ajpv13a.html