谷歌開源安全團隊軟體工程師呼籲正確對待Linux內核安全問題
儘管即將迎來 30 周年,基於開源的 Linux,仍是計算機歷史上最大的協作開發專案。 圍繞Linux的龐大社區,已讓它能夠順利完成許多驚人的工作。 與此同時,開發者們似乎缺乏對安全缺陷的注意力。 谷歌開源安全團隊軟體工程師 Kees Cook 在一篇博客文章中指出:代碼的健壯性與安全性之間有很強的聯繫。 鑒於 Bug 已經很難查找,安全缺陷就更難顯露出來。
谷歌呼籲正確面對Linux內核的安全性問題(來自:Google Security Blog)
對於開發者來說,顯然不該止步於此。 當缺陷確實顯現時,對其展開有效處理也是很有必要的。
通過先行一步,不僅能夠一次修補一個bug,還可阻止因其引發的不良影響。 使用 C 語言編寫的 Linux,顯然也將長期面臨這方面的問題。
Kees Cook 指出,Linux 必須採取更加主動的安全措施,以保護自身免受相關風險的影響。
舉個例子,汽車之所以強制配備安全帶,並不是我們有意要撞車,而是因為危險隨時可能降臨。
即使每個人都希望在他們的計算機、行動裝置、或交通工具上運行一個安全的內核,也不是每個人都有能力做些什麼。
上游內核開發人員能夠修復 bug,但無法控制下游供應商選擇將哪些內容整合到他們的產品之中。
最終使用者可以選擇他們需要的產品,但通常也無法控制修復了哪些bug、或使用了哪些內核(有時內核本身也是個問題)。
綜上所述,最佳的辦法,就是讓供應商對其產品的內核安全負起責任來。
儘管許多供應商都在受到惡意軟體、殭屍網路、以及針對有缺陷軟體的攻擊時選擇做一隻鴕鳥,但 Kees Cook 還是希望他們能支稜起來。
通常情況下,這些廠商會將自家設備視作一款物理產品,而不是需要定期更新的「混合服務」產品。
除了鼓勵廠商盡可能早地修復所有 Bug,谷歌安全團隊還希望讓更多工程師能參與到代碼審查、安全測試、工具鏈開發、以及基礎設施改進等工作中來。
根據他們最保守的估計,當前的百余名工程師,仍不足以充分支撐Linux內核及其工具鏈的相關開發工作。
但這種「上游優先」的產品內核開發與測試方法,其實已被證明相當有效。 比如在 Chrome OS 和 Android 的開發專案上,谷歌就已經落實了有一段時間了。