1. 程式人生 > 其它 >Apache Tomcat 檔案包含漏洞 (CVE-2020-1938) 復現

Apache Tomcat 檔案包含漏洞 (CVE-2020-1938) 復現

0x00 前言

本次漏洞復現使用

靶機:vulfocus

0x01 描述

Tomcat 是 Apache 開源組織開發的用於處理HTTP服務的專案,兩者都是免費的,都可以作為獨立的WEB伺服器執行。Apache Tomcat 會預設開啟 AJP 聯結器,方便與其他WEB伺服器通過 AJP 協議進行互動

此漏洞為檔案包含漏洞,攻擊者可利用該漏洞讀取或包含 Tomcat 上所有 webapp 目錄下的任意檔案,如:webapp 配置檔案、原始碼等

影響版本

Apache Tomcat 6
Apache Tomcat 7 < 7.0.100
Apache Tomcat 8 < 8.5.51
Apache Tomcat 
9 < 9.0.31

預設埠

8080    tomcat預設埠
8009    APJ預設埠

復現準備

啟動環境

0x02 漏洞復現

POC驗證

PS:此處的 42443 埠是 8009 的對映

我這裡找了很久,感覺完全是個空的 docker 靶機

這個包含漏洞不能跨出 webapps 目錄,攻擊者可以讀取到 webapp 目錄下的任意檔案,包括 war 包。而 war 包裡有properties檔案,不少開發團隊都把連線資料庫的使用者名稱密碼、JWT 簽名 secret 、加解密金鑰等重要資訊放在這個檔案裡。這個漏洞的存在,允許攻擊者可以最終讀取到這些金鑰資料,當然原始碼也是能通過反編譯 war

包裡的 class 檔案得到的。

當然,這個漏洞也能配合上傳漏洞包含 getShell

由於靶機沒提供上傳介面,本地搭建了一個 docker 環境放了一個 txt 檔案嘗試進行包含,執行命令

好的程式碼像粥一樣,都是用時間熬出來的