亚洲精品久久久久久久久久久,亚洲国产精品一区二区制服,亚洲精品午夜精品,国产成人精品综合在线观看,最近2019中文字幕一页二页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

什么是可重復(fù)構(gòu)建?可重復(fù)構(gòu)建為軟件供應(yīng)鏈安全保駕護航

openEuler ? 來源:openEuler ? 2023-03-21 16:49 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

可重復(fù)構(gòu)建( Reproducible Builds)是證明軟件供應(yīng)鏈安全的必要手段,2022已被納入SupplyChainSecurityCon的topics以及微軟的S2C2F(Secure Supply Chain Consumption Framework)當中,并受到了Google開源安全團隊的支持贊助。OpenSSF/SLSA在軟件供應(yīng)鏈完整性與包管理最佳實踐中也對可重復(fù)構(gòu)建有所要求。

2022年openEuler已初步建設(shè)可重復(fù)構(gòu)建能力。

什么是可重復(fù)構(gòu)建

對于可重復(fù)的構(gòu)建,給定相同的源代碼、構(gòu)建環(huán)境和構(gòu)建指令,任何人均可重建出Bit to Bit完全相同的指定制品。

可重復(fù)構(gòu)建的目的與意義

可重復(fù)構(gòu)建可以驗證二進制是否被植入后門,避免潛在安全風險,從而保障二進制的質(zhì)量。構(gòu)建環(huán)境和構(gòu)建工程能夠被還原,使依賴變化范圍最小化、測試最小化,方便問題定位、提高開發(fā)效率。

通過可重復(fù)構(gòu)建可以創(chuàng)建從代碼到制品的可獨立驗證路徑,結(jié)合已有的代碼發(fā)布簽名、軟件倉庫簽名、安全啟動等技術(shù),使開源代碼從生產(chǎn)到使用的全過程可追溯成為可能。

構(gòu)建差異產(chǎn)生的原因

在代碼構(gòu)建期間,從源代碼到產(chǎn)品發(fā)布的二進制包,中間每一個步驟、每一個構(gòu)建工具都有可能引入二進制差異,而這些差異經(jīng)過逐步放大,導(dǎo)致最終發(fā)布的二進制包每次編譯都不相同,而且差異非常巨大。

2983eb48-ba4d-11ed-bfe3-dac502259ad0.png

二進制差異案例(差異放大)

導(dǎo)致構(gòu)建差異的因素有很多,包含環(huán)境、時間戳、隨機數(shù)、文件亂序等等,這些差異都是在構(gòu)建過程中生成的。數(shù)字簽名可以證明源碼和二進制的唯一性,但是無法證明源碼與二進制之間對應(yīng)關(guān)系的一致性。證明源碼與二進制一致性的工作量非常大、技術(shù)難度高。例如下圖在各編譯過程中可能會產(chǎn)生差異的因素:

29970066-ba4d-11ed-bfe3-dac502259ad0.png

openEuler可重復(fù)構(gòu)建方案

openEuler當前的可重復(fù)構(gòu)建是將rpm包構(gòu)建兩次,再進行對比。在構(gòu)建過程中利用開源工具libfaketime進行差異消除,構(gòu)建結(jié)束后將兩次構(gòu)建出的rpm包進行對比,若rpm不一致,則進行解壓繼續(xù)對比,將差異粒度精確到文件,并輸出差異報告。

29d251ca-ba4d-11ed-bfe3-dac502259ad0.png

為了達到構(gòu)建可重復(fù)的目的,通常要滿足兩個條件:

1、構(gòu)建系統(tǒng)的完全確定性,保證兩次構(gòu)建的日期、時間完全相同(或者去除掉時間信息),文件順序一致;

2、是用的構(gòu)建工具集及構(gòu)建工具需要一致或被記錄。

主要措施有以下三步:

