在线免费观看日本-在线免费观看你懂的-在线免费观看韩国a视频-在线免费观看h视频-在线免费观看h-在线免费观看a视频

免費(fèi)熱線:400-0653-858 如何購(gòu)買

首頁(yè) > 關(guān)于我們 > 新聞動(dòng)態(tài) > Tomcat 爆出高危漏洞及修復(fù)

Tomcat 爆出高危漏洞及修復(fù)
2020-03-01

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


Tomcat是由Apache軟件基金會(huì)屬下Jakarta項(xiàng)目開發(fā)的Servlet容器,按照Sun Microsystems提供的技術(shù)規(guī)范,實(shí)現(xiàn)了對(duì)Servlet和JavaServer Page(JSP)的支持。由于Tomcat本身也內(nèi)含了HTTP服務(wù)器,因此也可以視作單獨(dú)的Web服務(wù)器。


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


1.2 影響版本

Apache Tomcat 9.x < 9.0.31

Apache Tomcat 8.x < 8.5.51

Apache Tomcat 7.x < 7.0.100

Apache Tomcat 6.x


1.3 漏洞分析

1.3.1 AJP Connector

Apache Tomcat服務(wù)器通過Connector連接器組件與客戶程序建立連接,Connector表示接收請(qǐng)求并返回響應(yīng)的端點(diǎn)。即Connector組件負(fù)責(zé)接收客戶的請(qǐng)求,以及把Tomcat服務(wù)器的響應(yīng)結(jié)果發(fā)送給客戶。在Apache Tomcat服務(wù)器中我們平時(shí)用的最多的8080端口,就是所謂的Http Connector,使用Http(HTTP/1.1)協(xié)議


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


 <Connector port="8080" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="8443" />

1

2

3

而 AJP Connector,它使用的是 AJP 協(xié)議(Apache Jserv Protocol)是定向包協(xié)議。因?yàn)樾阅茉颍褂枚M(jìn)制格式來傳輸可讀性文本,它能降低 HTTP 請(qǐng)求的處理成本,因此主要在需要集群、反向代理的場(chǎng)景被使用。


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


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

1

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


1.3.2 代碼分析

漏洞產(chǎn)生的主要位置在處理Ajp請(qǐng)求內(nèi)容的地方org.apache.coyote.ajp.AbstractAjpProcessor.java#prepareRequest()


這里首先判斷SC_A_REQ_ATTRIBUTE,意思是如果使用的Ajp屬性并不在上述的列表中,那么就進(jìn)入這個(gè)條件。


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


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


javax.servlet.include.request_uri

javax.servlet.include.path_info

javax.servlet.include.servlet_path

1

2

3

1.3.3 任意文件讀取


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


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

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


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


1.3.4 命令執(zhí)行

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


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


漏洞演示:造成rce



1.4 修復(fù)建議

更新到如下Tomcat 版本:

Tomcat 分支 版本號(hào)

Tomcat 7 7.0.0100

Tomcat 8 8.5.51

Tomcat 9 9.0.31

Apache Tomcat 6 已經(jīng)停止維護(hù),請(qǐng)升級(jí)到最新受支持的 Tomcat 版本以免遭受漏洞影響。


請(qǐng)廣大用戶時(shí)刻關(guān)注 Apache Tomcat? – Welcome! 獲取最新的 Tomcat Release版本,以及 apache/tomcat: Apache Tomcat 獲取最新的 git 版本。

————————————————

版權(quán)聲明:本文為CSDN博主「祁娥安」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請(qǐng)附上原文出處鏈接及本聲明。

原文鏈接:https://blog.csdn.net/weixin_45794138/article/details/104844692


主站蜘蛛池模板: 久久夜色精品国产噜噜av| 精品无码一区二区三区爱欲| 国产亚洲精品久久久ai换| 超清无码一区二区三区| 欧美群交射精内射颜射潮喷| 国产亚洲人成网站天堂岛| 国产人妻一区二区三区久| 精品久久久噜噜噜久久久| 欧美成人天天综合在线| 国产夜夜爽| 人妻无码一区二区三区免费| 人人草在线| 国产成人av无码精品| 四虎国产精品免费入口| 中文字幕精品久久久久人妻红杏ⅰ| аⅴ资源天堂8在线| 免费无码又爽又黄又刺激网站| www.好吊色| 撕开奶罩揉吮奶头视频| 日本免费黄色网| 国产精品无码av一区二区三区| 性欧美黑人巨大videos| 午夜福利视频| 免费看黄视频的网站| 久久青青草原亚洲av无码麻豆| 无码av免费一区二区三区四区| 性色av无码一区二区三区人妻 | 国产二区交换配乱婬| 失禁大喷潮在线播放| 国内精品久久久久伊人av| 香蕉成人国产精品免费看网站| aaaaa级少妇高潮大片免费看| 岛国av动作片在线观看| 色噜噜狠狠成人中文小说| 亚洲日韩av无码中文字幕美国| 天堂…在线最新版资源| 狠狠躁夜夜躁人人爽天天miya| 欧洲人妻丰满av无码久久不卡| 色天天综合色天天碰| 亚洲人成在线观看| 欧美丰满熟妇乱xxxxx图片|