Cyberbeveiliging voor machinebouwers
Machines worden nu geleverd met besturingen, displays, telematica-units en companion-apps, de meeste gebouwd door leveranciers. Vanaf 2027 verwachten de machineverordening en de Cyber Resilience Act allebei dat u weet welke software er op elke machine staat en die jarenlang veilig houdt. CRACI legt vast wat er in elke softwarebuild gaat.
Twee verordeningen, één vraag: welke software staat er op de machine?
Vanaf 2027 valt een machine met een besturing, een bedieningsdisplay of een dataverbinding onder twee EU-verordeningen. Beide beginnen bij dezelfde vraag: welke software staat er op deze machine, versie voor versie, en wat zit erin?
- De meldplicht van de Cyber Resilience Act voor actief uitgebuite kwetsbaarheden en ernstige incidenten gaat gelden.
- De machineverordening, (EU) 2023/1230, gaat gelden en vervangt de machinerichtlijn.
- De Cyber Resilience Act, (EU) 2024/2847, is volledig van toepassing.
Machineverordening
Twee essentiële veiligheids- en gezondheidseisen in bijlage III gaan over cyberbeveiliging:
- 1.1.9, bescherming tegen corruptie. Het direct of op afstand verbinden van een ander apparaat met de machine mag niet leiden tot een gevaarlijke situatie. Software en gegevens die cruciaal zijn voor de overeenstemming van de machine met de essentiële veiligheids- en gezondheidseisen moeten worden geïdentificeerd en beschermd tegen onopzettelijke of opzettelijke corruptie. De machine moet de daarop geïnstalleerde software identificeren die zij nodig heeft om veilig te werken, en die informatie te allen tijde verstrekken. Ook moet zij bewijs verzamelen van rechtmatige of onrechtmatige ingrepen in die software of de configuratie ervan.
- 1.2.1, veiligheid en betrouwbaarheid van besturingssystemen. Besturingssystemen moeten bestand zijn tegen redelijkerwijs voorzienbare kwaadwillige pogingen van derden die tot een gevaarlijke situatie leiden. Volgens 1.2.1(f) moeten ze een traceerlog bijhouden van ingrepen en van de versies van veiligheidssoftware die zijn geüpload nadat de machine in de handel is gebracht, tot vijf jaar na de upload.
Cyber Resilience Act
Een machine met een dataverbinding, of een los verkocht onderdeel ervan, is een product met digitale elementen. De fabrikant moet gepaste zorgvuldigheid betrachten bij de componenten van derden die hij integreert, een SBOM opstellen die ten minste de afhankelijkheden op het hoogste niveau omvat, kwetsbaarheden afhandelen gedurende de ondersteuningsperiode, die ten minste vijf jaar bedraagt tenzij het product naar verwachting korter wordt gebruikt, en de technische documentatie ten minste tien jaar of gedurende de ondersteuningsperiode bewaren, afhankelijk van welke langer is.
| Eis | Machineverordening | Cyber Resilience Act | Wat de softwarekant ervoor nodig heeft |
|---|---|---|---|
| De geïnstalleerde software kennen | 1.1.9: de machine identificeert te allen tijde de software die zij nodig heeft om veilig te werken | Een SBOM die ten minste de afhankelijkheden op het hoogste niveau omvat | Een vastlegging van elk component in elke softwareversie |
| Beschermen tegen corruptie | 1.1.9 en 1.2.1: veiligheidssoftware beschermen en bestand zijn tegen kwaadwillige pogingen | Essentiële cyberbeveiligingseisen voor het product | Bekende componenten, en builds waar een vergiftigde afhankelijkheid niet in kan doordringen |
| Wijzigingen en versies vastleggen | 1.2.1(f): log van versies van veiligheidssoftware die na het in de handel brengen zijn geüpload | Technische documentatie voor het in de handel gebrachte product | Versiegeschiedenis per build en per release |
| Kwetsbaarheden afhandelen | Niet als zodanig genoemd | Afhandeling van kwetsbaarheden gedurende de ondersteuningsperiode; meldplicht sinds 11 september 2026 | Geleverde componenten monitoren op nieuwe advisories |
| De vastleggingen bewaren | Traceerlog: vijf jaar na elke upload | Technische documentatie: ten minste tien jaar of de ondersteuningsperiode | SBOM's geëxporteerd naar de technische documentatie |
Dekt naleving van de CRA de machineverordening?
Niet automatisch. De Cyber Resilience Act geeft geen vermoeden van overeenstemming met de machineverordening. Overweging 53 zegt dat voldoen aan de essentiële eisen van de CRA de naleving kan vergemakkelijken van de eisen van de machineverordening inzake bescherming tegen corruptie en inzake de veiligheid en betrouwbaarheid van besturingssystemen. Ze zegt ook dat de fabrikant dit moet aantonen, bijvoorbeeld door na een risicobeoordeling geharmoniseerde normen toe te passen, en dat de conformiteitsbeoordelingsprocedures van beide verordeningen blijven gelden.
De geharmoniseerde norm die voor 1.1.9 wordt opgesteld, is EN 50742, Safety of machinery – Protection against corruption. In november 2026 lag die er als eindontwerp, FprEN 50742, dat 1.1.9 en de bijbehorende punten van 1.2.1 behandelt; zolang de referentie van een definitieve versie niet in het Publicatieblad van de EU is bekendgemaakt, geeft de norm geen vermoeden van overeenstemming. De norm combineert de risicobeoordeling van EN ISO 12100 met beveiligingsconcepten uit IEC 62443 en erkent consequente toepassing van IEC 62443-4-1, IEC 62443-3-3 en IEC 62443-4-2 als gelijkwaardige manier om de beschermingsdoelen te halen. IEC 62443-4-2 legt de technische beveiligingseisen vast voor componenten van besturingssystemen, ingedeeld naar security capability level. In Duitsland vertalen de keuringsprincipes GS-IFA-M25 van juli 2026 bescherming tegen corruptie in 66 toetscriteria, met de begrippen van prEN 50742. Een daarvan, T46, vraagt dat het product op verzoek de geïnstalleerde softwareversie en configuratie kan geven. Om dat voor elke configuratie te beantwoorden, is een vastlegging nodig van wat elke softwareversie bevat.
De machineverordening kent een eigen vermoeden, en dat loopt via een andere route: Europese regelingen voor cyberbeveiligingscertificering die zijn vastgesteld op grond van de cyberbeveiligingsverordening, Verordening (EU) 2019/881. Een certificaat of conformiteitsverklaring onder zo'n regeling geeft een vermoeden van overeenstemming met 1.1.9 en 1.2.1, voor zover die eisen erdoor worden gedekt.
Eén risicobeoordeling en één set bewijs kunnen dus beide verordeningen dienen, maar u toont de overeenstemming met elk afzonderlijk aan. Heeft uw machine een dataverbinding, plan dan voor beide. Het softwarebewijs, dus SBOM's, kwetsbaarheidsrecords en de updategeschiedenis, is het deel dat ze delen.
In januari 2026 vroegen brancheverenigingen van de machinebouw om uitstel van 1.1.9 en 1.2.1(f), en in maart 2026 om ze te laten gelden vanaf de datum van de CRA, 11 december 2027. Het is een verzoek, geen wet: per november 2026 was er geen uitstel vastgesteld. De data op deze pagina zijn de data in de verordeningen.
Welke machines en welke software eronder vallen
- Bouw-, materiaalbehandelings-, mijnbouw- en industriële machines vallen onder de machineverordening, en ook onder de CRA wanneer de machine of haar onderdelen een dataverbinding hebben.
- Landbouw- en bosbouwtrekkers die onder Verordening (EU) nr. 167/2013 vallen, zijn uitgesloten van de machineverordening, behalve de machines die erop zijn gemonteerd. De lijst met uitsluitingen van de CRA noemt die verordening niet, dus een verbonden trekker kan onder de CRA vallen.
- Wegvoertuigen die zijn goedgekeurd op grond van Verordening (EU) 2019/2144 zijn uitgesloten van de CRA.
- Los verkochte componenten. De CRA geldt ook voor software- en hardwarecomponenten die afzonderlijk in de handel worden gebracht. Een leverancier die een ECU of een telematica-unit los verkoopt, is zelf fabrikant onder de CRA. Wordt de unit alleen in de machine ingebouwd, dan draagt de machinebouwer de verplichting voor de hele machine en moet hij gepaste zorgvuldigheid betrachten bij het component van de leverancier.
Dit is algemene informatie, geen juridisch advies. Controleer de classificatie van uw eigen product.
Binnen één machine komt de software uit verschillende bronnen, en alleen het team dat een stuk software bouwt, kan betrouwbaar zeggen wat erin zit. Zoals we van machinebouwers horen, bevatten bare-metal-ECU's weinig open source, terwijl Linux-, Android- en Windows-software er veel bevat.
| Software | Typische herkomst | Aandeel open source | Wie een betrouwbare SBOM kan maken | Waar CRACI past |
|---|---|---|---|---|
| Applicatie van de machinebesturing | Eigen ontwikkeling of leverancier | Wisselend | Het team dat haar bouwt | Wanneer ze op GitHub Actions op Linux wordt gebouwd |
| ECU-firmware (hydrauliek, besturing, aandrijving) | Leverancier | Meestal laag: propriëtaire en uit modellen gegenereerde code | De leverancier | Niet direct: via de SBOM van de leverancier, toegevoegd aan CRACI |
| Linux-image voor display of HMI | Eigen ontwikkeling of leverancier | Hoog | Het team dat de image bouwt | Ja: Yocto- en andere embedded Linux-builds |
| Telematicagateway | Eigen ontwikkeling of leverancier | Hoog | Het team dat hem bouwt | Ja, wanneer hij op GitHub Actions wordt gebouwd |
| Diagnose- en companion-apps | Eigen ontwikkeling | Hoog | Het appteam | npm-, PyPI-, Go- en Cargo-builds ja; Android met Gradle, iOS- en Windows-apps vandaag niet |
| Cloudbackend | Eigen ontwikkeling | Hoog | Het serviceteam | Ja, voor builds op GitHub Actions |
Waarom machines lastiger zijn dan consumentenelektronica
Kleine aantallen, grote variatie. Een machinebouwer kan honderden platforms op de markt hebben, van elk maar een handvol eenheden per jaar verkopen en veel machines op bestelling configureren. Elke configuratie is een andere set software, dus een SBOM voor elke build telt zwaarder dan een SBOM voor elke productlijn.
Lange levensduur. Machines blijven tien jaar of langer in gebruik, terwijl leveranciers wisselen of verdwijnen. De vastlegging van wat er in een softwareversie is gegaan, moet ontstaan bij de build, want jaren later valt die niet meer te reconstrueren.
Leverancierssoftware overheerst, en SBOM's van leveranciers zijn vaak slecht. We horen over SBOM's van leveranciers met ontbrekende componenten, zonder package URL's of CPE's, zonder licenties en zonder hashes, sommige met de hand geschreven en niet door de schemavalidatie heen. Binaire analyse van een geflashte ECU is een noodoplossing: die raadt naar de inhoud in plaats van hem vast te leggen.
Het risico zit in de verbonden lagen. Veel ECU-logica wordt uit modellen gegenereerd en bevat weinig open source. De open source en de blootstelling aan het netwerk concentreren zich in de Linux-, connectiviteits- en applagen, dus besteed uw inspanning daar eerst.
Een illustratief voorbeeld: de softwarestack van een fictief wielladerplatform, van de cloud tot aan de ECU's.
- Cloudbackend en companion-appEigen ontwikkeling. Grotendeels open source en via het netwerk bereikbaar. Cyber Resilience Act.
- TelematicagatewayEmbedded Linux, grotendeels open source, verbonden met het mobiele netwerk. Cyber Resilience Act, en 1.1.9 voor de verbinding op afstand.
- BedieningsdisplayEmbedded Linux-image met een UI-framework, grotendeels open source, verbonden met de machinebus en met servicetools. Cyber Resilience Act en 1.1.9.
- MachinebesturingEigen applicatie op een leveranciersplatform, veiligheidsrelevant. 1.1.9 en 1.2.1, en de Cyber Resilience Act waar ze via een verbinding bereikbaar is.
- Hydrauliek-, besturings- en motor-ECU'sLeveranciersfirmware, propriëtair en uit modellen gegenereerd, weinig open source, veiligheidsrelevant. 1.1.9 en 1.2.1; de Cyber Resilience Act via de machine.
De open source en de blootstelling aan het netwerk zitten in de bovenste drie lagen, en daar draaien meestal ook uw eigen buildpipelines. Begin daar.
Zo bereidt u zich voor, stap voor stap
Machinefuncties zoals de identificatie van software op de machine en logs van ingrepen horen bij het ontwerp van de machine. De onderstaande stappen gaan over de software die erin gaat.
- Inventariseer de software op elk machineplatform. Maak een lijst van alle software op elk platform en elke configuratie, en markeer wat veiligheidsrelevant is. Dit is het startpunt voor 1.1.9, dat vraagt dat de machine de software identificeert die zij nodig heeft om veilig te werken.
- Scheid wat u bouwt van wat u integreert. Software die uw teams bouwen en software die van leveranciers komt, vragen om verschillende bewijsroutes. Voor de eerste maakt u de vastlegging zelf; voor de tweede stelt u eisen en controleert u wat u ontvangt.
- Leg elke releasebuild van uw eigen software vast. Maak uit elke releasebuild een SBOM, bewaar die per versie en monitor hem gedurende de hele ondersteuningsperiode op nieuwe kwetsbaarheden.
- Stel een minimumstandaard voor SBOM's van leveranciers vast. Spreek het formaat en de velden af die u nodig hebt, zoals package URL's of CPE's, licenties en hashes, valideer elke levering en stuur hem terug als hij niet voldoet. Zie hoe leveranciers SBOM-verzoeken van klanten beantwoorden.
- Plan de bewaring voor de levensduur van de machine. Bewaar de technische documentatie voor de CRA ten minste tien jaar of gedurende de ondersteuningsperiode, afhankelijk van welke langer is, en de log van veiligheidssoftware volgens 1.2.1(f) vijf jaar na elke upload. Plan voor de levensduur van de machine, niet voor de looptijd van het project.
- Organiseer de afhandeling en melding van kwetsbaarheden. De CRA-meldplicht voor actief uitgebuite kwetsbaarheden en ernstige incidenten geldt sinds 11 september 2026. Bepaal wie bevindingen trieert, wie eigenaar is van elke fix en wie meldt.
- Vergrendel de build zelf. Draai elke build in een geïsoleerde omgeving die alleen de bronnen kan bereiken die hij nodig heeft, zodat een gecompromitteerde afhankelijkheid uw broncode, secrets of release niet kan bereiken.
Waar CRACI past
CRACI draait uw GitHub Actions-builds op eigen runners en legt vast wat er in elke build gaat. Voor een machinebouwer dekt dat de software die uw teams bouwen en de SBOM's van leveranciers die u verzamelt.
Buildvastleggingen voor de machinesoftware die u bouwt
Draai uw besturingsservices en uw Linux-images voor display en telematica, inclusief Yocto- en andere embedded Linux-builds, op de GitHub Actions-runners van CRACI, tot 32 vCPU's, op x86-64 of native ARM64. Terwijl de build draait, legt CRACI elk pakket en bestand vast dat hij binnenhaalt, inclusief de verborgen afhankelijkheden die in geen enkele recipe of lockfile staan, en geeft het de SBOM van elke job een volledigheidsstatus. In een core-image-sato-build bevatte de SBOM van CRACI elk component uit de eigen SBOM van Yocto plus 88 die daarin ontbraken, met een package URL voor elk van de 653 Rust-crateversies. Meer over Yocto-builds op CRACI.
SBOM's van leveranciers naast uw eigen
Voeg SBOM's toe van uw leveranciers van ECU's, displays en telematica, en de ingekochte componenten worden gemonitord naast de software die u bouwt. Wanneer er een nieuwe kwetsbaarheid opduikt in de Linux-stack van een leverancier, staat die in dezelfde vastlegging als uw eigen software.
Welke machines zijn getroffen, en sinds wanneer
CRACI blijft gemonitorde SBOM's opnieuw beoordelen zodra er nieuwe kwetsbaarheden worden gepubliceerd. De buildgeschiedenis toont binnen de bewaartermijn van uw abonnement welke builds de kwetsbare afhankelijkheid bevatten, direct of transitief, en de inventarisweergave toont welke softwareversies in welke producten zijn uitgerold. Securityteams triëren elke bevinding en sturen die naar het team dat verantwoordelijk is voor de fix, en een policy gate kan een specifieke CVE uit elke latere build houden.
Bewijs voor het technisch dossier
CRACI levert het bewijs over de softwareketen dat uw technische documentatie nodig heeft: SBOM's uit de build, geëxporteerd als CycloneDX of SPDX, met transitieve afhankelijkheden, gedeclareerde licenties en de kwetsbaarheden die in hun componenten zijn gevonden, plus kwetsbaarheidsrecords en de buildgeschiedenis. Voor machines die onder de CRA vallen, stelt CRACI de inhoud van de CRA-meldingen op, en iemand in uw bedrijf dient ze in via het Single Reporting Platform. De conformiteitsbeoordeling, de EU-conformiteitsverklaring en de CE-markering blijven bij u, de fabrikant.
Een build die alleen bereikt wat hij nodig heeft
Elke job draait in zijn eigen geïsoleerde virtuele machine onder een egressbeleid dat wordt gevalideerd voordat de job start en bij een fout blokkeert (fail closed). Met een default-deny-beleid bereikt de build uw pakketbronnen en verder niets, en een verbinding met elke andere host wordt geblokkeerd en leidt tot een melding.
Voor leveranciers van ECU's, displays en telematica-units
Machinebouwers stellen nu SBOM-eisen aan de software die ze inkopen, zoals package URL's of CPE's, licenties, hashes en een formaat dat door de validatie komt, en sturen bestanden terug die niet voldoen. Als u op GitHub Actions bouwt, maakt CRACI de SBOM uit de build zelf, zodat die vermeldt wat er werkelijk in de release is gegaan, inclusief de componenten die in geen enkele lockfile staan, met een package URL en gedeclareerde licentie voor elk component. Controleer de export aan de hand van de volledige lijst velden die uw klant vraagt. Meer over het beantwoorden van SBOM-verzoeken van klanten.
Wanneer CRACI niet het antwoord is
CRACI past bij de software die u bouwt. Het past niet in deze gevallen:
- Niet voor een machinebouwer die alleen ECU's van leveranciers integreert en zelf geen software bouwt. CRACI legt builds vast; het kan geen SBOM maken voor een binary die iemand anders heeft gebouwd. Als vrijwel al uw software geflasht op leveranciershardware binnenkomt, zijn uw middelen SBOM-eisen aan leveranciers, SBOM-validatie en, als noodoplossing, binaire analyse, die CRACI niet doet (zie binaire analyse vergeleken met een vastlegging van de build). CRACI helpt u via de builds van uw leveranciers en door de SBOM's te monitoren die zij u geven.
- Niet voor bare-metal- of RTOS-firmware die buiten GitHub Actions wordt gebouwd, of op Windows of macOS. CRACI draait vandaag GitHub Actions-jobs op Linux-runners. Andere CI-systemen, zoals GitLab CI en Jenkins, en Windows- en macOS-runners staan op de roadmap.
- Niet voor Android-companion-apps die met Gradle worden gebouwd, of voor Java-services. Maven en Java staan op de roadmap en worden vandaag niet ondersteund. iOS-apps hebben macOS-runners nodig, die ook op de roadmap staan.
- Niet voor machines die al in het veld staan en waarvan de software jaren geleden is gebouwd. CRACI legt builds vast terwijl ze draaien.
- Niet de functies op de machine. De geïnstalleerde software op de machine identificeren, bewijs van ingrepen verzamelen en de traceerlog bijhouden zijn machinefuncties volgens 1.1.9 en 1.2.1. CRACI levert die niet, ondertekent geen firmware en voert de conformiteitsbeoordeling niet uit.
- Op zichzelf geen archivering voor de lange termijn. Buildvastleggingen worden bewaard gedurende de bewaartermijn van uw abonnement. Exporteer de SBOM's naar uw technische documentatie voor de horizon van tien jaar.
Cyberbeveiliging van machines uitgelegd
Veelgestelde vragen over de machineverordening, de CRA en de software op een machine
Wanneer gaat de EU-machineverordening gelden?
Vanaf 20 januari 2027. Verordening (EU) 2023/1230 vervangt op die datum de machinerichtlijn. De eerst gepubliceerde tekst noemde 14 januari 2027; een rectificatie corrigeerde dat naar 20 januari 2027. Machines die vanaf dan in de EU in de handel worden gebracht, moeten voldoen aan de essentiële veiligheids- en gezondheidseisen, inclusief de eisen over cyberbeveiliging in bijlage III, 1.1.9 en 1.2.1.
Wat zijn de cyberbeveiligingseisen in de machineverordening?
Bijlage III 1.1.9, bescherming tegen corruptie: het verbinden van een ander apparaat mag geen gevaar veroorzaken, veiligheidskritieke software en gegevens moeten worden beschermd, de machine moet haar veiligheidsrelevante software te allen tijde identificeren en bewijs van ingrepen verzamelen. Bijlage III 1.2.1: besturingssystemen moeten bestand zijn tegen redelijkerwijs voorzienbare kwaadwillige pogingen en een traceerlog bijhouden van versies van veiligheidssoftware die zijn geüpload nadat de machine in de handel is gebracht.
Is de Cyber Resilience Act van toepassing op machines?
Ja, wanneer de machine of een onderdeel ervan een product met digitale elementen is, wat in de praktijk betekent dat ze een dataverbinding heeft. De CRA sluit machines niet uit. De meldplichten gelden sinds 11 september 2026, en de CRA is volledig van toepassing vanaf 11 december 2027, elf maanden na de machineverordening.
Als een machine aan de CRA voldoet, voldoet ze dan ook aan de machineverordening?
Niet automatisch. Er is geen vermoeden van overeenstemming tussen de twee. De CRA zegt dat voldoen aan zijn eisen de naleving van 1.1.9 en 1.2.1 kan vergemakkelijken, maar de fabrikant moet dat aantonen, en beide conformiteitsbeoordelingsprocedures zijn van toepassing. Het eigen vermoeden van de machineverordening loopt via Europese regelingen voor cyberbeveiligingscertificering. Eén set bewijs kan beide dienen.
Heeft een machinebouwer een SBOM nodig?
Voor een machine die onder de CRA valt, ja: de CRA verplicht de fabrikant een SBOM op te stellen die ten minste de afhankelijkheden op het hoogste niveau omvat. De machineverordening noemt geen SBOM's, maar 1.1.9 vraagt dat de machine de software identificeert die zij nodig heeft om veilig te werken, en dat is over veel configuraties heen moeilijk actueel te houden zonder een vastlegging van elke softwareversie.
Wie is verantwoordelijk voor de software in de ECU van een leverancier?
Beiden, in verschillende rollen. Een leverancier die een ECU zelfstandig in de handel brengt, is voor dat component fabrikant onder de CRA. De machinebouwer is verantwoordelijk voor de hele machine en moet gepaste zorgvuldigheid betrachten bij de componenten die hij integreert. Daarom vragen machinebouwers leveranciers nu om SBOM's die aan een vastgestelde standaard voldoen.
Vallen trekkers onder de machineverordening of de CRA?
Landbouw- en bosbouwtrekkers die onder Verordening (EU) nr. 167/2013 vallen, zijn uitgesloten van de machineverordening, behalve de machines die erop zijn gemonteerd. De uitsluitingen van de CRA noemen die verordening niet, dus een verbonden trekker kan onder de CRA vallen. Controleer de classificatie van uw eigen product; dit is algemene informatie, geen juridisch advies.
Welke CI-systemen en buildmachines ondersteunt CRACI?
CRACI draait GitHub Actions-jobs op Linux-runners, x86-64 en ARM64, van 1 tot 32 vCPU's. Andere CI-systemen, zoals GitLab CI en Jenkins, staan op de roadmap, net als Windows- en macOS-runners.
Zie wat er in uw machinesoftwarebuilds gaat
Boek een demo, dan laten we elk component zien dat uw builds voor besturing, display en telematica binnenhalen, en welke daarvan kwetsbaar zijn
Demo boeken