自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

認識 Wolfi:旨在縮小供應(yīng)鏈的 Linux 發(fā)行版

譯文 精選
系統(tǒng) Linux
隨著Wolfi發(fā)布一周年,它吸引了一些偉大的貢獻,包括1300個軟件包配置。此外,我們還與一些使用最廣泛的容器掃描儀建立了合作伙伴關(guān)系,如Docker Scout,Grype,Snyk,Trivy,Wiz和Prisma Cloud。

作者丨Ariadne Conill

編譯丨諾亞

自從Linus Torvalds創(chuàng)建Linux內(nèi)核并發(fā)布其第一個版本以來,已經(jīng)過去了30多年。當我們回顧自由軟件發(fā)展早期時,當然應(yīng)該給予Debian,F(xiàn)reeBSD和其他開源的自由/開源軟件發(fā)行版大量榮譽,它們提供了穩(wěn)定性保證,預(yù)先打包了通用的實用程序,并且使用戶不必手動安裝所有內(nèi)容。

但是,現(xiàn)在的世界與90年代大不相同,雖然確實有很多發(fā)行版在安全方面做得很好,但在許多方面,現(xiàn)代軟件消費模式,比如使用Docker構(gòu)建軟件和使用curl-pipe-bash命令安裝軟件,已經(jīng)給軟件供應(yīng)鏈帶來了安全挑戰(zhàn)。通過這些變通辦法,世界在很大程度上已經(jīng)擺脫了傳統(tǒng)的自由和開放源碼軟件分發(fā)模式,同時失去了通過精心策劃的分發(fā)獲得的軟件的優(yōu)勢,例如分發(fā)提供的漏洞管理。

讓我們來看看軟件發(fā)行版的演變,現(xiàn)代開發(fā)人員的需求已經(jīng)超出了以犧牲安全性為代價的一些傳統(tǒng)智慧的領(lǐng)域,并仔細看看 Wolfi——一個圍繞模塊化和可重新定位性構(gòu)建的滾動發(fā)布 Linux 發(fā)行版,它提供了用于滿足現(xiàn)代用戶供應(yīng)鏈安全需求的原語,同時還提供多個應(yīng)用程序版本流的穩(wěn)定性。

1、今天的軟件消費看起來有很大的不同

在傳統(tǒng)的軟件消費模型中,系統(tǒng)管理員選擇發(fā)行版,將它們安裝在虛擬機中,并直接從這些發(fā)行版獲取盡可能多的軟件。開發(fā)人員如果需要這些發(fā)行版之外的額外內(nèi)容,就必須提交申請,等待IT部門為他們的請求提供服務(wù)。

容器和微服務(wù)立即顛覆了這種軟件消費模式,讓開發(fā)人員能夠完全控制軟件的構(gòu)建、分發(fā)和獲取方式。

同時,F(xiàn)OSS的爆炸式增長產(chǎn)生了一種影響,即大多數(shù)開發(fā)人員所追求的軟件不再得到世界上最著名的發(fā)行版的支持。從NPM到Maven再到PyPI,世界上最受歡迎的語言和庫發(fā)布的軟件包和版本比發(fā)行版所能跟的要多幾個數(shù)量級。

其結(jié)果是,開發(fā)人員現(xiàn)在在他們的發(fā)行版之外安裝程序。好處是能夠獲得最新和最好的軟件。但缺點是,這一切都發(fā)生在直接從發(fā)行版安裝軟件時內(nèi)置的管理和信任的背景之外。

當你在發(fā)行版之外安裝軟件時,你從誰那里獲取軟件之間存在巨大的語義差異。手動安裝軟件時,開發(fā)人員可以獲得最新的軟件包(和版本),而不必等待發(fā)行版正式支持它們的緩慢步伐。然而,隨著FOSS的普及和普遍存在,人們習(xí)慣了在沒有任何舊世界發(fā)行版內(nèi)置的信任保證的情況下獲取軟件。

2、軟件工件的安全壓力越來越大

積極利用像 Log4j 這樣的備受矚目的漏洞,為軟件供應(yīng)鏈安全的重要性提供了新的視角。

在大多數(shù)組織癡迷于網(wǎng)絡(luò)安全的情況下,Log4j展示了這類全新的漏洞利用,因為開發(fā)人員構(gòu)建系統(tǒng)和他們使用的工件從未被賦予信任機制?,F(xiàn)代黑客是從這些敞開的門口進入——找到依賴項,不安全的庫或其他組件——然后一旦進入,就轉(zhuǎn)向所有其他可傳遞的依賴項。

