Redis 團隊近日正式發布了 8.6.2 版本。作為 8.6 系列的最新更新,本次釋出版並未引入大量新功能,而是將重點放在鞏固基礎架構的安全性與系統穩定性。對於高度依賴記憶體資料庫且重視資安合規的企業環境而言,此次更新包含了數個關鍵的記憶體管理與存取控制修復,值得維運與資安團隊密切關注。

CyberQ 也部署了 Redis 8.6.2 的實例,以下為 Redis 8.6.2 版本的核心更新:
安全性修復 (Security Fixes)
本次更新解決了一項關鍵的底層安全性問題,這對於防範潛在的系統剝削至關重要:
修復潛在的 UAF (Use-After-Free) 弱點 (#14824): 在 C 語言應用程式中,Use-After-Free 往往是可能導致不可預期行為甚至遠端執行程式碼的高風險弱點。開發團隊在這次更新中,針對模組字串(module strings)取消了回覆複製迴避(reply copy avoidance)的機制,徹底防堵了此潛在的記憶體安全性問題。
穩定性與系統當機 (Crash) 修復
針對系統在特定高負載或異常操作下可能發生的當機與資源耗損問題,8.6.2 進行了多項強化:
ACL 檢查當機防堵 (#14847): 過去在處理參數數量錯誤(wrong-arity)的指令並進行 ACL(存取控制串列)檢查時,可能會觸發系統當機。此修復有效降低了潛在的阻斷服務(DoS)風險,提升了權限控管機制的穩健度。
資料同步穩定性 (#14848): 解決了複本(Replicas)在執行完整同步(full synchronization)期間處理指令時,可能引發的當機問題,確保了高可用性架構下的資料抄寫更加可靠。
記憶體流失 (Memory Leaks) 修復 (#14855, #14831, #14817): 記憶體資源對於 Redis 的效能至關重要。本次更新清除了多處潛在的記憶體流失問題,確保長期執行下的伺服器資源不會被異常耗盡。
Streams 功能與內部指令完善
Streams 作為 Redis 處理時間序列與訊息佇列的重要資料結構,在本次更新中獲得了密集的錯誤修正,特別是針對冪等性(Idempotency, IDMP)的處理:
狀態還原強化 (#14794): 引入了全新的 XIDMPRECORD 內部指令與 AOFRW 機制,用於更精確地還原 Streams 的 IDMP 狀態。
元資料與過期機制修正
修復了 RDB 載入後,IDMP 的 cron 逾時機制無法正常運作的問題 (#14869)。
確保使用 IDMP/IDMPAUTO 執行 XADD 指令且命中既有 IID 時,能夠正確記錄元資料的變更 (#14858)。
一併清理了其他與 Streams IDMP 相關的周邊 Bug (#14897)。
指令驗證與模組 API 修正
嚴謹的參數驗證 (#14883): 針對 HSETEX 與 HGETEX 指令,新增了對 FIELDS 參數是否僅被指定一次的檢查,避免語法濫用造成的非預期結果。
模組配置 API (#14816): 修正了 setModuleEnumConfig() 在傳遞給模組回呼函式(callbacks)時,錯誤地包含前綴名稱的問題。
總結與升級建議
CyberQ 認為,Redis 8.6.2 是一次典型且高價值的維護性更新。從資安工程與系統維運的角度來看,UAF 弱點的修補、ACL 異常處理的強化,以及多項記憶體流失問題的解決,都讓這個版本成為 8.x 使用者的重要升級標的。
CyberQ 建議相關 DevOps 團隊在測試環境中驗證相容性後,盡快排程進行線上環境的更新。






