Vergelijking
CRACI vs Exein
Exein beveiligt het apparaat: een agent die erop draait en een firmware-analyzer vóór de release. CRACI beveiligt de build: de runner waarop uw Yocto-image wordt gebouwd, en de vastlegging van wat erin is gegaan.
Bijgewerkt op
Het korte antwoord
Exein maakt beveiligingsproducten voor embedded en verbonden apparaten. Exein Runtime bewaakt en blokkeert dreigingen op het apparaat zelf, en Exein Analyzer scant firmware op kwetsbaarheden vóór de release. De Yocto-laag, meta-exein, zet de runtime-agent in uw image. CRACI is een GitHub Actions-runner: uw Yocto-build draait erop, en CRACI legt vast wat de build heeft gedownload en beperkt waarmee die verbinding kan maken. Exein werkt op het apparaat en de firmware; CRACI werkt op de build. De meeste teams die beide nodig hebben, zullen beide gebruiken.
In één oogopslag
| Functie | CRACI | Exein |
|---|---|---|
| Draait uw Yocto-builds | BitBake op runners tot 32 vCPU's | Integreert in uw bestaande pipeline |
| Legt vast wat de build ophaalde | Tijdens elke job waargenomen door de runner | Analyseert de firmware, of een SBOM die u aanlevert |
| Egressbeleid terwijl de build draait | Gecontroleerd vóór de job, fail-closed | Buiten de scope |
| Beveiligingsagent op het apparaat | Exein Runtime, gebouwd op eBPF | |
| Yocto-laag voor uw image | CRACI draait de build, voegt niets toe aan de image | meta-exein voegt Pulsar toe aan de image |
| Binaire firmwareanalyse | Exein Analyzer | |
| Prioritering op reachability | Reachability-scores en LLM-filtering | |
| SBOM | Uit de build, met een volledigheidsstatus | Gegenereerd door Exein Analyzer |
| CRA-bewijs | SBOM's in CycloneDX of SPDX, gegevens via API; geen rapportexport | Koppeling van CRA-bewijs in Analyzer |
- Inbegrepen
- Gedeeltelijk
- Niet inbegrepen
Wat de Yocto-integratie van Exein is
De twee producten zijn makkelijk te verwarren omdat beide Yocto noemen, dus precisie loont. meta-exein is een open-source Yocto-laag die "contains Pulsar and kernel recipes to add the Pulsar security framework to an image." U voegt de laag toe aan bblayers.conf, zet pulsar achter IMAGE_INSTALL en schakelt BTF in, en uw image wordt geleverd met Pulsar, de op eBPF gebaseerde runtime-beveiligingstool van Exein. De laag is getest op Yocto-releases vanaf Kirkstone en werd in 2024 een officiële Yocto Project Compatible-laag. Exein werd in 2023 Platinum Member van het Yocto Project.
Met andere woorden: de laag van Exein verandert wat er op het apparaat draait. Hij draait uw build niet en legt niet vast wat de build ophaalde. Exein zegt ook dat Exein Analyzer "natively integrated into Yocto, Buildroot, and your CI/CD pipeline" is, zodat het elke nieuwe build scant; dat is analyse van de builduitvoer binnen uw eigen pipeline.
Waar Exein sterk in is
Runtimebescherming op het apparaat. Exein Runtime is geschreven in Rust en gebruikt eBPF om kwaadaardig gedrag op kernelniveau te monitoren en te blokkeren, "the moment it tries to run." Over een hele vloot traceert het incidenten en genereert het forensische en compliancerapporten uit runtime-telemetrie. Exein publiceert ook Pulsar, "a modular and blazing fast runtime security tool for the IoT, powered by eBPF," als open source.
Firmwareanalyse vóór de release. Exein Analyzer inspecteert de definitieve firmware rechtstreeks, of verwerkt uw SBOM wanneer de binary niet beschikbaar is. Exein zegt dat het Linux, RTOS, Docker, UEFI, Android en meer dekt, en reachability-scores en LLM-filtering gebruikt om exploiteerbare CVE's vooraan te zetten.
Remediatie en CRA-koppeling. Exein beschrijft AI-gestuurde remediatie die binnen Yocto- en CI/CD-pipelines draait, en koppelt bevindingen aan eisen van de Cyber Resilience Act.
Waarin CRACI verschilt
Het draait de build
Yocto-builds zijn lang en zwaar. CRACI draait BitBake vanuit uw GitHub Actions-workflow op runners met maximaal 32 vCPU's en 96 GB RAM, ingesteld met cracicorp/setup@v1 en size: "32". Jobs draaien in geïsoleerde virtuele machines, en de runs verschijnen nog steeds in GitHub.
Het legt vast wat de build ophaalde
Terwijl een job draait, observeert CRACI het verkeer naar pakket- en bronhosts en bewaart het dat als buildbewijs, met een volledigheidsstatus per job en per cache. Voor Yocto is dat een onafhankelijk verslag van wat er over het netwerk is binnengekomen, inclusief wat de SPDX-SBOM van de create-spdx-klasse van Yocto weglaat: in een vergelijkende build van core-image-sato bevatte de SBOM van CRACI elk component uit die van Yocto, plus 88 andere zoals hostpakketten en GitHub Actions, en een package-URL voor elk van de 653 versies van Rust-crates die Yocto zonder package-URL vermeldt. Bronnen die BitBake van de Yocto-bronmirror ophaalt, worden vastgelegd in de job-SBOM van CRACI.
Het bepaalt waarmee de build verbinding kan maken
BitBake kan zijn fetcher beperken met BB_ALLOWED_NETWORKS. CRACI voegt daar een egressbeleid op de runner aan toe, dat wordt gevalideerd voordat de job start en fail-closed is, zodat een script of tool die om de fetcher heen gaat nog steeds geen host kan bereiken die u niet hebt toegestaan. CRACI waarschuwt u bij een overtreding.
Het houdt in de gaten wat is geleverd
De API levert SBOM's, netwerktraces en herkomstgegevens. CRACI bundelt kwetsbaarheden over builds en repositories heen en blijft gemonitorde SBOM's opnieuw beoordelen.
CRACI zet niets op het apparaat en analyseert geen binaries. Hebt u runtimebescherming of een scan van een afgewerkte image nodig, dan is dat het terrein van Exein.
Een inventaris van wat waar is uitgerold
De inventarisweergave van CRACI toont precies welke softwareversies in welke producten zijn uitgerold, wereldwijd. Wordt er een nieuwe kwetsbaarheid bekend, dan ziet u welke producten de getroffen versie draaien, in plaats van het bij elkaar te zoeken uit release notes en spreadsheets.
Wanneer u welke gebruikt, en wanneer beide
- U wilt dreigingsdetectie en blokkering op apparaten in het veld. Exein Runtime. CRACI heeft geen component op het apparaat.
- Uw Yocto-builds draaien op een server onder een bureau, of duren uren op kleine CI-runners. CRACI draait ze vanuit GitHub Actions en bewaart een vastlegging van elke build.
-
U levert een Yocto-image met
meta-exein. Bouw die op CRACI. De laag bouwt zoals elke andere, en CRACI legt vast wat de build ophaalde. - U moet laten zien waar de SBOM vandaan komt. De runnervastlegging van CRACI koppelt de SBOM aan een specifieke build. De scan van de output door Exein Analyzer is een nuttige tweede blik.
Voor de CRA
De Cyber Resilience Act vraagt fabrikanten de componenten in hun producten te documenteren, onder meer met een SBOM, kwetsbaarheden gedurende de ondersteuningsperiode af te handelen en, vanaf september 2026, actief uitgebuite kwetsbaarheden te melden. Exein helpt aan de kant van het apparaat, met firmwareanalyse vóór de release, koppeling van CRA-bewijs en runtime-telemetrie uit het veld. CRACI helpt aan de kant van de build, met bewijs per build van wat er in de firmware is gegaan, herkomstgegevens, doorlopende monitoring en SBOM-export als CycloneDX of SPDX. CRACI automatiseert een aanzienlijk deel van het inzicht in de softwareketen en het bewijs dat fabrikanten nodig hebben voor hun bredere CRA-nalevingsproces; het maakt een product niet op zichzelf compliant. Lees wat de CRA vereist.
CRACI toevoegen aan een Yocto-workflow
Houd uw lagen, inclusief meta-exein, en uw stap met Exein Analyzer. Stel runs-on: craci in op de buildjob en kies een runnerformaat. Het Yocto-voorbeeld in de CRACI-documentatie bouwt core-image-sato met de officiële Yocto-bronmirror en een bijpassende instelling voor BB_ALLOWED_NETWORKS. CRACI ondersteunt vandaag alleen GitHub Actions, met GitLab CI en Jenkins op de roadmap. Bekijk hoe CRACI werkt voor industrieel IoT en consumentenelektronica.
Neem een Yocto-build mee naar de demo
Boek een demo, dan draaien we een van uw BitBake-builds op een CRACI-runner en lopen we door wat die heeft opgehaald.
Demo boeken