對于現(xiàn)在關(guān)注軟件供應(yīng)鏈安全的組織來說,Log4j激發(fā)了對更好地了解軟件工件來源的需求。公司開始問這些問題,比如這些人工制品是從哪里來的?他們通過監(jiān)管鏈被篡改了嗎?這個開源項目還在維護嗎?

許多人沮喪地意識到,他們的安全掃描程序完全錯過了安裝在容器外部和底層發(fā)行版之外的軟件。當掃描程序找不到這些軟件包時,它們也無法找到它們的漏洞。

除了不想花費下一個假期來補救下一個Log4j之外,組織也感受到了迫在眉睫的監(jiān)管變化帶來的熱度。CISA的自我認證通用表格 ——結(jié)合正在進行的白宮網(wǎng)絡(luò)安全法令——清楚地表明,不安全軟件的責(zé)任將在未來適用于供應(yīng)商。措辭仍然模糊不清,但這種立法/監(jiān)管努力的演變是顯而易見的。FedRAMP(規(guī)定了向美國聯(lián)邦政府銷售軟件的合規(guī)條款)已經(jīng)對建立軟件組件的信任和修復(fù)已知漏洞提出了非常具體的要求。

如今,大多數(shù)公司都意識到,扮演鴕鳥不是管理軟件支持生命周期的策略。我們都需要了解在環(huán)境中運行的所有軟件工件,并且我們需要對正在部署的軟件工件的安全狀況充滿信心。

3、我的發(fā)行版中有什么亂七八糟的東西?

在開源項目進入軟件供應(yīng)鏈之前,公司可以看到一些不錯的信號,以嘗試了解開源項目的安全狀況。例如,OpenSSF Scorecard項目就是一個很好的資源。

但是發(fā)行版本身通常是你在了解你已經(jīng)在運行哪些安全漏洞時面臨的最大障礙之一。

一方面,世界上許多最流行的發(fā)行版都存在誤報問題——這是相當于“嘈雜尋呼機”綜合癥的安全漏洞。例如,這里是紅帽通用基礎(chǔ)映像 9 的掃描。如果我在此映像上運行 syft,我在此發(fā)行版中看到203個軟件包,其中記錄了211個 CVE,這比軟件包的數(shù)量還要多。例如,在這里,我重點介紹 dmidecode 組件,該組件的嚴重程度評分為中等:

為什么所有這些單片發(fā)行版都要在它們的基本映像中安裝那么多你根本不需要的組件?例如,dmidecode是一個用于從服務(wù)器的BIOS檢索信息的組件——它與容器化環(huán)境無關(guān)。

在發(fā)行版中包含這些工具的最初目的是為管理員提供統(tǒng)一的體驗,并支持“開箱即用”的最常用實用程序。因此,所有這些“廚房水槽”包的存在是累積技術(shù)債務(wù)的一種形式,這種債務(wù)是由于發(fā)行版需要默認地服務(wù)于每個可能的用例而產(chǎn)生的。

對于當今使用這些發(fā)行版的組織來說,這種技術(shù)債務(wù)是巨大的成本。如果我們經(jīng)常遇到我們既不使用也沒有發(fā)行版維護者打算修復(fù)的組件上的CVE,我們就會遇到“漏報”問題,這會影響我們對影響我們基礎(chǔ)架構(gòu)的實際漏洞進行分類的能力。

這些報告的漏洞不僅會產(chǎn)生你不想要的CVE修復(fù)的額外噪音,而且還可能創(chuàng)造出可用于其他開發(fā)鏈的小工具,這類攻擊被稱為“離地生活攻擊(LOTL)”。例如,攻擊者可以利用sudo,獲得容器內(nèi)部的root權(quán)限,然后使用這些其他工具突破容器。現(xiàn)在,攻擊者已在主機上并已完全破壞系統(tǒng)。通過使用你實際上不使用的軟件包,你將承擔(dān)未知的責(zé)任。

4、Wolfi:調(diào)整發(fā)行版的大小,使安全信號有意義

Wolfi 是一個發(fā)行版,其名字的靈感來自世界上最小的章魚。它于一年前推出,強調(diào)模塊化設(shè)計,并將更細粒度和最小的包打包,以便開發(fā)人員和安全團隊可以對他們正在運行的內(nèi)容進行推理。其設(shè)計原則是為了解決為早期時代設(shè)計的發(fā)行版與當今在云和邊緣運行的工作負載之間的這些基本脫節(jié):

  • 容器映像往往滯后于上游更新,導(dǎo)致用戶運行具有已知漏洞的映像。
  • 容器映像中使用的常見發(fā)行版也落后于上游版本,導(dǎo)致用戶手動或在包管理器外部安裝包。
  • 容器映像通常包含比所需更多的軟件,從而導(dǎo)致不必要地增加攻擊面。
  • 嵌入式方案(例如在邊緣運行的 IoT 設(shè)備)存儲容量較小,因此需要更小的分布。

