成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

Tomcat-Ajp協(xié)議漏洞分析-創(chuàng)新互聯(lián)

這篇文章主要講解了“Tomcat-Ajp協(xié)議漏洞分析”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Tomcat-Ajp協(xié)議漏洞分析”吧!

東鄉(xiāng)族網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)公司!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站等網(wǎng)站項目制作,到程序開發(fā),運營維護。創(chuàng)新互聯(lián)公司自2013年起到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)公司。

漏洞背景

安全公告編號:CNTA-2020-0004

2020年02月20日, 360CERT 監(jiān)測發(fā)現(xiàn) 國家信息安全漏洞共享平臺(CNVD) 收錄了 CNVD-2020-10487 Apache Tomcat文件包含漏洞。

CNVD-2020-10487/CVE-2020-1938是文件包含漏洞,xxx者可利用該高危漏洞讀取或包含 Tomcat 上所有 webapp 目錄下的任意文件,如:webapp 配置文件或源代碼等。

受影響的版本包括:Tomcat 6,Tomcat 7的7.0.100以下版本,Tomcat 8的8.5.51以下版本,Tomcat 9的9.0.31以下版本。

CNVD 對該漏洞的綜合評級為“高危”。

影響版本

1、Apache Tomcat 9.x < 9.0.31
2、Apache Tomcat 8.x < 8.5.51
3、Apache Tomcat 7.x < 7.0.100
4、Apache Tomcat 6.x

漏洞分析

3.1 AJP Connector

Apache Tomcat服務(wù)器通過Connector連接器組件與客戶程序建立連接,Connector表示接收請求并返回響應(yīng)的端點。即Connector組件負責(zé)接收客戶的請求,以及把Tomcat服務(wù)器的響應(yīng)結(jié)果發(fā)送給客戶。

在Apache Tomcat服務(wù)器中我們平時用的最多的8080端口,就是所謂的Http Connector,使用Http(HTTP/1.1)協(xié)議

在conf/server.xml文件里,它對應(yīng)的配置為:

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

而 AJP Connector,它使用的是 AJP 協(xié)議(Apache Jserv Protocol)是定向包協(xié)議。因為性能原因,使用二進制格式來傳輸可讀性文本,它能降低 HTTP 請求的處理成本,因此主要在需要集群、反向代理的場景被使用。

Ajp協(xié)議對應(yīng)的配置為:

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

Tomcat服務(wù)器默認對外網(wǎng)開啟該端口 Web客戶訪問Tomcat服務(wù)器的兩種方式:

Tomcat-Ajp協(xié)議漏洞分析

3.2 代碼分析

漏洞產(chǎn)生的主要位置在處理Ajp請求內(nèi)容的地方

org.apache.coyote.ajp.AbstractAjpProcessor.java#prepareRequest()

Tomcat-Ajp協(xié)議漏洞分析

這里首先判斷SCAREQ_ATTRIBUTE,意思是如果使用的Ajp屬性并不在上述的列表中,那么就進入這個條件

Tomcat-Ajp協(xié)議漏洞分析

SC_A_REQ_REMOTE_PORT對應(yīng)的是AJP_REMOTE_PORT,這里指的是對遠程端口的轉(zhuǎn)發(fā),Ajp13并沒有轉(zhuǎn)發(fā)遠程端口,但是接受轉(zhuǎn)發(fā)的數(shù)據(jù)作為遠程端口。

Tomcat-Ajp協(xié)議漏洞分析

于是這里我們可以進行對Ajp設(shè)置特定的屬性,封裝為request對象的Attribute屬性 比如以下三個屬性可以被設(shè)置

javax.servlet.include.request_urijavax.servlet.include.path_infojavax.servlet.include.servlet_path

3.3 任意文件讀取

Tomcat-Ajp協(xié)議漏洞分析

當(dāng)請求被分發(fā)到org.apache.catalina.servlets.DefaultServlet#serveResource()方法

Tomcat-Ajp協(xié)議漏洞分析

調(diào)用getRelativePath方法,需要獲取到request_uri不為null,然后從request對象中獲取并設(shè)置pathInfo屬性值和servletPath屬性值

Tomcat-Ajp協(xié)議漏洞分析

接著往下看到getResource方法時,會把path作為參數(shù)傳入,獲取到文件的源碼

Tomcat-Ajp協(xié)議漏洞分析

漏洞演示: 讀取到/WEB-INF/web.xml文件

Tomcat-Ajp協(xié)議漏洞分析

3.4 命令執(zhí)行

當(dāng)在處理 jsp 請求的uri時,會調(diào)用 org.apache.jasper.servlet.JspServlet#service()

Tomcat-Ajp協(xié)議漏洞分析

最后會將pathinfo交給serviceJspFile處理,以jsp解析該文件,所以當(dāng)我們可以控制服務(wù)器上的jsp文件的時候,比如存在jsp的文件上傳,這時,就能夠造成rce

Tomcat-Ajp協(xié)議漏洞分析

漏洞演示: 造成rce

Tomcat-Ajp協(xié)議漏洞分析

修復(fù)建議

Apache Tomcat 6 已經(jīng)停止維護,請升級到最新受支持的 Tomcat 版本以免遭受漏洞影響,請更新到如下Tomcat 版本:

Tomcat-Ajp協(xié)議漏洞分析

感謝各位的閱讀,以上就是“Tomcat-Ajp協(xié)議漏洞分析”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對Tomcat-Ajp協(xié)議漏洞分析這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

當(dāng)前文章:Tomcat-Ajp協(xié)議漏洞分析-創(chuàng)新互聯(lián)
網(wǎng)站URL:http://jinyejixie.com/article0/decdoo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計、建站公司、外貿(mào)建站品牌網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計服務(wù)器托管

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司
山阴县| 琼海市| 合山市| 泊头市| 铜川市| 神池县| 柏乡县| 九龙城区| 泌阳县| 咸宁市| 南阳市| 南阳市| 登封市| 石狮市| 嘉祥县| 宜春市| 扶余县| 探索| 河源市| 进贤县| 黎平县| 凌海市| 余姚市| 南丹县| 包头市| 牟定县| 通辽市| 克山县| 上饶市| 和平县| 康乐县| 宜兴市| 乐陵市| 东兰县| 应城市| 兴安县| 华容县| 嫩江县| 女性| 固原市| 扶绥县|