2026 年每日通報的 CVE 數量比前一年多 131%。

機械製造商的資安

如今的機械出貨時都搭載控制器、顯示器、車載資通訊單元與配套應用程式,其中大多由供應商建置。自 2027 年起,機械法規與 Cyber Resilience Act(CRA)都要求您掌握每台機械上有哪些軟體,並在多年內維持其安全。CRACI 會記錄每一次軟體建置所包含的內容。

兩項法規,同一個問題:機械上有哪些軟體?

自 2027 年起,配備控制器、操作員顯示器或資料連線的機械,將同時受到兩項歐盟法規的規範。兩者都從同一個問題出發:這台機械上逐一版本安裝了哪些軟體,而這些軟體裡面又有什麼。

  1. Cyber Resilience Act(CRA)對遭積極利用的漏洞與嚴重資安事件的通報義務開始適用。
  2. 機械法規(Machinery Regulation)(EU) 2023/1230 開始適用,取代機械指令。
  3. Cyber Resilience Act (EU) 2024/2847 全面適用。

機械法規

附錄 III 的基本健康與安全要求中,有兩項涉及資安:

  • 1.1.9,防止竄改與損毀(protection against corruption)。以直接或遠端方式將其他裝置連接到機械,不得導致危險情況。對機械符合基本健康與安全要求至關重要的軟體與資料,必須加以識別,並防止遭到意外或蓄意的竄改與損毀。機械必須能識別其安全運作所需的已安裝軟體,並隨時提供這項資訊。它也必須收集對該軟體或其組態進行合法或非法介入的證據。
  • 1.2.1,控制系統的安全性與可靠性。控制系統必須能抵禦可合理預見、會導致危險情況的第三方惡意企圖。依據 1.2.1(f),控制系統必須保存追蹤紀錄,記載機械上市後的介入行為以及所上傳的安全軟體版本,並於上傳後保存五年。

Cyber Resilience Act

具資料連線的機械,或單獨銷售的機械零組件,屬於具數位元素的產品。製造商必須對其整合的第三方元件善盡審慎查核義務、製作至少涵蓋頂層相依套件的 SBOM、在支援期間內處理漏洞(支援期間至少五年,除非產品的預期使用期間較短),並保存技術文件至少十年或至支援期間結束,以較長者為準。

要求機械法規Cyber Resilience Act軟體端需要什麼
掌握已安裝的軟體1.1.9:機械隨時識別其安全運作所需的軟體至少涵蓋頂層相依套件的 SBOM每個軟體版本中所有元件的紀錄
防止竄改與損毀1.1.9 與 1.2.1:保護安全軟體,並抵禦惡意企圖產品的基本資安要求已知的元件,以及遭汙染的相依套件無法滲入的建置
記錄變更與版本1.2.1(f):上市後所上傳安全軟體版本的紀錄已上市產品的技術文件每次建置與每個版本的版本歷史
處理漏洞未明文規定支援期間內的漏洞處理;自 2026 年 9 月 11 日起負有通報義務針對新的資安公告監控已交付的元件
保存紀錄追蹤紀錄:每次上傳後保存五年技術文件:至少十年或至支援期間結束將 SBOM 匯出至技術文件

符合 CRA 就能涵蓋機械法規嗎?

不會自動涵蓋。Cyber Resilience Act 並未賦予對機械法規的符合性推定。其前言第 53 點指出,符合 CRA 的基本要求,可能有助於符合機械法規中關於防止竄改與損毀,以及控制系統安全性與可靠性的要求。前言同時指出,製造商必須證明這一點,例如在風險評估後採用調和標準,而且兩項法規的符合性評鑑程序仍然各自適用。

正在為 1.1.9 制定的調和標準是 EN 50742《Safety of machinery: Protection against corruption》。截至 2026 年 11 月,它仍是最終草案 FprEN 50742,涵蓋 1.1.9 及 1.2.1 的相關項目;在最終版本刊登於歐盟公報之前,它並不提供符合性推定。它結合 EN ISO 12100 的風險評估與 IEC 62443 的資安概念,並接受一致採用 IEC 62443-4-1、IEC 62443-3-3 與 IEC 62443-4-2,作為達成其防護目標的同等方式。IEC 62443-4-2 依資安能力等級,訂定控制系統元件的技術資安要求。在德國,2026 年 7 月的測試原則 GS-IFA-M25 採用 prEN 50742 的用語,將防止竄改與損毀轉化為 66 項測試準則。其中 T46 要求產品能依要求提供其已安裝的軟體版本與組態。要針對每一種組態回答這個問題,就需要記錄每個軟體版本包含了什麼。

