Sammenligning
CRACI vs Exein
Exein sikrer enheden: en agent, der kører på den, og en firmwareanalysator før release. CRACI sikrer buildet: den runner, dit Yocto-image bygges på, og registreringen af, hvad der gik ind i det.
Opdateret
Det korte svar
Exein laver sikkerhedsprodukter til embedded og forbundne enheder. Exein Runtime overvåger og blokerer trusler på selve
enheden, og Exein Analyzer scanner firmware for sårbarheder før release. Dets Yocto-lag,
meta-exein, lægger runtime-agenten ind i dit image. CRACI er en GitHub Actions-runner: Dit Yocto-build kører
på den, og CRACI registrerer, hvad buildet downloadede, og begrænser, hvad det kan forbinde sig til. Exein arbejder på
enheden og firmwaren; CRACI arbejder på buildet. De fleste teams, der har brug for begge dele, vil bruge begge.
Overblik
| Funktion | CRACI | Exein |
|---|---|---|
| Kører dine Yocto-builds | BitBake på runnere op til 32 vCPU | Integreres i din eksisterende pipeline |
| Registrerer, hvad buildet hentede | Observeret af runneren under hvert job | Analyserer firmwaren eller en SBOM, du leverer |
| Egress-politik, mens buildet kører | Kontrolleres før jobbet, blokerer ved fejl (fail closed) | Uden for dets område |
| Sikkerhedsagent på enheden | Exein Runtime, bygget på eBPF | |
| Yocto-lag til dit image | CRACI kører buildet og tilføjer intet til imaget | meta-exein tilføjer Pulsar til imaget |
| Binær firmwareanalyse | Exein Analyzer | |
| Prioritering med reachability | Reachability-scoring og LLM-filtrering | |
| SBOM | Fra buildet, med en fuldstændighedsstatus | Genereret af Exein Analyzer |
| CRA-dokumentation | SBOM'er i CycloneDX eller SPDX, registreringer via API; ingen rapporteksport | Kortlægning af CRA-dokumentation i Analyzer |
- Inkluderet
- Delvist
- Ikke inkluderet
Hvad Exeins Yocto-integration er
De to produkter er lette at forveksle, fordi begge nævner Yocto, så det er værd at være præcis.
meta-exein er et open source Yocto-lag, der "contains Pulsar and kernel recipes to add the Pulsar security
framework to an image." Du tilføjer laget til bblayers.conf, føjer pulsar til
IMAGE_INSTALL og aktiverer BTF, og så leveres dit image med Pulsar, Exeins eBPF-baserede værktøj til
runtime-sikkerhed. Laget er testet på Yocto-releases fra Kirkstone og frem og blev i 2024 et officielt Yocto Project
Compatible-lag. Exein blev Platinum Member af Yocto Project i 2023.
Med andre ord ændrer Exeins lag, hvad der kører på enheden. Det kører ikke dit build og registrerer ikke, hvad buildet hentede. Exein siger også, at Exein Analyzer er "natively integrated into Yocto, Buildroot, and your CI/CD pipeline", så det scanner hvert nyt build, hvilket er analyse af build-outputtet inde i din egen pipeline.
Hvad Exein gør godt
Runtime-beskyttelse på enheden. Exein Runtime er skrevet i Rust og bruger eBPF til at overvåge og blokere ondsindet adfærd på kerneniveau, "the moment it tries to run." På tværs af en flåde sporer det hændelser og genererer forensik- og compliance-rapporter ud fra runtime-telemetri. Exein udgiver også Pulsar, "a modular and blazing fast runtime security tool for the IoT, powered by eBPF," som open source.
Firmwareanalyse før release. Exein Analyzer undersøger den færdige firmware direkte eller indlæser din SBOM, når binærfilen ikke er tilgængelig. Exein siger, at det dækker Linux, RTOS, Docker, UEFI, Android og mere, og bruger reachability-scoring og LLM-drevet filtrering til at sætte udnyttelige CVE'er først.
Afhjælpning og CRA-kortlægning. Exein beskriver AI-drevet afhjælpning, der kører inde i Yocto- og CI/CD-pipelines, og kortlægger fund til kravene i Cyber Resilience Act.
Hvor CRACI er anderledes
Det kører buildet
Yocto-builds er lange og tunge. CRACI kører BitBake fra dit GitHub Actions-workflow på runnere med op til 32 vCPU og
96 GB RAM, angivet med cracicorp/setup@v1 og size: "32". Jobs kører i isolerede virtuelle
maskiner, og kørslerne vises stadig i GitHub.
Det registrerer, hvad buildet hentede
Mens et job kører, observerer CRACI trafik til pakke- og kildeværter og gemmer den som build-dokumentation, med en
fuldstændighedsstatus pr. job og pr. cache. For Yocto er det en uafhængig redegørelse for, hvad der kom over netværket,
inklusive det, som SPDX-SBOM'en fra Yoctos create-spdx-klasse udelader: I et
sammenlignende build af core-image-sato indeholdt CRACI's SBOM alle
komponenter i Yoctos, 88 flere, for eksempel værtspakker og GitHub Actions, og en package URL for hver af de 653 versioner af
Rust-crates, som Yocto lister uden en. Kilder, BitBake henter fra Yocto-kildespejlet, registreres i CRACI's job-SBOM.
Det styrer, hvad buildet kan forbinde sig til
BitBake kan begrænse sin fetcher med BB_ALLOWED_NETWORKS. CRACI tilføjer en egress-politik på runneren,
valideret før jobbet starter og blokerende ved fejl (fail closed), så et script eller værktøj, der går uden om fetcheren, stadig
ikke kan nå en vært, du ikke har tilladt. CRACI advarer dig ved en overtrædelse.
Det holder øje med det leverede
API'et returnerer SBOM'er, netværkstraces og provenance. CRACI samler sårbarheder på tværs af builds og repositories og genvurderer løbende overvågede SBOM'er.
CRACI lægger ikke noget på enheden og analyserer ikke binærfiler. Har du brug for runtime-beskyttelse eller en scanning af et færdigt image, er det Exeins område.
Et inventar over, hvad der er udrullet hvor
CRACI's inventaroversigt viser præcis, hvilke softwareversioner der er udrullet til hvilke produkter, globalt. Når en ny sårbarhed dukker op, kan du se, hvilke produkter der kører den berørte version, i stedet for at stykke det sammen fra release notes og regneark.
Hvornår du skal bruge hvilken, og hvornår du skal bruge begge
- Du vil have opdagelse og blokering af trusler på enheder i felten. Exein Runtime. CRACI har ingen komponent på enheden.
- Dine Yocto-builds kører på en server under et skrivebord eller tager timer på små CI-runnere. CRACI kører dem fra GitHub Actions og gemmer en registrering af hvert enkelt.
-
Du leverer et Yocto-image med
meta-exein. Byg det på CRACI. Laget bygger som ethvert andet, og CRACI registrerer, hvad buildet hentede. - Du skal vise, hvor SBOM'en kom fra. CRACI's runner-registrering knytter SBOM'en til et bestemt build. Exein Analyzers scanning af outputtet er en nyttig ekstra vinkel.
Til CRA
Cyber Resilience Act kræver, at producenter dokumenterer komponenterne i deres produkter, herunder med en SBOM, håndterer sårbarheder gennem supportperioden og fra september 2026 rapporterer aktivt udnyttede sårbarheder. Exein hjælper på enhedssiden med firmwareanalyse før release, kortlægning af CRA-dokumentation og runtime-telemetri fra felten. CRACI hjælper på build-siden med dokumentation pr. build for, hvad der gik ind i firmwaren, provenance, løbende overvågning og SBOM-eksport som CycloneDX eller SPDX. CRACI automatiserer en væsentlig del af den synlighed i og dokumentation for softwareforsyningskæden, som producenter har brug for i deres bredere CRA-compliance-proces; det gør ikke et produkt compliant alene. Læs hvad CRA kræver.
Tilføj CRACI til et Yocto-workflow
Behold dine lag, inklusive meta-exein, og dit Exein Analyzer-trin. Sæt runs-on: craci på
build-jobbet, og vælg en runnerstørrelse. Yocto-eksemplet i CRACI's dokumentation bygger core-image-sato med det officielle Yocto-kildespejl og
en matchende BB_ALLOWED_NETWORKS-indstilling. CRACI understøtter kun GitHub Actions i dag, med GitLab CI og
Jenkins på roadmappen. Se, hvordan CRACI fungerer til
industriel IoT og forbrugerelektronik.
Tag et Yocto-build med til demoen
Book en demo, så kører vi et af dine BitBake-builds på en CRACI-runner og gennemgår, hvad det hentede.
Book en demo