Jämförelse
CRACI vs Exein
Exein säkrar enheten: en agent som körs på den och en firmwareanalysator före release. CRACI säkrar bygget: runnern som din Yocto-avbild byggs på och registreringen av vad som ingick i den.
Uppdaterad
Det korta svaret
Exein gör säkerhetsprodukter för inbyggda och uppkopplade enheter. Exein Runtime bevakar och blockerar hot på
själva enheten, och Exein Analyzer skannar firmware efter sårbarheter före release. Dess Yocto-lager,
meta-exein, lägger in körtidsagenten i din avbild. CRACI är en GitHub Actions-runner: ditt Yocto-bygge
körs på den, och CRACI registrerar vad bygget laddade ner och begränsar vart det kan ansluta. Exein
arbetar på enheten och firmwaren; CRACI arbetar på bygget. De flesta team som behöver båda kommer att använda båda.
I korthet
| Funktion | CRACI | Exein |
|---|---|---|
| Kör dina Yocto-byggen | BitBake på runners med upp till 32 vCPU | Integreras i din befintliga pipeline |
| Registrerar vad bygget hämtade | Observeras av runnern under varje jobb | Analyserar firmwaren, eller en SBOM du tillhandahåller |
| Egress-policy medan bygget körs | Kontrolleras före jobbet, blockerar vid fel | Utanför dess område |
| Säkerhetsagent på enheten | Exein Runtime, byggt på eBPF | |
| Yocto-lager för din avbild | CRACI kör bygget, lägger inget i avbilden | meta-exein lägger till Pulsar i avbilden |
| Binäranalys av firmware | Exein Analyzer | |
| Prioritering med reachability | Reachability-poäng och LLM-filtrering | |
| SBOM | Från bygget, med fullständighetsstatus | Genereras av Exein Analyzer |
| CRA-bevis | SBOM:er i CycloneDX eller SPDX, registreringar via API; ingen rapportexport | Bevis kopplade till CRA i Analyzer |
- Ingår
- Delvis
- Ingår inte
Vad Exeins Yocto-integration är
De två produkterna är lätta att blanda ihop eftersom båda nämner Yocto, så det är värt att vara exakt.
meta-exein är ett Yocto-lager med öppen källkod som "contains Pulsar and kernel recipes to add the Pulsar
security framework to an image." Du lägger till lagret i bblayers.conf, lägger till pulsar i
IMAGE_INSTALL och aktiverar BTF, så levereras din avbild med Pulsar, Exeins eBPF-baserade verktyg för
säkerhet under körning. Lagret är testat på Yocto-releaser från Kirkstone och framåt och blev ett officiellt Yocto Project Compatible-lager
2024. Exein gick med i Yocto Project som Platinum Member 2023.
Exeins lager ändrar med andra ord vad som körs på enheten. Det kör inte ditt bygge och registrerar inte vad bygget hämtade. Exein säger också att Exein Analyzer är "natively integrated into Yocto, Buildroot, and your CI/CD pipeline" så att den skannar varje nytt bygge, vilket är analys av byggresultatet inne i din egen pipeline.
Vad Exein gör bra
Skydd under körning på enheten. Exein Runtime är skrivet i Rust och använder eBPF för att bevaka och blockera skadligt beteende på kärnnivå, "the moment it tries to run." I en hel enhetsflotta spårar det incidenter och tar fram rapporter för forensik och efterlevnad från körtidstelemetri. Exein publicerar också Pulsar, "a modular and blazing fast runtime security tool for the IoT, powered by eBPF," som öppen källkod.
Firmwareanalys före release. Exein Analyzer inspekterar den färdiga firmwaren direkt, eller tar in din SBOM när binären inte finns tillgänglig. Exein säger att den täcker Linux, RTOS, Docker, UEFI, Android med mera, och använder reachability-poäng och LLM-driven filtrering för att sätta exploaterbara CVE:er först.
Åtgärder och CRA-koppling. Exein beskriver AI-drivna åtgärder som körs inne i Yocto och CI/CD-pipelines och kopplar fynd till kraven i Cyber Resilience Act.
Där CRACI skiljer sig
Det kör bygget
Yocto-byggen är långa och tunga. CRACI kör BitBake från ditt GitHub Actions-arbetsflöde på runners med upp till 32 vCPU
och 96 GB RAM, inställt med cracicorp/setup@v1 och size: "32". Jobben körs i isolerade
virtuella maskiner, och körningarna syns fortfarande i GitHub.
Det registrerar vad bygget hämtade
Medan ett jobb körs observerar CRACI trafiken till paket- och källvärdar och sparar den som byggbevis, med en
fullständighetsstatus per jobb och per cache. För Yocto är det en oberoende redogörelse för vad som kom över nätverket,
inklusive det som SPDX-SBOM:en från Yoctos create-spdx-klass utelämnar: i ett
jämförande bygge av core-image-sato hade CRACI:s SBOM varje
komponent som Yoctos hade, 88 till, som värdpaket och GitHub Actions, och en paket-URL för var och en av de 653 versioner av Rust-crates
som Yocto listar utan någon. Källor som BitBake hämtar från Yoctos källspegel registreras i
CRACI:s jobb-SBOM.
Det styr vart bygget kan ansluta
BitBake kan begränsa sin hämtare med BB_ALLOWED_NETWORKS. CRACI lägger till en egress-policy på runnern,
som valideras innan jobbet startar och blockerar vid fel, så att ett skript eller verktyg som går runt hämtaren ändå inte kan
nå en värd du inte har tillåtit. CRACI varnar dig vid en överträdelse.
Det bevakar det som levererats
API:t returnerar SBOM:er, nätverksspårningar och proveniens. CRACI sammanställer sårbarheter över byggen och repon och fortsätter att omvärdera bevakade SBOM:er.
CRACI lägger inget på enheten och analyserar inte binärer. Om du behöver skydd under körning eller en skanning av en färdig avbild är det Exeins område.
En inventering av vad som är driftsatt var
CRACI:s inventeringsvy visar exakt vilka programvaruversioner som är driftsatta i vilka produkter, globalt. När en ny sårbarhet dyker upp ser du vilka produkter som kör den berörda versionen i stället för att pussla ihop det från release notes och kalkylblad.
När du ska använda vilket, och när du ska använda båda
- Du vill upptäcka och blockera hot på enheter ute i fält. Exein Runtime. CRACI har ingen komponent på enheten.
- Dina Yocto-byggen körs på en server under ett skrivbord, eller tar timmar på små CI-runners. CRACI kör dem från GitHub Actions och sparar en registrering av varje bygge.
-
Du levererar en Yocto-avbild med
meta-exein. Bygg den på CRACI. Lagret byggs som vilket annat lager som helst, och CRACI registrerar vad bygget hämtade. - Du behöver visa varifrån SBOM:en kommer. CRACI:s registrering på runnern knyter SBOM:en till ett specifikt bygge. Exein Analyzers skanning av resultatet är en användbar andra vy.
För CRA
Cyber Resilience Act kräver att tillverkare dokumenterar komponenterna i sina produkter, bland annat med en SBOM, hanterar sårbarheter under supportperioden och, från september 2026, rapporterar aktivt utnyttjade sårbarheter. Exein hjälper på enhetssidan, med firmwareanalys före release, bevis kopplade till CRA och körtidstelemetri från fältet. CRACI hjälper på byggsidan, med bevis per bygge om vad som ingick i firmwaren, proveniens, löpande bevakning och SBOM-export som CycloneDX eller SPDX. CRACI automatiserar en betydande del av den insyn i och de bevis om programvarans leveranskedja som tillverkare behöver för sitt bredare arbete med CRA-efterlevnad; det gör inte en produkt regelefterlevande på egen hand. Läs vad CRA kräver.
Lägg till CRACI i ett Yocto-arbetsflöde
Behåll dina lager, inklusive meta-exein, och ditt steg med Exein Analyzer. Sätt runs-on: craci
på byggjobbet och välj en runnerstorlek. Yocto-exemplet i CRACI:s dokumentation bygger core-image-sato med Yoctos officiella källspegel och en
matchande BB_ALLOWED_NETWORKS-inställning. CRACI har i dag stöd för enbart GitHub Actions, med GitLab CI och Jenkins på
roadmapen. Se hur CRACI fungerar för
industriell IoT och hemelektronik.
Ta med ett Yocto-bygge till demon
Boka en demo så kör vi ett av dina BitBake-byggen på en CRACI-runner och går igenom vad det hämtade.
Boka en demo