機械法規有其自身的符合性推定,但途徑不同:依據 Cybersecurity Act,即 Regulation (EU) 2019/881 所採行的歐盟資安驗證方案。依此類方案取得的證書或符合性聲明,在其涵蓋 1.1.9 與 1.2.1 要求的範圍內,可推定符合這些要求。

因此,一次風險評估與一套佐證資料可以同時用於兩項法規,但您必須分別證明對各項法規的符合性。如果您的機械具有資料連線,請同時為兩者做好規劃。軟體佐證資料,也就是 SBOM、漏洞紀錄與更新歷史,正是兩者共通的部分。

2026 年 1 月,機械產業協會要求延後 1.1.9 與 1.2.1(f) 的適用,並於 2026 年 3 月要求其改自 CRA 的適用日 2027 年 12 月 11 日起適用。這只是請求,並非法律:截至 2026 年 11 月,並未通過任何延後措施。本頁所列日期均為法規中的日期。

哪些機械與哪些軟體屬於適用範圍

  • 營建、物料搬運、採礦與工業機械屬於機械法規的適用範圍;當機械或其零組件具有資料連線時,也適用 CRA。
  • 農林用曳引機若屬於 Regulation (EU) No 167/2013 的範圍,則排除於機械法規之外,但安裝在其上的機械除外。CRA 的排除清單並未列出該法規,因此聯網的曳引機可能屬於 CRA 的適用範圍。
  • 道路車輛若依 Regulation (EU) 2019/2144 取得型式認證,則排除於 CRA 之外。
  • 單獨銷售的零組件。CRA 也適用於單獨上市的軟體與硬體元件。單獨銷售 ECU 或車載資通訊單元的供應商,本身即為 CRA 下的製造商。若該單元僅內建於機械中,則由機械製造商對整台機械承擔義務,並必須對供應商的元件善盡審慎查核義務。

本文為一般性資訊,並非法律意見。請自行確認您產品的分類。

一台機械內的軟體來自不同來源,而只有建置該軟體的團隊,才能可靠地說明其中包含什麼。根據我們從機械製造商聽到的情況,裸機 ECU 所含的開源元件很少,而 Linux、Android 與 Windows 軟體則包含大量開源元件。

軟體常見來源開源比例誰能產生可靠的 SBOMCRACI 的定位
機械控制器應用程式自行開發或供應商不一建置它的團隊在 Linux 上以 GitHub Actions 建置時適用
ECU 韌體(液壓、轉向、動力)供應商通常偏低:專有程式碼與模型產生的程式碼供應商不直接適用:透過加入 CRACI 的供應商 SBOM
Linux 顯示器或 HMI 映像檔自行開發或供應商高建置映像檔的團隊適用:Yocto 與其他嵌入式 Linux 建置
車載資通訊閘道器自行開發或供應商高建置它的團隊以 GitHub Actions 建置時適用
診斷與配套應用程式自行開發高應用程式團隊npm、PyPI、Go 與 Cargo 建置適用;以 Gradle 建置的 Android、iOS 與 Windows 應用程式目前不適用
雲端後端自行開發高服務團隊以 GitHub Actions 建置時適用

為什麼機械比消費性電子產品更困難

少量多樣。一家機械製造商可能有數百個平台在市場上,每個平台每年只賣出少量機台,而且許多機械是依訂單配置。每一種配置都是不同的軟體組合,因此每次建置都有 SBOM,比每條產品線都有 SBOM 更重要。

使用壽命長。機械會服役十年以上,而供應商可能更換或倒閉。軟體版本包含什麼的紀錄必須在建置時就產生,因為多年後無法再重建。

供應商軟體占大宗,而供應商的 SBOM 品質往往不佳。我們聽過的供應商 SBOM 有缺漏元件、沒有 package URL 或 CPE、沒有授權資訊也沒有雜湊值,有些甚至是手寫的,無法通過 schema 驗證。對已燒錄的 ECU 進行二進位分析只是權宜之計:它是在猜測內容,而不是記錄內容。

風險集中在聯網的層級。許多 ECU 邏輯由模型產生,所含的開源元件很少。開源元件與網路暴露面集中在 Linux、連線與應用程式層,因此請先將心力投注在這些地方。

