昨天凌晨發了篇關於Spring大漏洞的推文,白天就有不少小夥伴問文章怎麼刪了。
主要是因為收到朋友提醒說可能發這個會違規(原因可參考:阿里雲因發現Log4j2核彈級漏洞但未及時上報,被工信部處罰),所以就刪除了。
經過一天的時間,似乎這個事情變得有點看不懂了。所以下面聊聊這個網傳的Spring大漏洞吧。
這個漏洞話題的起點源自3月29日晚,DD在群裡(點選加群)看到網友分享了幾位安全大佬爆料Java生態出現了超級大漏洞。
但兩位大佬都沒有透露這次漏洞更詳細的資訊。只有網友問了一句:“有log4j那麼大嗎?”。雲舒大佬的回覆是:“更大”。
之後,又有安全大佬sunwear(就之前那個因為上海銀行工作人員服務態度差,而直接怒取500萬現金的大佬,具體什麼故事如果你不知道可以百度一下,這裡DD就不細說了)給了一些更細節的資訊:
所以漏洞影響範圍,可以縮小到使用Java 9+和Spring的專案上了。
此時就有網友開始結合之前log4j漏洞的資訊開始調侃了:
其實到這裡,不少小夥們其實已經鬆了一口氣了,因為國內大部分地方還是在用Java 8。這點DD深有體會,因為每次釋出Java新版本資訊的時候,一直都有小夥伴反饋,不會升級,版本任你發,我用Java 8。
反正也睡不著,DD想著繼續搜搜相關資訊吧。然後DD發現了Spring官方最近有這樣一個提交:
從提交資訊來看,是解決某個RCE漏洞問題的。所以,大概很可能就是這個了吧?感興趣的小夥伴,可以通過下面的連結檢視具體資訊。
https://github.com/spring-pro...
之後有看到一些專業的網路安全類渠道釋出了一下修復方法。但沒多久,不少號的內容被和諧了,不清楚具體原因是什麼。
再之後就是3月30日白天了,接著各種營銷號開始炒作這個問題了,比較扯淡的有兩類:一類是張冠李戴,拿過去的一些漏洞說是這次的大漏洞,因為標題夠唬人,所以很多人關注了,然後也在群裡討論。比如又一些說是Spring Cloud Gateway的,其實都是3月1日就已經公佈的漏洞。也有一些說是最近那兩個的,但仔細看看,你會發現似乎搭不上邊,而且漏洞級別都不高。
還有一類是釣魚的,由於號稱漏洞很大,所以放了一些非正式的修復包,實際是惡意程式碼,來引誘大家使用。
所以這裡DD提醒大家一句,當碰到安全問題的時候,一定一定要去看官方資訊,而不是隨便搜一篇文章就開幹了。包括DD這邊分享出來的內容,一定也都會放出官方資訊的連線,供大家去核實與處理。
再回到這次網傳的漏洞資訊,其實從29日晚開始,大家就都在關注Spring官方的資訊。然而白天等到的是這篇博文:
這裡指出的CVE-2022-22963
與網傳的漏洞資訊大相徑庭,並且級別也並不像之前大佬稱的堪比log4j的漏洞。
所以,再去追溯了一下之前提到的那個關於RCE的PR。可以看到這裡的內容有了一些更新:
有網友問:什麼時候report CVE?
@ledoyen 回覆:這個本身並不是一個CVE。使用此工具處理使用者輸入資料可能會導致CVE,但在內部像CacheResultInterceptor
那樣使用它的時候,不會導致CVE。
@sbrannen 最後也給出了結論:這不是Spring核心框架中的CVE。此更改的目的是通知以前使用SerializationUtils反序列化的人,對來自不可信來源物件進行反序列化時候是危險的。而Spring核心框架不使用SerializationUtils來反序列化來自不可信來源的物件。如果您認為您發現了安全問題,請通過專門的頁面來報告:https://spring.io/security-po...。
所以,這個看似解決網傳大漏洞的PR並不是一回事?回頭再去看了一下爆料該漏洞的雲舒大佬的微博,之前發的那條已經不存在了。那麼這個所謂的大漏洞去哪裡了呢?DD也猜不出來了,也不瞎猜了,畢竟安全漏洞是個很嚴肅的事。
總結
最後,因為這個漏洞的問題,群裡(點選加群)一直有小夥伴問起,所以,按目前DD的認識,給大家總結一些注意點:
- Spring官方報告出來的漏洞沒那麼嚴重,根據報告給的升級版本就可以解決。
- Spring官方報告出來的漏洞可能與網傳的大漏洞無關
- 現存的一些營銷號文章中存在風險下載物,大家要注意
- 保持關注,如果有進一步訊息,DD這邊會繼續給大家同步和解析
如果您正在學習Spring全家桶或關注Spring相關的前沿資訊,歡迎關注我的公眾號程式猿DD,或者我的個人部落格,長期分享關於Spring一切的乾貨內容。
歡迎關注我的公眾號:程式猿DD。第一時間瞭解前沿行業訊息、分享深度技術乾貨、獲取優質學習資源