科技

macOS 藏著 49.7天「定時炸彈」!Apple 至今未修復

編輯部 14小時前 1 瀏覽
macOS 藏著 49.7天「定時炸彈」!Apple 至今未修復
加入為 Google 偏好來源

將 Yahoo 設為首選來源,在 Google 上查看更多我們的精彩報導

文章來源:Qooah.com

近期 Photon 團隊透露,macOS 的內核存在一個嚴重的整數溢位漏洞,在系統持續運行達到49天17小時2分47秒時,其 TCP/IP 網絡協議棧會出現徹底癱瘓。該問題在目前所有的 macOS 版本中存在。

該問題最早是在 Photon 用於監控 iMessage 服務的 Mac 裝置集群中發現,有部分機器會在無明顯徵兆的情況下拒絕所有新的網絡連接,但 ping 探測正常,已有連接不會斷開,這導致問題排查更加困難。

為解決網絡問題,運維人員只能通過最原始的重啓來恢復。但經過一段時間後發現,該問題會在 49.7天的運行時間後再次出現。

經過深入調查,Photon 團隊發現了問題的所在。macOS 內核中的 tcp_now 計時器以 32bit 整數來記錄系統啓動的毫秒數,所以最大值為 4,294,967,295(即2³²-1),剛好就是 49.7天。數值達到上限後會歸零或翻轉,如果系統沒有進行處理,系統就會出現崩潰的情況,從而導致網絡驅動程式認為時間順序錯誤,停止處理所有數據。

該問題與 1999年 Windows 98 的 49.7天藍屏事件一樣,都是屬於整數溢位問題。

其實 RFC 7323 標準已經對時間戳時鐘溢位時的處理方式作出規範,但是 Apple 的內核並未進行處理。

對於普通 MacBook 用戶,裝置會定期關機或者進行重啓,所以基本不會出現網絡崩潰的問題。但當下 Mac mini 會被用來進行養龍蝦等任務處理,裝置需要連續運行數月,所以就會穩定的觸發該問題。

目前問題的唯一解決方案便是定期重啓,Photon 團隊正在開發替代方案,但根源需要 Apple 進行內核層面的推送更新。

新聞來源: 原始來源

分享本文
請登入後發表評論
立即登入

尚無評論,成為第一個發言的人吧!

首頁 新聞 商家 活動 UTV AI 聊天