以下是一個示意範例:一個虛構輪式裝載機平台的軟體堆疊,從雲端一路到 ECU。

  1. 雲端後端與配套應用程式自行開發。大部分為開源,且面向網路。Cyber Resilience Act。
  2. 車載資通訊閘道器嵌入式 Linux,大部分為開源,連接行動網路。Cyber Resilience Act,以及適用於遠端連線的 1.1.9。
  3. 操作員顯示器搭載 UI 框架的嵌入式 Linux 映像檔,大部分為開源,連接機械匯流排與維修工具。Cyber Resilience Act 與 1.1.9。
  4. 機械控制器在供應商平台上執行的自有應用程式,與安全相關。1.1.9 與 1.2.1,以及可透過連線存取時的 Cyber Resilience Act。
  5. 液壓、轉向與引擎 ECU供應商韌體,專有且由模型產生,開源元件很少,與安全相關。1.1.9 與 1.2.1;Cyber Resilience Act 則經由整台機械適用。

開源元件與網路暴露面位於最上面三層,而這通常也是您自有建置管線所在之處。請從這裡開始。

逐步準備

機械上的軟體識別與介入紀錄等功能,屬於機械設計的一部分。以下步驟涵蓋的是放進機械中的軟體。

  1. 盤點每個機械平台上的軟體. 列出每個平台與每種配置上的所有軟體,並標示與安全相關的部分。這是 1.1.9 的起點,該條要求機械識別其安全運作所需的軟體。
  2. 區分自行建置與整合的軟體. 您團隊建置的軟體與來自供應商的軟體,需要不同的佐證途徑。前者由您自行產生紀錄;後者則由您訂定要求,並檢查收到的內容。
  3. 記錄自有軟體的每一次版本建置. 從每一次版本建置產生 SBOM,依版本保存,並在整個支援期間內針對新漏洞持續監控。
  4. 訂定供應商 SBOM 的最低標準. 議定您需要的格式與欄位,例如 package URL 或 CPE、授權與雜湊值,驗證每一次交付,未通過時予以退回。了解供應商如何回應客戶的 SBOM 要求。
  5. 依機械壽命規劃保存期限. CRA 技術文件須保存至少十年或至支援期間結束,以較長者為準;1.2.1(f) 的安全軟體紀錄則須在每次上傳後保存五年。請依機械的使用壽命規劃,而不是依專案的期程。
  6. 執行漏洞處理與通報. CRA 對遭積極利用的漏洞與嚴重資安事件的通報義務,自 2026 年 9 月 11 日起已經適用。請決定由誰分級研判發現、由誰負責各項修正,以及由誰負責通報。
  7. 鎖定建置本身. 在隔離的環境中執行每一次建置,且只能連線到所需的來源,讓遭入侵的相依套件無法觸及您的原始碼、機密或發布版本。

CRACI 的定位

CRACI 在自有執行器上執行您的 GitHub Actions 建置,並記錄每次建置包含的內容。對機械製造商而言,這涵蓋了您團隊建置的軟體,以及您收集的供應商 SBOM。

為您建置的機械軟體留下建置紀錄

在 CRACI 的 GitHub Actions 執行器上執行您的控制器服務,以及 Linux 顯示器與車載資通訊映像檔(包括 Yocto 與其他嵌入式 Linux 建置),最高 32 vCPU,支援 x86-64 或原生 ARM64。建置執行期間,CRACI 會記錄它引入的每一個套件與檔案,包括任何 recipe 或 lockfile 都沒有列出的隱藏相依套件,並為每個作業的 SBOM 標示完整度狀態。在一次 core-image-sato 建置中,CRACI 的 SBOM 包含了 Yocto 自身 SBOM 中的每個元件,外加 Yocto 遺漏的 88 個元件,653 個 Rust crate 版本也各自附有 package URL。進一步了解在 CRACI 上建置 Yocto。

Embedded builds on CRACI runners Yocto and BitBake builds such as core-image-sato run on CRACI runners at size 32. Like every CRACI job, the build runs under an egress policy, records what it fetched and its provenance data. Embedded build bitbake core-image-sato Yocto and BitBake; pi-gen for Raspberry Pi OS CRACI runner, size 32 32 vCPU in an isolated virtual machine Egress policy Fetches recorded Provenance Firmware image SBOM recorded during the build

供應商 SBOM 與您自己的並列

加入來自 ECU、顯示器與車載資通訊供應商的 SBOM,採購的元件就會與您建置的軟體一併受到監控。當供應商的 Linux 堆疊出現新漏洞時,它會出現在與您自有軟體相同的紀錄中。

