當(dāng)前位置:首頁(yè)>WordPress資訊>Apache Tomcat 存在Ajp協(xié)議文件讀取/包含漏洞(稱(chēng)為Ghostcat),請(qǐng)及時(shí)修復(fù)

Apache Tomcat 存在Ajp協(xié)議文件讀取/包含漏洞(稱(chēng)為Ghostcat),請(qǐng)及時(shí)修復(fù)

Java 是目前 Web 開(kāi)發(fā)中最主流的編程語(yǔ)言,而 Tomcat 是當(dāng)前最流行的 Java 中間件服務(wù)器之一,從初版發(fā)布到現(xiàn)在已經(jīng)有二十多年歷史,在世界范圍內(nèi)廣泛使用。

Ghostcat(幽靈貓) 是由我國(guó)長(zhǎng)亭科技安全研究員發(fā)現(xiàn)的存在于 Tomcat 中的安全漏洞,由于 Tomcat AJP 協(xié)議設(shè)計(jì)上存在缺陷,攻擊者通過(guò) Tomcat AJP Connector 可以讀取或包含 Tomcat 上所有 webapp 目錄下的任意文件,例如可以讀取 webapp 配置文件或源代碼。此外在目標(biāo)應(yīng)用有文件上傳功能的情況下,配合文件包含的利用還可以達(dá)到遠(yuǎn)程代碼執(zhí)行的危害。漏洞被記錄為 【 CVE-2020-1938 】

https://www.chaitin.cn/zh/ghostcat

正如網(wǎng)絡(luò)威脅情報(bào)公司Bad Packets?在周六所說(shuō)的那樣,“針對(duì)此漏洞的大規(guī)模掃描活動(dòng)已經(jīng)開(kāi)始。請(qǐng)立即修補(bǔ)!”

為什么這個(gè)漏洞被稱(chēng)作 Ghostcat(幽靈貓)?

這個(gè)漏洞影響全版本默認(rèn)配置下的 Tomcat(在我們發(fā)現(xiàn)此漏洞的時(shí)候,確認(rèn)其影響 Tomcat 9/8/7/6 全版本,而年代過(guò)于久遠(yuǎn)的更早的版本未進(jìn)行驗(yàn)證),這意味著它在 Tomcat 里已經(jīng)潛伏了長(zhǎng)達(dá)十多年的時(shí)間。

Tomcat AJP Connector 是什么?

Tomcat Connector 是 Tomcat 與外部連接的通道,它使得 Catalina 能夠接收來(lái)自外部的請(qǐng)求,傳遞給對(duì)應(yīng)的 Web 應(yīng)用程序處理,并返回請(qǐng)求的響應(yīng)結(jié)果。

默認(rèn)情況下,Tomcat 配置了兩個(gè) Connector,它們分別是 HTTP Connector 和 AJP Connector:

HTTP Connector:用于處理 HTTP 協(xié)議的請(qǐng)求(HTTP/1.1),默認(rèn)監(jiān)聽(tīng)地址為 0.0.0.0:8080

AJP Connector:用于處理 AJP 協(xié)議的請(qǐng)求(AJP/1.3),默認(rèn)監(jiān)聽(tīng)地址為 0.0.0.0:8009

HTTP Connector 就是用來(lái)提供我們經(jīng)常用到的 HTTP Web 服務(wù)。而 AJP Connector,它使用的是 AJP 協(xié)議(Apache Jserv Protocol),AJP 協(xié)議可以理解為 HTTP 協(xié)議的二進(jìn)制性能優(yōu)化版本,它能降低 HTTP 請(qǐng)求的處理成本,因此主要在需要集群、反向代理的場(chǎng)景被使用。

Ghostcat 漏洞有哪些危害?

通過(guò) Ghostcat 漏洞,攻擊者可以讀取 Tomcat所有 webapp目錄下的任意文件。

此外如果網(wǎng)站應(yīng)用提供文件上傳的功能,攻擊者可以先向服務(wù)端上傳一個(gè)內(nèi)容含有惡意 JSP 腳本代碼的文件(上傳的文件本身可以是任意類(lèi)型的文件,比如圖片、純文本文件等),然后利用 Ghostcat 漏洞進(jìn)行文件包含,從而達(dá)到代碼執(zhí)行的危害。

哪些版本的 Tomcat 受到 Ghostcat 漏洞影響?

Apache Tomcat版本受影響的版本已修復(fù)的版本
Apache Tomcat 99.0.30 及以下9.0.31
Apache Tomcat 88.5.50 及以下 8.5.51
Apache Tomcat 77.0.99 及以下 7.0.100
Apache Tomcat 6所有版本不再提供修復(fù)

什么情況下的 Tomcat 可以被 Ghostcat 漏洞利用?

對(duì)于處在漏洞影響版本范圍內(nèi)的 Tomcat 而言,若其開(kāi)啟 AJP Connector 且攻擊者能夠訪(fǎng)問(wèn) AJP Connector 服務(wù)端口的情況下,即存在被 Ghostcat 漏洞利用的風(fēng)險(xiǎn)。

注意 Tomcat AJP Connector 默認(rèn)配置下即為開(kāi)啟狀態(tài),且監(jiān)聽(tīng)在 0.0.0.0:8009 。

Ghostcat 漏洞該如何修復(fù)或緩解?

