Security

獲取多個 Linux 發行版的變更日誌?

  • October 17, 2017

我正在嘗試建構一個可以獲取發行版、軟體包和版本號的服務,並使用該資訊來檢查該元組是否有活動的 CVE。

經過一番搜尋,我發現變更日誌可靠地引用了 CVE,因此我正在考慮解析 CVE id 的變更日誌並基於此進行報告。不幸的是,我們執行一個非常異構的架構,CentOS、Ubuntu 和 Debian 機器執行我們的軟體。

我知道每個盒子都可以自己獲取變更日誌,但這不可行,因為我們如何設置監控(我知道我知道,但相信我這個)。我有一個位於伺服器上的所有這些機器的包資訊的數據轉儲,並且這些數據會在這些盒子打電話回家時定期更新。

有沒有辦法讓一台機器可以為每個發行版獲取變更日誌?還是我需要一台 Ubuntu 機器來獲取 Ubuntu 變更日誌、一台 CentOS 機器來呼叫yum changelog等等?

謝謝!

由於您已經明確詢問過 CVE,您更可能想要做的不是手動解析更改日誌,而是使用現有工具集來檢查哪些 CVE 在哪些發行版中得到修復。

每個發行版都有一些系統來在一個中心位置跟踪安全問題。

對於 Ubuntu,這稱為ubuntu-cve-tracker. ubuntu cve tracking website就是一個很好的例子。您可以使用 bazaar 檢查整個跟踪器狀態的儲存庫:

$ bzr branch lp:ubuntu-cve-tracker
$ grep xenial_ ubuntu-cve-tracker/active/CVE-2017-9936
xenial_tiff: needed
xenial_tiff3: DNE

考慮調查 /scripts 目錄,並親自查看可以從那裡重用程式碼的方式。

**大膽的警告:不要簡單地自動訪問啟動板或 Ubuntu 更改日誌鏡像,而不是按照 Ubuntu 人的意圖。**Ubuntu 鏡像和 Launchpad 之所以有效,是因為人們投入了大量的免費資源,並且希望您要麼使用已記錄的訪問數據的方式,要麼送出一個很好地詢問的錯誤。

引用自:https://serverfault.com/questions/878790