Vendor SBOMs tracked next to your own SBOMs from your own builds and SBOMs added from your vendors are monitored in the same place, so bought-in components are re-evaluated against new vulnerabilities alongside your own dependencies. Your builds api-service SBOM web-app SBOM firmware SBOM Your vendors Payment SDK SBOM Camera module SBOM RTOS SBOM Monitored in one place Every SBOM re-evaluated as new vulnerabilities are published Third-party code tracked like your own dependencies Findings triaged and routed to the team that owns the fix

哪些機械受到影響,從何時開始

CRACI 會隨著新漏洞公布,持續重新評估受監控的 SBOM。建置歷史會在您方案的保存期限內,顯示哪些建置包含有漏洞的相依套件(無論直接或遞移),而資產清冊檢視則顯示哪些產品部署了哪些軟體版本。資安團隊分級研判每項發現,並轉交給負責修正的團隊;政策關卡則可讓特定 CVE 不再出現在之後的任何建置中。

Vulnerabilities across everything you have deployed When a new vulnerability is published, CRACI re-evaluates the monitored SBOMs of your releases and vendor SBOMs, finds the affected version, and the inventory view shows which products that version is deployed to. The finding is triaged and routed to the team that owns the fix. New advisory published Long after the release shipped Monitored SBOMs re-evaluated Your release builds and your vendors' SBOMs Affected: Gateway firmware v1.8.4 Inventory: where v1.8.4 is deployed Product Deployed version Gateway Pro v1.8.4 Gateway Mini v1.8.4 Route the fix

技術文件所需的佐證資料

CRACI 提供您技術文件所需的軟體供應鏈佐證資料:以 CycloneDX 或 SPDX 格式匯出的建置時 SBOM,包含遞移相依套件、宣告的授權及其元件中發現的漏洞,另有漏洞紀錄與建置歷史。對於屬於 CRA 適用範圍的機械,CRACI 會準備 CRA 通報的內容,再由貴公司的人員透過 Single Reporting Platform 提交。符合性評鑑、EU 符合性聲明與 CE 標示,仍由身為製造商的您負責。

Evidence for the conformity assessment CRACI supplies technical evidence: build-time SBOMs, vulnerability and remediation records, provenance and network traces, with SBOMs exported as CycloneDX or SPDX and the rest returned by the API. The manufacturer uses it in the technical documentation, runs the conformity assessment, by self-assessment or with a notified body, draws up the EU declaration of conformity and applies the CE marking. CRACI supplies the evidence Build-time SBOMs Vulnerability records Provenance Network traces The manufacturer's process Technical documentation Conformity assessment: self-assessment or notified body EU declaration of conformity CE marking CRACI does not assess, certify or manage the assessment

只能連線到所需來源的建置

每個作業都在各自隔離的虛擬機器中執行,並受對外連線政策約束;政策會在作業開始前驗證,並採取失效即封鎖。採用預設拒絕政策時,建置只能連線到您的套件來源,連線到其他任何主機都會遭到封鎖並發出警示。

An egress policy on the build network A build job connects to hosts in its egress policy, such as package registries and Git, and a connection to a host outside the policy is blocked. The policy is validated before the job starts and fails closed, and a violation sends an alert. Egress policy Default deny Validated before the job starts Fails closed · 24 source presets Build job on a CRACI runner npm registry allowed PyPI allowed Git over HTTPS allowed Unapproved host blocked Alert on policy violation Connections are recorded in the job's network trace

給 ECU、顯示器與車載資通訊單元的供應商

機械製造商現在會為所採購的軟體訂定 SBOM 要求,例如 package URL 或 CPE、授權、雜湊值,以及可通過驗證的格式,並退回未通過的檔案。如果您以 GitHub Actions 建置,CRACI 會從建置本身產生 SBOM,因此它列出的是實際進入版本的內容,包括任何 lockfile 都沒有列出的元件,且每個元件都附有 package URL 與宣告的授權。請將匯出的內容與客戶要求的完整欄位清單比對。進一步了解如何回應客戶的 SBOM 要求。

CRACI 不適用的情況