Tomcat 官方已發(fā)布 9.0.31、8.5.51 及 7.0.100 版本針對(duì)此漏洞進(jìn)行修復(fù)。

要正確修復(fù)此漏洞,首先需要確定您的服務(wù)器環(huán)境中是否有用到 Tomcat AJP 協(xié)議:

  • 如果未使用集群或反向代理,則基本上可以確定沒(méi)有用到 AJP;
  • 如果使用了集群或反向代理,則需要看集群或反代服務(wù)器是否與 Tomcat 服務(wù)器 AJP 進(jìn)行通信

1. 如果未使用 Tomcat AJP 協(xié)議:

如果確定未使用 Tomcat AJP 協(xié)議,則可以直接將 Tomcat 升級(jí)到 9.0.31、8.5.51 或 7.0.100 版本進(jìn)行漏洞修復(fù)。

而對(duì)于確定未使用 Tomcat AJP 協(xié)議,但無(wú)法進(jìn)行版本更新、或者是更老版本的用戶(hù),可以考慮直接關(guān)閉 AJP Connector,或?qū)⑵浔O(jiān)聽(tīng)地址改為僅監(jiān)聽(tīng)在本機(jī) localhost。

具體步驟:

(1)編輯 <CATALINA_BASE>/conf/server.xml,找到如下行(<CATALINA_BASE> 為 Tomcat 的工作目錄):<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

(2)將此行注釋掉(或直接刪掉此行):<!--<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />-->

(3)更改完畢后,重啟 Tomcat 即可。

除以上措施外,當(dāng)然也可以采用防火墻等辦法以阻止不可信任的來(lái)源訪(fǎng)問(wèn) Tomcat AJP Connector 端口。

2. 如果使用了 Tomcat AJP 協(xié)議:

如果確定服務(wù)器環(huán)境中使用到了 Tomcat AJP 協(xié)議,則建議將 Tomcat 升級(jí)到 9.0.31、8.5.51 或 7.0.100 版本,同時(shí)為 AJP Connector 配置 secret 來(lái)設(shè)置 AJP 協(xié)議認(rèn)證憑證。

例如(注意必須將 YOUR_TOMCAT_AJP_SECRET 更改為一個(gè)安全性高、無(wú)法被輕易猜解的值):<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" address="YOUR_TOMCAT_IP_ADDRESS" secret="YOUR_TOMCAT_AJP_SECRET" />

而對(duì)于無(wú)法進(jìn)行版本更新、或者是更老版本的用戶(hù),則建議為 AJP Connector 配置 requiredSecret 來(lái)設(shè)置 AJP 協(xié)議認(rèn)證憑證。例如(注意必須將 YOUR_TOMCAT_AJP_SECRET 更改為一個(gè)安全性高、無(wú)法被輕易猜解的值):

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" address="YOUR_TOMCAT_IP_ADDRESS" requiredSecret="YOUR_TOMCAT_AJP_SECRET" />

在線(xiàn)檢測(cè)工具

Chaitin Tech還提供了一個(gè)安全評(píng)估工具,可以幫助您發(fā)現(xiàn)容易受到針對(duì)網(wǎng)絡(luò)上Ghostcat攻擊的Tomcat服務(wù)器: https://www.chaitin.cn/zh/ghostcat

檢測(cè)受到Ghostcat攻擊的Tomcat服務(wù)器長(zhǎng)亭科技

此漏洞雖然只影響 Tomcat服務(wù)器,但是漏洞的危害實(shí)在是太嚴(yán)重了,所以WordPress大學(xué)也發(fā)文告知。安全無(wú)小事,如果您的服務(wù)器存在這個(gè)漏洞,請(qǐng)務(wù)必及時(shí)更新系統(tǒng)版本!!

聲明:本站所有文章,如無(wú)特殊說(shuō)明或標(biāo)注,均為本站原創(chuàng)發(fā)布。任何個(gè)人或組織,在未征得本站同意時(shí),禁止復(fù)制、盜用、采集、發(fā)布本站內(nèi)容到任何網(wǎng)站、書(shū)籍等各類(lèi)媒體平臺(tái)。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進(jìn)行處理。

給TA打賞
共{{data.count}}人
人已打賞
歡迎關(guān)注WordPress大學(xué)公眾號(hào) WPDAXUE
WordPress資訊

WordPress 5.4 對(duì)REST API 的更改

2020-3-1 9:11:33

WordPress資訊

WordPress 5.4 對(duì)古騰堡編輯器 Block Editor API 常規(guī)更新

2020-3-3 7:58:56

0 條回復(fù) A文章作者 M管理員
    暫無(wú)討論,說(shuō)說(shuō)你的看法吧
?
個(gè)人中心
購(gòu)物車(chē)
優(yōu)惠劵
今日簽到
有新私信 私信列表
搜索

南部县| 汤原县| 沛县| 永福县| 静乐县| 上栗县| 如东县| 新宁县| 金华市| 广河县| 湘西| 临潭县| 甘洛县| 铁力市| 永昌县| 名山县| 长沙市| 钟祥市| 万安县| 铁岭县| 拜城县| 天峨县| 柘荣县| 高阳县| 新竹市| 隆安县| 临泉县| 时尚| 开阳县| 星子县| 临潭县| 芜湖市| 乐都县| 焦作市| 襄汾县| 封丘县| 左权县| 遂宁市| 通州市| 阳江市| 赤城县|