大多數(shù)發(fā)行版都針對穩(wěn)定性、廣泛的兼容性和緩慢、有目的的更改進行了優(yōu)化——Wolfi 優(yōu)先考慮快速更新和極簡主義,使用版本流允許用戶選擇他們希望使用的更新以及何時使用。

Wolfi 軟件包是使用 melange 構(gòu)建的,melange 是一種靈活且安全的構(gòu)建工具。它使用 YAML 進行配置(世界在 YAML 上運行),并在容器中運行構(gòu)建步驟(可以使用 bwrap、docker、Kubernetes 運行)。它生成使用私鑰簽名的 .apk。Wolfi 將這些軟件包托管在CDN上,CLI(apk)管理安裝。此外,Chainguard使用apko(一種將APK軟件包組合成OCI基礎(chǔ)映像的工具)從這些軟件包以聲明式構(gòu)建其Chainguard Images產(chǎn)品。

Wolfi 強調(diào)頻繁更新和自動化。過去,開源意味著你可以永遠獲得軟件的免費副本,而今天的現(xiàn)實是,你必須有一個不斷更新軟件的計劃,這就是Wolfi的原語優(yōu)化的目的。用 Wolfi 術(shù)語來說,軟件包更新的生命周期如下所示:

  • Wolfibot 監(jiān)控 GitHub 和發(fā)布監(jiān)控的更新,并將其作為 PR 歸檔。
  • 維護者審查并批準這些更新,并將它們合并到發(fā)行版中。
  • Wolfi 中上游發(fā)布和可用性之間的時間可以用分鐘來衡量,而不是幾天/幾周。
  • 可用性并不意味著你應(yīng)該將其推廣到生產(chǎn)環(huán)境,你應(yīng)該對其進行測試。
  • 在Wolfi的極簡設(shè)計下,默認情況下包含更少的組件,這意味著在測試時需要擔(dān)心的組件更少。

隨著Wolfi發(fā)布一周年,它吸引了一些偉大的貢獻,包括1300個軟件包配置。此外,我們還與一些使用最廣泛的容器掃描儀建立了合作伙伴關(guān)系,如Docker Scout,Grype,Snyk,Trivy,Wiz和Prisma Cloud。

不同的發(fā)行版有不同的優(yōu)先級。Debian 的首要任務(wù)是穩(wěn)定性、廣泛的兼容性以及緩慢而有目的的更改——這些優(yōu)先事項使其成功了三十多年。Alpine的首要任務(wù)是……更快。Alpine以安全為中心,最小,更頻繁的發(fā)布和補丁——在許多方面,Alpine是Wolfi的精神前身。所有這些發(fā)行版都是了不起的公共產(chǎn)品,激發(fā)了圍繞Wolfi的許多設(shè)計合理化。

參考鏈接:https://thenewstack.io/meet-wolfi-the-linux-distro-designed-to-shrink-your-supply-chain/

責(zé)任編輯:武曉燕 來源: 51CTO技術(shù)棧
相關(guān)推薦

2023-10-08 07:24:11

WolfiLinux“非發(fā)行版”

2023-02-23 07:52:20

2017-11-15 08:56:00

供應(yīng)鏈消費升級CIO

2009-10-13 09:22:01

Linux發(fā)行版

2021-09-06 11:29:59

LinuxCutefishOS操作系統(tǒng)

2009-12-01 16:55:40

Live Linux

2009-12-21 16:27:55

2018-04-17 10:00:18

Linux發(fā)行版面向企業(yè)

2019-09-30 08:50:51

Linux發(fā)行版內(nèi)核

2021-06-11 06:10:25

Linux發(fā)行版操作系統(tǒng)

2009-03-30 14:30:44

LinuxPuppy發(fā)行版

2009-02-20 11:14:33

LinuxArch 2009.02

2019-04-09 15:38:18

Linux發(fā)行版Windows

2021-11-03 08:00:00

Linux開源操作系統(tǒng)

2009-02-19 16:18:09

Arch Linux發(fā)行版

2009-03-20 11:49:02

Scientific

2009-04-30 17:25:48

發(fā)行版MandrivaLinux 2009.

2009-12-21 15:00:24

2011-02-16 16:23:09

Debian發(fā)行版

2009-02-09 10:56:50

Linux發(fā)行版
點贊
收藏

51CTO技術(shù)棧公眾號