ANA的DB故障背后是“危险的常态”,是否应该应用所有补丁?
2023年4月3日,全日本空輸(ANA)發生了系統故障,導致50多班次航班取消,對旅客造成了巨大的影響。據稱,故障是由於數據庫出現了“意外錯誤”並進入了“凍結”狀態所致。為什麼沒有應用補丁呢?
AWS

全日空(ANA)在2023年4月3日發生的系統故障對使用客戶產生了重大影響,包括50多班次航班取消等。根據ANA在4月7日舉行的新聞發布會上的說法,數據庫出現了“意外錯誤”,導致“凍結”狀態。
錯誤的發生是由數據庫漏洞引起的,而修復該漏洞的補丁(修復程序)已經提供。據日經CrossTech的文章稱,“該公司認為在系統配置上即使未應用補丁也沒有問題,因此未應用補丁。”
現在讓我們考慮一下為什麼沒有應用補丁。
是否可以通過運營來避免
全日空的數據庫存在的漏洞是關於並行查詢的。並行查詢是一種將SQL並行執行以提高查詢處理性能的功能。該公司的資料說明了“通過同時並行執行多個數據提取處理而導致數據庫偶發錯誤”的故障狀況。

據稱,為了修復這個偶發錯誤,補丁已於2018年提供。這次,進行從數據庫中提取數據的是市場部門使用的“預訂管理支援系統”,據全日空的資料顯示,該系統於2018年導入。換句話說,從一開始就知道存在漏洞,但在近5年的“危險狀態”下運行,而沒有應用補丁。
補丁有不同的種類,例如根據內容和提供時間,市場佔有率高的Oracle Database舉例來說,有“個別補丁”、“集成補丁(發布更新補丁)”和“月度推薦補丁”。個別補丁是為了糾正單個缺陷,而每季度提供的集成補丁則包括糾正安全和重要問題等。
用戶是否已經應用了所有這些補丁?一位熟悉數據庫運營的專家表示:“如果缺陷不是致命的,則可能存在運營回避策略,例如參數更改或禁用特定功能,或者存在個別補丁。在這種情況下,優先順序是運營回避>應用個別補丁>應用集成補丁。”
全日空在某種程度上可能已經運用回避策略來避免漏洞對其造成直接損害。這次,異常情況加劇,無法避免。