1、 openEuler的可重復(fù)構(gòu)建使用了libfaketime工具消除差異。此工具主要是利用LD_PRELOAD環(huán)境變量進行差異消除。LD_PRELOAD 是 Linux 系統(tǒng)的一個環(huán)境變量,它可以影響程序的運行時的鏈接(Runtime linker),通過此變量將 Linux 系統(tǒng)自帶的動態(tài)庫.so 替換我們自己動態(tài)庫中自定義的函數(shù),例如:time()、gethostname()、random()、rand()等函數(shù),確保編譯過程中獲取的時間、主機名、隨機數(shù)能夠保持一致。

29dbb06c-ba4d-11ed-bfe3-dac502259ad0.png

差異消除工具原理

通過使用此工具,產(chǎn)品源代碼不需要修改,從而減少了產(chǎn)品在代碼糾正方面的投資,商業(yè)和開放源代碼工具所產(chǎn)生的差異也將得到消除,也無需進行任何代碼修改,而且時間戳的語義被最大程度地保存。并且可以通過“ unset LD_PRELOAD”格式的命令禁用該工具。

除了libfaketime原有的功能以外,我們在此基礎(chǔ)上進行擴展,增加了精準黑白名單的機制可以有效解決因使用libfaketime而導(dǎo)致的構(gòu)建失敗問題;并完善了消除隨機數(shù)差異功能,增加了對random()、rand()、/dev/random、/dev/urandom獲取隨機數(shù)方法的替換。

2、 openEuler的可重復(fù)構(gòu)建還用到了unpacker自動化解包對比工具,可以精準分析文件級差異,輸出可視化差異報告。對比兩次構(gòu)建出rpm的校驗值,若校驗值一致則認為構(gòu)建可重復(fù);若校驗值不一致,則進行解包對比,若兩個rpm包解壓后所有文件的校驗值均一致,同樣認為構(gòu)建可重復(fù),若出現(xiàn)不一致文件則使用diffoscope進行對比并輸出差異報告。此外,工具會將RSA、PGP簽名文件從rpm包中拆分出來,不會將簽名文件差異當作是rpm差異。

29e89142-ba4d-11ed-bfe3-dac502259ad0.png

解包對比工具原理

29f08564-ba4d-11ed-bfe3-dac502259ad0.png

差異報告樣例

3、將rpm包對比結(jié)束后,我們會將對比結(jié)果以及差異報告歸檔,并在openEuler的可重復(fù)構(gòu)建網(wǎng)站展示并進行治理。

2a0ffdf4-ba4d-11ed-bfe3-dac502259ad0.png

2022年我們已經(jīng)對openEuler核心1800+個代碼倉分別在arm及x86環(huán)境下進行了可重復(fù)構(gòu)建的比對,涉及軟件包6000+,可重復(fù)率達到了98%。今年我們把可重復(fù)構(gòu)建范圍擴大到了openEuler 22.09的Everything版本,構(gòu)建成功了4130個代碼倉,涉及軟件包14000+,可重復(fù)率達到94%左右。經(jīng)過初步的分析,當前大部分不可重復(fù)代碼倉是因為構(gòu)建出的rpm包存在html文件差異。

openEuler可重復(fù)構(gòu)建規(guī)劃

1、 針對不可重復(fù)代碼倉分析原因、提出解決建議,并回合到上游社區(qū)。

2、 使用EulerMaker替換OBS進行構(gòu)建,解決由于libfaketime導(dǎo)致的構(gòu)建失敗問題,并實現(xiàn)通過“元數(shù)據(jù)”隨時復(fù)現(xiàn)構(gòu)建過程的能力。

3、 逐步提高openEuler代碼倉可重復(fù)率,達成Everything版本代碼倉可重復(fù)率98%以上,領(lǐng)先業(yè)界水平。

4、 復(fù)制可重復(fù)構(gòu)建能力,幫助合作伙伴達成可重復(fù)構(gòu)建目標。






審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • freebsd
    +關(guān)注

    關(guān)注

    0

    文章

    37

    瀏覽量

    11079
  • GNU
    GNU
    +關(guān)注

    關(guān)注

    0

    文章

    143

    瀏覽量

    18202
  • openEuler
    +關(guān)注

    關(guān)注

    2

    文章

    331

    瀏覽量

    6646
  • Debian
    +關(guān)注

    關(guān)注

    0

    文章

    77

    瀏覽量

    2005

