本文介紹了如何緩解ApacheLog4j反序列化RCE(CVE-2019-17571)的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!
問題描述
我已將我的log4j-core依賴項升級到2.15.0,以防止任何潛在的Log4Shell攻擊。也就是說,我無法將slf4j-log4j12的間接log4j依賴從1.2.17升級,因為slf4j-log4j12的最新穩定版本仍然依賴于log4j 1.2.17。如果我沒有弄錯的話,這仍然使我的Web應用程序容易受到CVE-2019-17571的攻擊。因此,在閱讀有關可能的緩解策略的文章時,我看到了article,它建議:
阻止Log4j中的SocketServer類啟用的套接字端口
向公網開放
誰能向我解釋一下如何實現這一點,以及此解決方法是否足夠?
推薦答案
只有從其他服務器接收消息的服務器才容易受到CVE-2019-17571
的攻擊。基本上,觸發該漏洞的唯一方法是運行:
java -jar log4j.jar org.apache.log4j.net.SocketServer <port> <config.properties> <log/directory>
或在代碼中執行相同的操作。因此,大多數Log4j 1.2用戶不會受到攻擊。
不過,在您的情況下,您只需將slf4j-log4j12
綁定替換為其等價物Log4j 2.x(log4j-slf4j-impl
),即可完全刪除Log4j 1.2。
編輯:不過,如果您想確保沒有人會如上所述地使用庫,您可以刪除該類。還考慮到CVE-2021-4104
此金額為:
zip -d log4j.jar org/apache/log4j/net/SocketServer.class
zip -d log4j.jar org/apache/log4j/net/JMSAppender.class
這篇關于如何緩解ApacheLog4j反序列化RCE(CVE-2019-17571)的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,