tomcat漏洞利用 tomcat漏洞修復方法



文章插圖
tomcat漏洞利用 tomcat漏洞修復方法

文章插圖
昨天,群里聊嗨了 。大家都在遠程辦公,卻都急急忙忙的升級線上的 Tomcat 版本,原因就是 Tomcat 被曝出了嚴重的漏洞,幾乎涉及到所有的版本 。
一、漏洞原理
具體來說就是 Apache Tomcat 服務器存在文件包含漏洞,攻擊者可利用該漏洞讀取或包含 Tomcat 上所有 webapp 目錄下的任意文件,如:webapp 配置文件或源代碼等 。
【tomcat漏洞利用 tomcat漏洞修復方法】由于 Tomcat 默認開啟的 AJP 服務(8009 端口)存在一處文件包含缺陷,攻擊者可構造惡意的請求包進行文件包含操作,進而讀取受影響 Tomcat 服務器上的 Web 目錄文件 。
二、漏洞編號
根據資料顯示,涉及到兩個漏洞編號 。
CVE-2020-1938CNVD-2020-1048三、漏洞影響的版本Apache Tomcat 6Apache Tomcat 7 < 7.0.100Apache Tomcat 8 < 8.5.51Apache Tomcat 9 < 9.0.31四、漏洞詳情
首先啟動 apache tamcat 服務,訪問 localhost:8080 可以成功訪問如下界面 。
通過上圖,我們可以確定到對應 Tomcat 的版本號 。
然后再使用漏洞掃描工具對其進行端口掃描發現 8009、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 等 。
五、漏洞修復方案
1、禁用Tomcat 的 AJP 協議端口,在 conf/server.xml 配置文件中注釋掉 <Connector port=”8009″ protocol=”AJP/1.3″redirectPort=”8443″ /> 。
2、在 ajp 配置中的 secretRequired 跟 secret 屬性來限制認證 。
3、對 Tomcat 進行版本升級 。
六、寫在最后
你們公司有沒有用 Tomcat?用的版本是多少?有沒有中招?歡迎留言區評論交流!