【jetty】
0x01
Elipse Jetty是一個開源的servlet容器,它為基于Java的Web容器提供運行環(huán)境。
0x02
0x03漏洞復(fù)測
CVE-2021-28164
漏洞原理
Jetty 9.4.37引入對RFC3986的新實現(xiàn),而URL編碼的
.字符被排除在URI規(guī)范之外,這個行為在RFC中是正確的,但在servlet的實現(xiàn)中導(dǎo)致攻擊者可以通過%2e來繞過限制,下載WEB-INF目錄下的任意文件,導(dǎo)致敏感信息泄露。該漏洞在9.4.39中修復(fù)。
實際測試中發(fā)現(xiàn),是能同時繞過限制來下載WEB-INF和META-INF兩個目錄下的任意文件的(前提是存在該目錄)。
影響版本
- 9.4.37.v20210219
- 9.4.38.v20210224
Jetty 9.4.37引入對RFC3986的新實現(xiàn),而URL編碼的.字符被排除在URI規(guī)范之外,這個行為在RFC中是正確的,但在servlet的實現(xiàn)中導(dǎo)致攻擊者可以通過%2e來繞過限制,下載WEB-INF目錄下的任意文件,導(dǎo)致敏感信息泄露。該漏洞在9.4.39中修復(fù)。
http://123.58.236.76:63126/%2e/WEB-INF/web.xml
CVE-2021-28169
漏洞原理
Jetty Servlets中的ConcatServlet、WelcomeFilter類存在多重解碼問題,當(dāng)應(yīng)用到這兩個類之一時,攻擊者就可以利用雙重URL編碼繞過限制來訪問WEB-INF目錄下的敏感文件,造成敏感信息泄露。
影響版本
- 9.x系列 <= 9.4.40
- 10.x系列 <= 10.0.2
- 11.x系列 <= 11.0.2
http://123.58.236.76:63126/static?/%2557EB-INF/web.xml
CVE-2021-34429
漏洞原理
Jetty 9.4.37引入對RFC3986的新實現(xiàn),而URL編碼的.字符被排除在URI規(guī)范之外,這個行為在RFC中是正確的,但在servlet的實現(xiàn)中導(dǎo)致攻擊者可以通過對.字符URL編碼來繞過限制,下載WEB-INF目錄下的任意文件(CVE-2021-28164)。上述漏洞在9.4.39中已經(jīng)修復(fù),但修復(fù)的并不徹底,攻擊者仍然可以通過構(gòu)造特殊的HTTP請求,繞過補丁去訪問 WEB-INF 目錄下的受保護(hù)資源。
http://123.58.236.76:63126/%u002e/WEB-INF/web.xml

浙公網(wǎng)安備 33010602011771號