CRACI 適合您自行建置的軟體,但不適合以下情況:

  • 不適合只整合供應商 ECU、本身不建置任何軟體的機械製造商。CRACI 記錄的是建置;它無法為他人建置的二進位檔產生 SBOM。如果您幾乎所有的軟體都是燒錄在供應商硬體上交付的,您需要的工具是供應商 SBOM 要求、SBOM 驗證,以及作為權宜之計的二進位分析,而 CRACI 不提供二進位分析(請參閱二進位分析與建置紀錄的比較)。CRACI 能透過您供應商的建置,以及監控他們提供給您的 SBOM 來協助您。
  • 不適合在 GitHub Actions 以外建置,或在 Windows 或 macOS 上建置的裸機或 RTOS 韌體。CRACI 目前在 Linux 執行器上執行 GitHub Actions 作業。其他 CI 系統(例如 GitLab CI 與 Jenkins),以及 Windows 與 macOS 執行器,已列入產品藍圖。
  • 不適合以 Gradle 建置的 Android 配套應用程式,或 Java 服務。Maven 與 Java 已列入產品藍圖,目前不支援。iOS 應用程式需要 macOS 執行器,同樣已列入產品藍圖。
  • 不適合軟體多年前就已建置、目前已在現場運作的機械。CRACI 是在建置執行時記錄。
  • 不是機械本身的控制功能。識別機械上已安裝的軟體、收集介入的證據,以及保存追蹤紀錄,都是 1.1.9 與 1.2.1 所要求的機械功能。CRACI 不提供這些功能、不對韌體進行簽章,也不執行符合性評鑑。
  • 本身不負責長期封存。建置紀錄依您方案的保存期限保留。請將 SBOM 匯出至您的技術文件,以因應十年的保存期限。

機械資安完整解說

關於機械法規、CRA 與機械上軟體的常見問題

歐盟機械法規何時開始適用?

自 2027 年 1 月 20 日起。Regulation (EU) 2023/1230 將於該日取代機械指令。最初公布的文本記載為 2027 年 1 月 14 日,後經更正為 2027 年 1 月 20 日。自該日起投入歐盟市場的機械,必須符合其基本健康與安全要求,包括附錄 III 中與資安相關的 1.1.9 與 1.2.1。

機械法規中有哪些資安要求?

附錄 III 1.1.9,防止竄改與損毀:連接其他裝置不得造成危險,對安全至關重要的軟體與資料必須受到保護,機械必須隨時識別其與安全相關的軟體,並收集介入的證據。附錄 III 1.2.1:控制系統必須能抵禦可合理預見的惡意企圖,並保存機械上市後所上傳安全軟體版本的追蹤紀錄。

Cyber Resilience Act 適用於機械嗎?

適用,前提是機械或其零組件屬於具數位元素的產品,實務上就是具有資料連線。CRA 並未排除機械。其通報義務自 2026 年 9 月 11 日起已經適用,並將自 2027 年 12 月 11 日起全面適用,比機械法規晚十一個月。

機械符合 CRA,是否也就符合機械法規?

不會自動符合。兩者之間沒有符合性推定。CRA 指出,符合其要求可能有助於符合 1.1.9 與 1.2.1,但製造商必須加以證明,而且兩項符合性評鑑程序都適用。機械法規自身的符合性推定,是透過歐盟資安驗證方案。一套佐證資料可以同時用於兩者。

機械製造商需要 SBOM 嗎?

對於屬於 CRA 適用範圍的機械,需要:CRA 要求製造商製作至少涵蓋頂層相依套件的 SBOM。機械法規並未明文提及 SBOM,但 1.1.9 要求機械識別其安全運作所需的軟體;若沒有每個軟體版本的紀錄,很難在眾多配置之間保持正確。

供應商 ECU 中的軟體由誰負責?

雙方都有責任,但角色不同。單獨將 ECU 投入市場的供應商,就該元件而言是 CRA 下的製造商。機械製造商則對整台機械負責,並必須對其整合的元件善盡審慎查核義務,這正是機械製造商現在要求供應商提供符合既定標準之 SBOM 的原因。

曳引機屬於機械法規還是 CRA 的範圍?

屬於 Regulation (EU) No 167/2013 範圍的農林用曳引機排除於機械法規之外,但安裝在其上的機械除外。CRA 的排除項目並未列出該法規,因此聯網的曳引機可能屬於 CRA 的適用範圍。請自行確認您產品的分類;本文為一般性資訊,並非法律意見。

CRACI 支援哪些 CI 系統與建置機器?

CRACI 在 Linux 執行器上執行 GitHub Actions 作業,支援 x86-64 與 ARM64,從 1 到 32 vCPU。其他 CI 系統(例如 GitLab CI 與 Jenkins),以及 Windows 與 macOS 執行器,已列入產品藍圖。

看看您的機械軟體建置包含了什麼

預約示範,我們將為您展示控制器、顯示器與車載資通訊建置所引入的每一個元件,以及其中哪些有漏洞

預約示範