Sammenligning
CRACI vs. Exein
Exein sikrer enheten: en agent som kjører på den, og en firmwareanalysator før utgivelse. CRACI sikrer bygget: runneren Yocto-imaget ditt bygges på, og registreringen av hva som gikk inn i det.
Oppdatert
Det korte svaret
Exein lager sikkerhetsprodukter for innebygde og tilkoblede enheter. Exein Runtime overvåker og blokkerer trusler på
selve enheten, og Exein Analyzer skanner firmware for sårbarheter før utgivelse. Yocto-laget,
meta-exein, legger runtime-agenten inn i imaget ditt. CRACI er en GitHub Actions-runner: Yocto-bygget ditt
kjører på den, og CRACI registrerer hva bygget lastet ned, og begrenser hvor det kan koble seg til. Exein
jobber på enheten og firmwaren; CRACI jobber på bygget. De fleste team som trenger begge deler, kommer til å bruke begge.
Oversikt
| Funksjon | CRACI | Exein |
|---|---|---|
| Kjører Yocto-byggene dine | BitBake på runnere med opptil 32 vCPU-er | Integreres i pipelinen du allerede har |
| Registrerer hva bygget hentet | Observert av runneren under hver jobb | Analyserer firmwaren, eller en SBOM du leverer |
| Egress-policy mens bygget kjører | Sjekkes før jobben, blokkerer ved feil (fail closed) | Utenfor omfanget |
| Sikkerhetsagent på enheten | Exein Runtime, bygget på eBPF | |
| Yocto-lag for imaget ditt | CRACI kjører bygget, legger ingenting til i imaget | meta-exein legger Pulsar til i imaget |
| Binæranalyse av firmware | Exein Analyzer | |
| Prioritering med reachability | Reachability-score og LLM-filtrering | |
| SBOM | Fra bygget, med en fullstendighetsstatus | Generert av Exein Analyzer |
| CRA-dokumentasjon | SBOM-er i CycloneDX eller SPDX, registreringer via API; ingen rapporteksport | Kartlegging av CRA-dokumentasjon i Analyzer |
- Inkludert
- Delvis
- Ikke inkludert
Hva Exeins Yocto-integrasjon er
De to produktene er lette å forveksle fordi begge nevner Yocto, så her er det verdt å være presis.
meta-exein er et Yocto-lag med åpen kildekode som "contains Pulsar and kernel recipes to add the Pulsar
security framework to an image." Du legger laget til i bblayers.conf, føyer pulsar til
IMAGE_INSTALL og aktiverer BTF, og imaget ditt leveres med Pulsar, Exeins eBPF-baserte verktøy for
runtime-sikkerhet. Laget er testet på Yocto-utgivelser fra Kirkstone og fremover og ble et offisielt Yocto Project Compatible-lag
i 2024. Exein ble med i Yocto Project som Platinum Member i 2023.
Med andre ord endrer Exeins lag hva som kjører på enheten. Det kjører ikke bygget ditt og registrerer ikke hva bygget hentet. Exein sier også at Exein Analyzer er "natively integrated into Yocto, Buildroot, and your CI/CD pipeline", slik at det skanner hvert nye bygg, noe som er analyse av byggeresultatet inne i din egen pipeline.
Hva Exein gjør bra
Runtime-beskyttelse på enheten. Exein Runtime er skrevet i Rust og bruker eBPF til å overvåke og blokkere ondsinnet atferd på kjernenivå, "the moment it tries to run." På tvers av en enhetsflåte sporer det hendelser og genererer forensisk rapportering og samsvarsrapportering fra telemetri under kjøring. Exein publiserer også Pulsar, "a modular and blazing fast runtime security tool for the IoT, powered by eBPF," som åpen kildekode.
Firmwareanalyse før utgivelse. Exein Analyzer inspiserer den ferdige firmwaren direkte, eller tar inn SBOM-en din når binærfilen ikke er tilgjengelig. Exein sier at det dekker Linux, RTOS, Docker, UEFI, Android og mer, og bruker reachability-score og LLM-basert filtrering for å sette utnyttbare CVE-er først.
Utbedring og CRA-kartlegging. Exein beskriver AI-drevet utbedring som kjører inne i Yocto- og CI/CD-pipelines, og kartlegger funn mot kravene i Cyber Resilience Act.
Der CRACI skiller seg ut
Det kjører bygget
Yocto-bygg er lange og tunge. CRACI kjører BitBake fra GitHub Actions-workflowen din på runnere med opptil 32 vCPU-er
og 96 GB RAM, satt med cracicorp/setup@v1 og size: "32". Jobber kjører i isolerte
virtuelle maskiner, og kjøringene vises fortsatt i GitHub.
Det registrerer hva bygget hentet
Mens en jobb kjører, observerer CRACI trafikk til pakke- og kildeverter og beholder den som byggedokumentasjon, med en
fullstendighetsstatus per jobb og per cache. For Yocto er det en uavhengig oversikt over hva som kom over nettverket,
inkludert det SPDX-SBOM-en fra Yoctos create-spdx-klasse utelater: I et
bygg av core-image-sato sammenlignet side om side hadde CRACIs SBOM hver
komponent Yoctos hadde, 88 flere, for eksempel vertspakker og GitHub Actions, og en pakke-URL for hver av de 653 Rust-crate-versjonene
Yocto lister uten en slik. Kilder BitBake henter fra Yocto-kildespeilet, blir registrert i
CRACI-jobbens SBOM.
Det kontrollerer hvor bygget kan koble seg til
BitBake kan begrense henteren sin med BB_ALLOWED_NETWORKS. CRACI legger til en egress-policy på runneren
som valideres før jobben starter og blokkerer ved feil (fail closed), så et skript eller verktøy som går utenom henteren, likevel ikke kan
nå en vert du ikke har tillatt. CRACI varsler deg ved brudd.
Det følger med på det som ble levert
API-et returnerer SBOM-er, nettverksspor og provenance. CRACI samler sårbarheter på tvers av bygg og repositorier og fortsetter å vurdere overvåkede SBOM-er på nytt.
CRACI legger ingenting på enheten og analyserer ikke binærfiler. Trenger du runtime-beskyttelse eller en skanning av et ferdig image, er det Exeins område.
En oversikt over hva som er rullet ut hvor
Inventarvisningen i CRACI viser nøyaktig hvilke programvareversjoner som er rullet ut til hvilke produkter, globalt. Når en ny sårbarhet dukker opp, kan du se hvilke produkter som kjører den berørte versjonen, i stedet for å pusle det sammen fra utgivelsesnotater og regneark.
Når du bør bruke hvilken, og når du bør bruke begge
- Du vil ha trusseldeteksjon og blokkering på enheter ute i felt. Exein Runtime. CRACI har ingen komponent på enheten.
- Yocto-byggene dine kjører på en server under et skrivebord, eller tar timer på små CI-runnere. CRACI kjører dem fra GitHub Actions og beholder en registrering av hvert enkelt.
-
Du leverer et Yocto-image med
meta-exein. Bygg det på CRACI. Laget bygges som alle andre, og CRACI registrerer hva bygget hentet. - Du må vise hvor SBOM-en kom fra. CRACIs runnerregistrering knytter SBOM-en til et bestemt bygg. Exein Analyzers skanning av resultatet er et nyttig andre perspektiv.
For CRA
Cyber Resilience Act ber produsenter dokumentere komponentene i produktene sine, inkludert en SBOM, håndtere sårbarheter gjennom støtteperioden og, fra september 2026, rapportere aktivt utnyttede sårbarheter. Exein hjelper på enhetssiden, med firmwareanalyse før utgivelse, kartlegging av CRA-dokumentasjon og telemetri under kjøring fra felt. CRACI hjelper på byggesiden, med dokumentasjon per bygg av hva som gikk inn i firmwaren, provenance, løpende overvåking og SBOM-eksport som CycloneDX eller SPDX. CRACI automatiserer en betydelig del av innsynet i programvareleverandørkjeden og dokumentasjonen som produsenter trenger for sin bredere CRA-samsvarsprosess; det gjør ikke et produkt samsvarende på egen hånd. Les hva CRA krever.
Slik legger du CRACI til i en Yocto-workflow
Behold lagene dine, inkludert meta-exein, og Exein Analyzer-steget. Sett runs-on: craci
på byggejobben og velg en runnerstørrelse. Yocto-eksempelet i CRACI-dokumentasjonen bygger core-image-sato med det offisielle Yocto-kildespeilet og en
tilsvarende BB_ALLOWED_NETWORKS-innstilling. CRACI støtter bare GitHub Actions i dag, med GitLab CI og Jenkins på
veikartet. Se hvordan CRACI fungerer for
industriell IoT og forbrukerelektronikk.
Ta med et Yocto-bygg til demoen
Book en demo, så kjører vi et av BitBake-byggene dine på en CRACI-runner og går gjennom hva det hentet.
Book en demo