安全公告編號:CNTA-2020-0004
2020年1月6日,國家信息安全漏洞共享平臺(CNVD)收錄了由北京長亭科技有限公司發現並報送的Apache Tomcat文件包含漏洞(CNVD-2020-10487,對應CVE-2020-1938)。攻擊者利用該漏洞🧎♀️➡️,可在未授權的情況下遠程讀取特定目錄下的任意文件🧜🏽♂️。目前,漏洞細節尚未公開🙋🏼♀️,廠商已發布新版本完成漏洞修復👷🏻♀️。
一*️⃣、漏洞情況分析
Tomcat是Apache軟件基金會Jakarta 項目中的一個核心項目,作為目前比較流行的Web應用服務器💳,深受Java愛好者的喜愛✶,並得到了部分軟件開發商的認可。Tomcat服務器是一個免費的開放源代碼的Web應用服務器,被普遍使用在輕量級Web應用服務的構架中。
2020年1月6日,國家信息安全漏洞共享平臺(CNVD)收錄了由北京長亭科技有限公司發現並報送的Apache Tomcat文件包含漏洞。Tomcat AJP協議由於存在實現缺陷導致相關參數可控🈵,攻擊者利用該漏洞可通過構造特定參數🧞♀️,讀取服務器webapp下的任意文件🛟。若服務器端同時存在文件上傳功能,攻擊者可進一步實現遠程代碼的執行。
CNVD對該漏洞的綜合評級為“高危”。
二、漏洞影響範圍
漏洞影響的產品版本包括:
Tomcat 6
Tomcat 7
Tomcat 8
Tomcat 9
CNVD平臺對Apache Tomcat AJP協議在我國境內的分布情況進行統計✌🏼,結果顯示我國境內的IP數量約為55.5萬,通過技術檢測發現我國境內共有43197臺服務器受此漏洞影響,影響比例約為7.8%🤴🏿。
三、漏洞處置建議
目前,Apache官方已發布9.0.31、8.5.51及7.0.100版本對此漏洞進行修復,CNVD建議用戶盡快升級新版本或采取臨時緩解措施📜:
1. 如未使用Tomcat AJP協議:
如未使用 Tomcat AJP 協議🕴🏼,可以直接將 Tomcat 升級到 9.0.31🪫、8.5.51或 7.0.100 版本進行漏洞修復。
如無法立即進行版本更新、或者是更老版本的用戶,建議直接關閉AJPConnector❣️,或將其監聽地址改為僅監聽本機localhost🙂↕️😴。
具體操作:
(1)編輯 <CATALINA_BASE>/conf/server.xml🌈,找到如下行(<CATALINA_BASE> 為 Tomcat 的工作目錄):
<Connector port="8009"protocol="AJP/1.3" redirectPort="8443" />
(2)將此行註釋掉(也可刪掉該行)🙍🏼♀️:
<!--<Connectorport="8009" protocol="AJP/1.3"redirectPort="8443" />-->
(3)保存後需重新啟動,規則方可生效。
2. 如果使用了Tomcat AJP協議:
建議將Tomcat立即升級到9.0.31、8.5.51或7.0.100版本進行修復🧑🏿✈️🚶,同時為AJP Connector配置secret來設置AJP協議的認證憑證⚒🦕。例如(註意必須將YOUR_TOMCAT_AJP_SECRET更改為一個安全性高、無法被輕易猜解的值):
<Connector port="8009"protocol="AJP/1.3" redirectPort="8443"address="YOUR_TOMCAT_IP_ADDRESS" secret="YOUR_TOMCAT_AJP_SECRET"/>
如無法立即進行版本更新、或者是更老版本的用戶🦯,建議為AJPConnector配置requiredSecret來設置AJP協議認證憑證🐔。例如(註意必須將YOUR_TOMCAT_AJP_SECRET更改為一個安全性高、無法被輕易猜解的值)🧘🏿♂️:
<Connector port="8009"protocol="AJP/1.3" redirectPort="8443"address="YOUR_TOMCAT_IP_ADDRESS"requiredSecret="YOUR_TOMCAT_AJP_SECRET" />
附:參考鏈接:
https://tomcat.apache.org/connectors-doc/ajp/ajpv13a.html
https://tomcat.apache.org/tomcat-8.0-doc/config/ajp.html
https://stackoverflow.com/questions/21757694/what-is-ajp-protocol-used-for
感謝CNVD技術組成員單位——北京長亭科技有限公司為本報告提供的技術支持👍🏼。
感謝CNVD技術組成員單位——北京知道創宇信息技術股份有限公司為本報告提供的數據支持。