国产精品chinese,色综合天天综合精品网国产在线,成午夜免费视频在线观看,清纯女学生被强行糟蹋小说

    <td id="ojr13"><tr id="ojr13"><label id="ojr13"></label></tr></td>
        • <source id="ojr13"></source>
            <td id="ojr13"><ins id="ojr13"><label id="ojr13"></label></ins></td>

            當(dāng)前位置:文章中心>技術(shù)教程
            公告通知 新聞快遞 技術(shù)教程 產(chǎn)品展示

            Apache Log4j2,RASP 防御優(yōu)勢及原理

            發(fā)布時間:2021-12-17 點擊數(shù):817

            Apache Log4j2 遠程代碼執(zhí)行漏洞已爆發(fā)一周,安全廠商提供各類防御方案和檢測工具,甲方團隊連夜應(yīng)急。

             

            影響持續(xù)至今,網(wǎng)上流傳的各種利用和繞過姿勢還在層出不窮,影響面持續(xù)擴大。所有安全人都開始反思一個問題:當(dāng)前的防御是否有效?針對這樣的 0day 再次發(fā)生,什么是有效的手段?

             

            阿里云安全團隊此次參與了諸多客戶應(yīng)急,并從云平臺自身防御總結(jié)經(jīng)驗,嘗試拋出一些觀點以供討論。

             

            首先,我們先來從技術(shù)層面分析一下為什么這次 Log4j2 這么難搞。


            01

            Apache Log4j2 漏洞們的特質(zhì)

            Cloud Native


            此次 Log4j2 漏洞有兩個很棘手的特質(zhì):

             

            1
             可以實現(xiàn)任意遠程代碼執(zhí)行


            “懂規(guī)矩”的漏洞,危險大的利用門檻高,利用門檻低的危害小,還算符合自然規(guī)律。這個漏洞并不按常規(guī)出牌,不但影響面廣,利用門檻低,危害還極大。三個因素重疊,到處被冠上“史詩級”的頭銜。

             

            Java 的應(yīng)用極其廣泛且生態(tài)龐大,而 Log4j 作為日志處理的基礎(chǔ)組件被幾乎所有應(yīng)用程序所使用。

             

            通過 JNDI 注入的手段,可以實現(xiàn)任意遠程代碼執(zhí)行,意味著攻擊者可以在存在漏洞的服務(wù)器上為所欲為。


            即使在內(nèi)網(wǎng)環(huán)境中 JNDI 外聯(lián)無法成功,攻擊者也可以結(jié)合 lookup 特性去讀取很多敏感信息(如數(shù)據(jù)庫密碼、JAVA 環(huán)境變量等),再通過 DNS 協(xié)議把敏感信息帶出內(nèi)網(wǎng)。


            2
             流量特征隱蔽


            某些場景下幾乎沒有可以跟正常請求區(qū)分開來的強特征。

             

            本次漏洞 PoC 構(gòu)造非常簡單,漏洞觸發(fā)的點廣泛而靈活,配合各種變量和協(xié)議的嵌套繞過方式,導(dǎo)致流量特征非常復(fù)雜和隱蔽。Log4j2 的 lookup 功能支持一些特殊的寫法來對字符做二次處理,如 ${lower:j}Ndi、${upper:JN}di、${aaa:vv:cc:-j}ndi 等寫法,都能打破字符串的連續(xù)性,造成利用時候的流量特征極為不明顯。

             

            這是對所有基于流量特征安全防護產(chǎn)品的巨大挑戰(zhàn)。

             

            當(dāng)流量特征不夠明顯時,基于流量特征的規(guī)則陷入尷尬:要么覆蓋不到,要么產(chǎn)生嚴重誤報。只能持續(xù)不斷補充規(guī)則,在繞過和被繞過中循環(huán)往復(fù)。這種防御手段,能在 0day 爆發(fā)初期非常有效的為漏洞修復(fù)爭取時間。但隨著各種利用手段的變化越來越多,則很難保證沒有被繞過或誤報。

             

            與 Log4j2 漏洞的某些“弱特征”甚至“0 特征”利用方式類似的場景,還有加密流量、內(nèi)存馬,這些手段都曾在大型攻防演練中大放異彩,難以檢測的原理是類似的。

             

            所以,有沒有一種技術(shù),可以無視漏洞利用手法在流量特征上的各種變化或隱藏,防御的更天然,甚至不依賴規(guī)則更新就可以防御這類 0day?


            02

            RASP 在此次事件中重回視野

            Cloud Native


            RASP(Runtime Application Self-Protection),運行時應(yīng)用自我防護,安全行業(yè)其實對其并不陌生,卻因為傳統(tǒng)印象而采納不多。

             

            這類技術(shù)的優(yōu)勢在于,以疫情類比,傳統(tǒng)的邊界防御類產(chǎn)品,類似口罩/防護服,而 RASP 則類似疫苗,會將自己注入到應(yīng)用當(dāng)中,伴隨應(yīng)用一起運行,通過 hook 關(guān)鍵函數(shù)實時檢測應(yīng)用執(zhí)行的高危行為。

            RASP

            03

            RASP 是哪一類 0day 的天敵

            Cloud Native


            不同于基于流量特征的檢測,RASP 核心關(guān)注應(yīng)用行為,而非流量本身。

             

            當(dāng) RASP 發(fā)現(xiàn)一個應(yīng)用,做了它正常不應(yīng)該做的事情時,大概率意味著當(dāng)前應(yīng)用已經(jīng)被攻擊者利用漏洞攻陷并做了一些高危操作(比如命令執(zhí)行、文件讀取、文件上傳、SSRF 等)。

             

            其第一個優(yōu)勢是:凡是被 RASP 防御的行為,都已經(jīng)是真正可以被成功利用的攻擊行為。

             

            而應(yīng)用的行為類型,相比于變幻無窮近乎無限的流量特征來說,往往是可以窮舉的。從應(yīng)用行為異常的角度去檢測,范圍可以大幅收斂到有限的類型,這是RASP可以無視流量特征并且不依賴規(guī)則更新就可以防御幾乎全部0day(包括加密流量和內(nèi)存馬)的根本原因。

            RASP


            0day 和一些弱特征漏洞利用方式之所以難以防御的原因,上文已經(jīng)提及。但不管流量特征如何變化,漏洞利用的本質(zhì):還是要回歸到讓應(yīng)用來做一些不安全的動作上——也就是應(yīng)用行為或者企圖。

             

            以此次漏洞來看,RASP 并不關(guān)注請求中的流量是否包含了惡意的 payload,而是去關(guān)注 Log4j2 究竟使用 JNDI 功能去做了什么。如果進行正常的 JNDI 查詢,就沒有問題;但如果企圖使用 JNDI 功能進行命令執(zhí)行,就是一個顯而易見的危險行為。

             

            RASP 正是在這個階段發(fā)揮了極其重要的作用:在應(yīng)用犯錯之前將其“懸崖勒馬”。

             

            從這個角度上還可以引申出 RASP 的第二個優(yōu)勢:誤報極低。

             

            比如:如果應(yīng)用壓根沒有使用 Log4j2,基于 payload 中的惡意特征上報攻擊就意味著誤報,一定程度上消耗安全人員的精力。

             

            而由于 RASP 運行在應(yīng)用內(nèi)部,可以明確知道來自流量層的 payload 是否成功進入了 Log4j2 的危險函數(shù),所以不會存在“無效告警”。

             

            近些年來,從 weblogic 到 shiro、dubbo 再到今天的 Log4j2,由第三方組件導(dǎo)致的 0day 不斷的大規(guī)模爆發(fā)。

             

            因為這類組件的代碼并不由使用它的應(yīng)用的開發(fā)們維護,一旦漏洞爆發(fā),安全人員第一時間首先需要投入大量的精力去排查哪些應(yīng)用在使用存在漏洞的組件,這并不是一個容易的事情。特別是對應(yīng)用眾多、迭代快速的企業(yè)來說,自己也說不清楚哪些應(yīng)用、在使用哪些組件的、哪些版本是非常正常的事情。

             

            這里引出了 RASP 的第三個優(yōu)勢:第三方組件自查。

             

            當(dāng)一個 0day 出現(xiàn)時,可以第一時間排查到受影響組件的路徑,如下圖所示:


            阿里云RASP定位的Log4j組件路徑

            (通過阿里云RASP定位的Log4j組件路徑)


            對于歷史上已經(jīng)爆出過 CVE 漏洞的組件,RASP 可以自動檢測并關(guān)聯(lián)其對應(yīng)的 CVE 漏洞編號、漏洞等級等信息,方便安全和開發(fā)人員及時修復(fù)。


            04

            云原生 RASP,架構(gòu)優(yōu)勢加速落地

            Cloud Native


            2014 年,Gartner 就將 RASP 列為應(yīng)用安全的關(guān)鍵趨勢,但實際上 RASP 在生產(chǎn)環(huán)境中大規(guī)模落地一直比較緩慢,目前也只有少數(shù)頭部的互聯(lián)網(wǎng)公司做到了。究其原因,最大的阻礙在于 RASP 技術(shù)對應(yīng)用自身的入侵性,開發(fā)人員會非常擔(dān)憂產(chǎn)生性能、穩(wěn)定性、兼容性下降等問題。

             

            阿里巴巴集團從 2015 年開始部署自研的 RASP 產(chǎn)品,多年實踐已完成在生產(chǎn)網(wǎng)的大規(guī)模部署,并且經(jīng)歷了生產(chǎn)網(wǎng)超大流量業(yè)務(wù)的實戰(zhàn)檢驗,在性能、穩(wěn)定性和安全性(自我保護)控制方面實現(xiàn)最佳表現(xiàn)。不得不說,這其中的確需要大量時間來沉淀經(jīng)驗和教訓(xùn),不斷調(diào)優(yōu),這也是甲方安全團隊自建 RASP 最大的難點。

             

            阿里云安全團隊將 RASP 最佳實踐嘗試輸出,去年推出更通用、更適合用戶場景的 RASP 版本,并在多個金融、教育用戶的生產(chǎn)網(wǎng)中部署和應(yīng)用。今年,打通云架構(gòu)優(yōu)勢,實現(xiàn)云原生 ARMS 產(chǎn)品應(yīng)用一鍵接入 RASP 的絲滑體驗(開啟路徑:阿里云 ARMS-應(yīng)用安全菜單),極大降低云上用戶使用 RASP 防御能力的門檻。

             

            近期事件接入 RASP 的用戶中,阿里云安全團隊觀測到非常兇猛的 Log4j2 漏洞利用和危險行為。以某金融用戶為例,接入 2 天,RASP 檢測并攔截了涉及 8 個 Java 應(yīng)用的 184 次真實攻擊,其中包含 43 次命令執(zhí)行和 141 次 DNS 漏洞探測。如果缺少 RASP 的防御一環(huán)阻攔,這些是極大可能真實執(zhí)行成功的攻擊。

             

            當(dāng)前版本免費公測,應(yīng)急的安全同志們可以接入 RASP 再從容升級。如果需保護應(yīng)用暫時沒有上云,也可以聯(lián)系我們部署線下版 RASP。


            PS:因漏洞管理規(guī)定,文中圖片漏洞細節(jié)通過馬賽克做了模糊處理,敬請諒解