原文標題:可重復(fù)構(gòu)建為軟件供應(yīng)鏈安全保駕護航

文章出處:【微信號:openEulercommunity,微信公眾號:openEuler】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    解決鋰電池一致性難題!景鋰新能源電池均衡儀儲能安全/電動車續(xù)航保駕護航

    解決鋰電池一致性難題!景鋰新能源電池均衡儀儲能/電動車電池續(xù)航保駕護航
    的頭像 發(fā)表于 11-06 11:00 ?158次閱讀

    鯤云科技助力中通服供應(yīng)鏈筑牢智能倉儲安全防線

    在大安全大應(yīng)急成為經(jīng)濟社會發(fā)展重要支撐的當下,中國通服供應(yīng)鏈股份有限公司積極踐行“鍛造可信賴智慧供應(yīng)鏈,助力數(shù)字基建,護航數(shù)字中國”的企業(yè)使命,在智能倉儲
    的頭像 發(fā)表于 10-27 15:53 ?194次閱讀

    曙光數(shù)創(chuàng)您的數(shù)據(jù)中心建設(shè)保駕護航

    每一臺曙光數(shù)創(chuàng)生產(chǎn)的設(shè)備背后,都是一場圍繞著“品質(zhì)”的馬拉松。從原料進場到設(shè)備出廠,幾十道流程環(huán)環(huán)相扣,曙光數(shù)創(chuàng)用20年的“較真精神”,把品質(zhì)藏進了生產(chǎn)線的每個細節(jié)里,您的數(shù)據(jù)中心建設(shè)保駕護航
    的頭像 發(fā)表于 09-30 16:15 ?954次閱讀

    海辰儲能攜手17家企業(yè)深化供應(yīng)鏈ESG管理倡議

    近日,于青海格爾木市舉辦的 ESG 沙龍活動上,海辰儲能作為“擴容升級”聯(lián)合發(fā)起方,攜手 17 家企業(yè)共同深化“供應(yīng)鏈 ESG 管理倡議”(SCSI),構(gòu)建全球持續(xù)
    的頭像 發(fā)表于 08-04 17:15 ?922次閱讀

    光伏電站氣象監(jiān)測系統(tǒng):清潔能源高效發(fā)電保駕護航

    光伏電站氣象監(jiān)測系統(tǒng):清潔能源高效發(fā)電保駕護航 柏峰【BF-GFQX】在全球能源結(jié)構(gòu)向清潔能源轉(zhuǎn)型的浪潮中,光伏發(fā)電憑借其清潔、可再生的優(yōu)勢,得到了前所未有的發(fā)展。然而,光伏電站的發(fā)電效率深受氣象條件影響,
    的頭像 發(fā)表于 07-21 11:47 ?313次閱讀
    光伏電站氣象監(jiān)測系統(tǒng):<b class='flag-5'>為</b>清潔能源高效發(fā)電<b class='flag-5'>保駕護航</b>

    萬里紅推出供應(yīng)鏈軟件安全解決方案

    上,正式發(fā)布了萬里紅供應(yīng)鏈軟件安全解決方案,數(shù)字時代信息安全提供體系化的軟件
    的頭像 發(fā)表于 05-19 16:13 ?709次閱讀

    eUPS0505斷電續(xù)航模塊,嵌入式系統(tǒng)保駕護航

    保駕護航。應(yīng)用場景與作用在嵌入式系統(tǒng)中,有許多關(guān)鍵設(shè)備如主控MCU和存儲器都需要穩(wěn)定的電力供應(yīng),倘若遇到外部供電意外斷電,則極易導(dǎo)致存儲器數(shù)據(jù)丟失甚至系統(tǒng)損壞,因此就有
    的頭像 發(fā)表于 04-15 11:38 ?476次閱讀
    eUPS0505斷電續(xù)航模塊,<b class='flag-5'>為</b>嵌入式系統(tǒng)<b class='flag-5'>保駕護航</b>

    充電樁安全用電消防系統(tǒng):電動自行車保駕護航

    。今天,我們就來聊聊充電樁安全用電消防系統(tǒng),看看它是如何為電動自行車保駕護航的。 電動自行車充電樁,作為電動自行車充電的基礎(chǔ)設(shè)施,其安全性直接關(guān)系到廣大車主的生命財產(chǎn)安全。近年來,因充
    的頭像 發(fā)表于 04-01 14:11 ?511次閱讀

    Arm汽車技術(shù)的未來保駕護航

    隨著汽車日益復(fù)雜、新威脅不斷涌現(xiàn)以及監(jiān)管環(huán)境的變化,汽車供應(yīng)鏈必須確保車輛和零部件在開發(fā)、集成、維護和報廢的全過程都遵循嚴格的安全規(guī)范。這包括對單個產(chǎn)品的網(wǎng)絡(luò)安全進行評估,并建立網(wǎng)絡(luò)安全
    的頭像 發(fā)表于 03-10 09:19 ?784次閱讀

    充電樁“耐力大考驗”:老化負載研究,持久續(xù)航保駕護航

    虛擬仿真技術(shù),模擬各種復(fù)雜環(huán)境下的老化過程,縮短測試周期,降低測試成本。 充電樁老化負載研究,是保障充電樁安全可靠運行的重要環(huán)節(jié),也是推動充電樁行業(yè)健康發(fā)展的重要力量。讓我們共同期待,更智能、更可靠的充電樁,綠色出行保駕護航!
    發(fā)表于 02-28 14:42

    一文速覽 30KPA48A:快速響應(yīng),電路安全保駕護航

    一文速覽 30KPA48A:快速響應(yīng),電路安全保駕護航
    的頭像 發(fā)表于 02-22 10:15 ?822次閱讀
    一文速覽 30KPA48A:快速響應(yīng),<b class='flag-5'>為</b>電路<b class='flag-5'>安全</b><b class='flag-5'>保駕護航</b>

    安科瑞蓄電池在線監(jiān)控系統(tǒng)鐵塔基站的穩(wěn)定運行保駕護航

    快速發(fā)展奠定堅實的基礎(chǔ)。確?;?4小時平穩(wěn)運行,后備電源在其中起了非常重要的作用。 ? ? ? ?安科瑞蓄電池在線監(jiān)控系統(tǒng)鐵塔基站的穩(wěn)定運行保駕護航,實現(xiàn)電池參數(shù)實時在線監(jiān)測,對電池故障和風險及時發(fā)出預(yù)警,安裝、維護和接入
    的頭像 發(fā)表于 02-20 16:54 ?577次閱讀
    安科瑞蓄電池在線監(jiān)控系統(tǒng)<b class='flag-5'>為</b>鐵塔基站的穩(wěn)定運行<b class='flag-5'>保駕護航</b>

    無人機電力巡檢系統(tǒng)電網(wǎng)安全保駕護航

    ? ? ? ?無人機電力巡檢系統(tǒng)電網(wǎng)安全保駕護航 ? ? ? ?電力,現(xiàn)代社會的命脈,其穩(wěn)定運行關(guān)乎國計民生。而電力巡檢,作為保障電網(wǎng)安全的首道防線,卻長期面臨著效率低、風險高、成本
    的頭像 發(fā)表于 02-07 18:06 ?833次閱讀

    5KP26A 二極管:26V 精準穩(wěn)壓,電路安全保駕護航

    5KP26A 二極管:26V 精準穩(wěn)壓,電路安全保駕護航
    的頭像 發(fā)表于 01-21 14:07 ?1250次閱讀

    電梯五方對講網(wǎng)關(guān):構(gòu)建高效安全的垂直交通通訊網(wǎng)絡(luò)

    在高層建筑日益增多的今天,電梯作為連接各樓層的垂直交通工具,其安全性與通訊效率顯得尤為重要。電梯五方對講網(wǎng)關(guān),作為電梯通訊系統(tǒng)的核心部件,正以其獨特的功能與優(yōu)勢,構(gòu)建起一個高效、安全的垂直交通通訊網(wǎng)絡(luò),為人們的日常出行
    的頭像 發(fā)表于 12-29 10:42 ?820次閱讀