Tomcat爆出嚴重漏洞,附影響版本及解決方案

昨天,羣裏聊嗨了。你們都在遠程辦公,卻都急急忙忙的升級線上的 Tomcat 版本,緣由就是 Tomcat 被曝出了嚴重的漏洞,幾乎涉及到全部的版本。html

1、漏洞原理
具體來講就是 Apache Tomcat 服務器存在文件包含漏洞,攻擊者可利用該漏洞讀取或包含 Tomcat 上全部 webapp 目錄下的任意文件,如:webapp 配置文件或源代碼等。git

因爲 Tomcat 默認開啓的 AJP 服務(8009 端口)存在一處文件包含缺陷,攻擊者可構造惡意的請求包進行文件包含操做,進而讀取受影響 Tomcat 服務器上的 Web 目錄文件。github

2、漏洞編號
根據資料顯示,涉及到兩個漏洞編號。web

CVE-2020-1938apache

CNVD-2020-1048服務器

3、漏洞影響的版本
Apache Tomcat 6app

Apache Tomcat 7 < 7.0.100webapp

Apache Tomcat 8 < 8.5.51jsp

Apache Tomcat 9 < 9.0.31工具

4、漏洞詳情
首先啓動 apache tamcat 服務,訪問 localhost:8080 能夠成功訪問以下界面。

 

 

 

經過上圖,咱們能夠肯定到對應 Tomcat 的版本號。

而後再使用漏洞掃描工具對其進行端口掃描發現 800九、8080 都已端口開啓,證實有該漏洞。

 

 

 

 

 

而後,你們能夠利用 github 上別人寫好的腳本進行攻擊演示。下載地址以下,有兩個。任選其一便可。

Poc1 下載地址:https://github.com/0nise/CVE-2020-1938

Poc2 下載地址:https://github.com/YDHCUI/CNVD-2020-10487-Tomcat-Ajp-lfi

下載好後進入該文件夾 cmd 命令執行並加上網址參數利用 poc。須要注意的是 poc 爲 py2 環境。而後執行下面的命令。

 

 

 

執行成功後就能夠看到成功訪問到該文件 web.xml。其餘的 WEB-INF 下面的文件均可以訪問到,包括你的源碼文件,jsp、html、.class 等。

 

 

 

5、漏洞修復方案
一、禁用Tomcat 的 AJP 協議端口,在 conf/server.xml 配置文件中註釋掉 <Connector port="8009" protocol="AJP/1.3"redirectPort="8443" />。

二、在 ajp 配置中的 secretRequired 跟 secret 屬性來限制認證。

三、對 Tomcat 進行版本升級。

6、寫在最後
大家公司有沒有用 Tomcat?用的版本是多少?有沒有中招?歡迎留言區評論交流!

————————————————版權聲明:本文爲CSDN博主「業餘草」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處連接及本聲明。原文連接:https://blog.csdn.net/xmtblog/article/details/104454218

相關文章
相關標籤/搜索