突發(fā)!Log4j 爆“核彈級(jí)”漏洞
參考:開源中國、InfoQ等
昨晚,對(duì)很多程序員來說可能是一個(gè)不眠之夜。12 月 10 日凌晨,Apache 開源項(xiàng)目 Log4j 的遠(yuǎn)程代碼執(zhí)行漏洞細(xì)節(jié)被公開,由于 Log4j 的廣泛使用,該漏洞一旦被攻擊者利用會(huì)造成嚴(yán)重危害。
據(jù)悉,Apache Log4j 2.x <= 2.14.1?版本均回會(huì)受到影響。
漏洞描述
騰訊安全注意到,一個(gè)Apache Log4j2反序列化遠(yuǎn)程代碼執(zhí)行漏洞細(xì)節(jié)已被公開,Log4j-2中存在JNDI注入漏洞,當(dāng)程序?qū)⒂脩糨斎氲臄?shù)據(jù)進(jìn)行日志記錄時(shí),即可觸發(fā)此漏洞,成功利用此漏洞可以在目標(biāo)服務(wù)器上執(zhí)行任意代碼。
Apache Log4j2是一個(gè)基于Java的日志記錄工具。該工具重寫了Log4j框架,并且引入了大量豐富的特性。該日志框架被大量用于業(yè)務(wù)系統(tǒng)開發(fā),用來記錄日志信息。大多數(shù)情況下,開發(fā)者可能會(huì)將用戶輸入導(dǎo)致的錯(cuò)誤信息寫入日志中。
因該組件使用極為廣泛,利用門檻很低,危害極大,騰訊安全專家建議所有用戶盡快升級(jí)到安全版本。
已知受影響應(yīng)用及組件:
Apache Solr
Apache Flink
Apache Druid
srping-boot-strater-log4j2
此次漏洞的出現(xiàn),正是由用于 Log4j 2 提供的 lookup 功能造成的,該功能允許開發(fā)者通過一些協(xié)議去讀取相應(yīng)環(huán)境中的配置。但在實(shí)現(xiàn)的過程中,并未對(duì)輸入進(jìn)行嚴(yán)格的判斷,從而造成漏洞的發(fā)生?!拔⒉皆诰€研究響應(yīng)中心”做了漏洞復(fù)現(xiàn):

簡單來說,就是在打印日志時(shí),如果發(fā)現(xiàn)日志內(nèi)容中包含關(guān)鍵詞 ${,那么這個(gè)里面包含的內(nèi)容會(huì)當(dāng)做變量來進(jìn)行替換,導(dǎo)致攻擊者可以任意執(zhí)行命令。詳細(xì)漏洞披露可查看:https://issues.apache.org/jira/projects/LOG4J2/issues/LOG4J2-3201?filter=allissues
快速檢測(cè)及修復(fù)方案
針對(duì)此次漏洞,“微步在線研究響應(yīng)中心”也給出了一些應(yīng)急方案。
1. 緊急緩解措施
(1)修改 jvm 參數(shù) -Dlog4j2.formatMsgNoLookups=true
(2)修改配置 log4j2.formatMsgNoLookups=True
(3)將系統(tǒng)環(huán)境變量 FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS 設(shè)置為 true
2. 檢測(cè)方案
(1)由于攻擊者在攻擊過程中可能使用 DNSLog 進(jìn)行漏洞探測(cè),建議企業(yè)可以通過流量監(jiān)測(cè)設(shè)備監(jiān)控是否有相關(guān) DNSLog 域名的請(qǐng)求,微步在線的 OneDNS 也已經(jīng)識(shí)別主流 DNSLog 域名并支持?jǐn)r截。
(2)根據(jù)目前微步在線對(duì)于此類漏洞的研究積累,我們建議企業(yè)可以通過監(jiān)測(cè)相關(guān)流量或者日志中是否存在“jndi:ldap://”、“jndi:rmi”等字符來發(fā)現(xiàn)可能的攻擊行為。
?-END-?
?關(guān)注公眾號(hào):Java后端編程,回復(fù)下面關(guān)鍵字?
要Java學(xué)習(xí)完整路線,回復(fù)??路線?
缺Java入門視頻,回復(fù):?視頻?
要Java面試經(jīng)驗(yàn),回復(fù)??面試?
缺Java項(xiàng)目,回復(fù):?項(xiàng)目?
進(jìn)Java粉絲群:?加群?
PS:如果覺得我的分享不錯(cuò),歡迎大家隨手點(diǎn)贊、在看。
(完) 加我"微信"?獲取一份 最新Java面試題資料 請(qǐng)備注:666,不然不通過~
最近好文
2、本機(jī)號(hào)碼一鍵登錄原理與應(yīng)用
最近面試BAT,整理一份面試資料《Java面試BAT通關(guān)手冊(cè)》,覆蓋了Java核心技術(shù)、JVM、Java并發(fā)、SSM、微服務(wù)、數(shù)據(jù)庫、數(shù)據(jù)結(jié)構(gòu)等等。 獲取方式:關(guān)注公眾號(hào)并回復(fù)?java?領(lǐng)取,更多內(nèi)容陸續(xù)奉上。 明天見(??ω??)??
