Automatiserad cyberresiliens för utvecklare och agenter
Gör varje bygge till din första försvarslinje.
Sätt säkerheten i leveranskedjan i centrum för din programvara, med snabba och pålitliga runners som kostar mindre.
- Säkra runners
- SBOM:er från bygget
- Sårbarhetsbevakning
- Sårbarhetshantering
- 185 paket registrerade
- 6 anslutningar nekade
- SBOM komplett
- Åtgärdat i v2.4.1
- Bygge
northwind-controls/web-portal
- Paket
- next 15.2.2
- react 19.0.0
- react-dom 19.0.0
- express 4.21.2
- tailwindcss 4.0.14
- typescript 5.8.2
- PolicykontrollBygge #1843 stoppat Bygge #1844 godkänt
- Släppt artefakt
ghcr.io/northwind-controls/web-portal:2.4.1
Släppt som v2.4.1
Team som bygger på CRACI
Sårbarheterna kommer snabbare än någon hinner åtgärda dem.
Angripare behöver en enda väg in, och agenter hjälper dem att hitta den snabbare än någonsin. Ditt team måste täppa till varje lucka, mest för hand.
2026 hittills
- CVE:er publicerade per dag
- 293
- I genomsnitt en per 5 minuter.
- Fler per dag än året innan
- +124%
- Jämfört med takten per dag 2025.
- Klassade som High eller Critical, varje dag
- 148
- Utifrån deras CVSS-poäng.
| År | CVE:er per dag | High eller Critical per dag |
|---|---|---|
| 2020 | 39 | 7 |
| 2021 | 54 | 12 |
| 2022 | 68 | 20 |
| 2023 | 78 | 28 |
| 2024 | 109 | 48 |
| 2025 | 131 | 54 |
| 2026 hittills | 293 | 148 |
Varför nu
- Larmen har blivit brus.
När hundratals fynd är brådskande är inget av dem det. Teamen slutar hantera risk och börjar räkna larm.
- Volymen springer ifrån alla team.
Triage och åtgärder görs fortfarande för hand. Med den här volymen täpper fler anställda inte till luckan.
- Åtgärder konkurrerar med funktioner.
Produktteam mäts på levererade funktioner, så säkerhetsarbetet får vänta på en lugn sprint som aldrig kommer.
- Skannrar gör bara uppskattningar.
En lista som räknas fram ur filer efter bygget missar vad som faktiskt kom in, och falsk trygghet gör att ingen tittar efter.
Din programvara tar form under bygget.
Din lockfile låser vad som ska installeras. Bygget avgör vad som faktiskt kommer in. CRACI registrerar varje paket när det kommer in, med den upplösta versionen, varifrån det kom och om det återställdes från en CI-cache.
"packages": {
…
…
} | Paket | Upplöst | Kom in via | Källa |
|---|---|---|---|
| Via package.json | |||
| express via package.json | 4.21.2 | package.json | registry.npmjs.org |
| next via package.json Nu drabbad av CVE-2025-29927 · Critical | 15.2.2 | package.json | registry.npmjs.org |
| react via package.json · från CI-cache | 19.0.0 | package.json | CI-cache |
| react-dom via package.json · från CI-cache | 19.0.0 | package.json | CI-cache |
| styled-jsx via next | 5.1.6 | next | registry.npmjs.org |
| Via byggskript | |||
| tailwindcss via byggskript | 4.0.14 | byggskript | registry.npmjs.org |
| typescript via byggskript | 5.8.2 | byggskript | registry.npmjs.org |
| och 178 registrerade paket till | |||
Säkra bygget. Registrera dess beroenden.
Dina jobb körs på CRACI-runners i stället för GitHub-hostade, dubbelt så snabbt. Varje paket de hämtar registreras med version, källa och licens. Allt från en källa utanför din policy nekas.
Secure Build Service
Varje jobb körs i en egen isolerad virtuell maskin, bakom en egress-policy som kontrolleras innan jobbet startar.
- Isolerad VM
- Egress nekas som standard
- Blockerar vid fel
- Larm vid överträdelse
Package Analytics
En paketmedveten proxy registrerar varje paket ett jobb hämtar, med upplöst version, källa och deklarerad licens.
- npm
- PyPI
- RubyGems
- Cargo
- Go
- Nix
- OCI
- Yocto
- med flera
- time2025-03-14 09:13:07 UTC
- jobrelease.yml #1842
- stepnpm run build
- policyDefault deny. Allowed: npm, GitHub, ghcr.io, Docker Hub, example.com
- denied malicious.example:443
- reasonVärden finns inte i policyn
- actionBlockerad vid runnern
{
"bomFormat": "CycloneDX",
"specVersion": "1.7",
…
"components": [{
"name": "next",
"version": "15.2.2",
"purl": "pkg:npm/[email protected]",
"licenses": [
{ "license": { "id": "MIT" } }
]
}, …]
} CRACI ser trafiken som skannrar missar.
Andra SBOM-verktyg läser lockfilen eller byggresultatet och gissar vad som ingick. CRACI ser vad som faktiskt kommer in i varje bygge, inklusive de dolda beroenden som hookar under bygget, byggskript och basavbilder drar in.
Skanner
Konkurrerande skanner
- Metod
- Läser package-lock.json
- När
- Efter bygget
- Ser
- Det som lockfilen listar
| Paket | Version | Licens | Hittad i |
|---|---|---|---|
| next pkg:npm/[email protected] | 15.2.2 | MIT | package-lock.json |
| react pkg:npm/[email protected] | 19.0.0 | MIT | package-lock.json |
| react-dom pkg:npm/[email protected] | 19.0.0 | MIT | package-lock.json |
| express pkg:npm/[email protected] | 4.21.2 | MIT | package-lock.json |
| styled-jsx pkg:npm/[email protected] | 5.1.6 | MIT | package-lock.json |
| Inte med i någon lockfile, så inte med i SBOM:en | |||
| Inte med i någon lockfile, så inte med i SBOM:en | |||
| Inte med i någon lockfile, så inte med i SBOM:en | |||
142 paket listade 43 saknas
Registrerad SBOM
- Metod
- Ser byggets trafik
- När
- Under bygget
- Ser
- Det som bygget hämtade
| Paket | Version | Licens | Hämtad från |
|---|---|---|---|
| next pkg:npm/[email protected] | 15.2.2 | MIT | registry.npmjs.org |
| react pkg:npm/[email protected] | 19.0.0 | MIT | registry.npmjs.org |
| react-dom pkg:npm/[email protected] | 19.0.0 | MIT | registry.npmjs.org |
| express pkg:npm/[email protected] | 4.21.2 | MIT | registry.npmjs.org |
| styled-jsx pkg:npm/[email protected] | 5.1.6 | MIT | registry.npmjs.org |
| förkompilerad binär dold via postinstall-hook · pkg:npm/hidden-package | — | — | registry.npmjs.org |
| 2 nedladdningar i byggskript dold via byggskript · pkg:generic/[email protected]?download_url=example.com/tool | — | — | example.com |
| 40 OS-paket i basavbilden dold via Dockerfile FROM · pkg:oci/ubuntu | — | — | registry.hub.docker.com |
185 paket registrerade 43 fler än lockfilen visar
Exempelbygge. Dra i avdelaren för att jämföra. Så fungerar SBOM:er från bygget
Spåra potentiella sårbarheter till exakt rätt releaser.
CRACI kontrollerar registrerade SBOM:er löpande mot nya sårbarheter. I det här illustrativa exemplet publiceras en kritisk sårbarhet 7 dagar efter releasen. Följ byggregistreringen från det drabbade paketet till teamets åtgärd.
Steg 1 av 4
CVE-2025-29927 publiceras
next är ett direkt beroende, och bygge #1842 registrerade den exakta versionen.
- Allvarlighetsgrad
- Critical 9.1
- Paket
- next
- Drabbad
- 15.0.0 till 15.2.2
- Åtgärdad i
- 15.2.3
Steg 2 av 4
En release är drabbad
CRACI matchar den mot den registrerade SBOM:en.
- Release
- web-portal v2.4.0
- Matchning
- next 15.2.2, direkt beroende
- SBOM
- Complete
Steg 3 av 4
Den levererades som den här avbilden
Releasen, dess avbild och dess SBOM hålls ihop.
- Avbild
- ghcr.io/northwind-controls/web-portal:2.4.0
- Release
- v2.4.0
- SBOM
- Bevakad
Steg 4 av 4
Åtgärden har en ägare
Triagera den, skicka den vidare och följ den till en åtgärdad release.
- Ägare
- Plattformsteamet
- Åtgärd
- Uppgradera next till 15.2.3 och bygg om
- Åtgärdad i
- web-portal v2.4.1, 2025-03-22
Svara varje revisor med bevis.
Varje bygge lämnar underlag efter sig: SBOM:er, sårbarhetsregister och hur varje åtgärd nådde en release. Använd det i dina processer för CRA, NIS2, ISO 27001 och SOC 2, så att en revisors fråga kräver en nedladdning, inte ett projekt.
- Sammansättning
- En SBOM från bygget för varje release.
- CycloneDX
- SPDX
- Transitiva beroenden
- Sårbarheter
- Deklarerade licenser
- Sårbarhetshantering
- Registrerade SBOM:er omvärderas löpande.
- Triage
- Åtgärd
- Sparas med releasen
- Rapportering
- CRACI rapporterar för din räkning.
- Tidig varning
- Anmälan
- Slutrapport
Cyber Resilience Act
- Rapporteringsskyldigheterna börjar gälla
- Förordningen gäller fullt ut
Sårbarhetsanmälan Utdrag
web-portal v2.4.0
northwind-controls/web-portal · bygge #1842
- SBOM
- CycloneDX · Complete
- Bygge
- #1842 · commit 9f3c2e1
- Sårbarhet
- CVE-2025-29927 · Critical
- Komponent
- next 15.2.2
- Rapporteras till
- CSIRT och ENISA, via CRA:s gemensamma rapporteringsplattform
Tidslinje för hanteringen
- Release byggd och SBOM registrerad
- Säkerhetsmeddelande publicerat och matchat mot den här releasen
- Triagerad av Produktsäkerhet, tilldelad Plattformsteamet
- v2.4.1 släppt med next 15.2.3
SBOM exporteras som CycloneDX eller SPDX
Kör ditt första bygge på 5 minuter.
I den här demon tar vi en TanStack Start-sajt från registrering till dess första körning på CRACI. Vi ansluter GitHub, styr jobben med runs-on: craci och följer den första körningen. CRACI registrerar varje externt beroende som bygget drar in, flaggar kända sårbarheter och spårar var och en tillbaka till jobbet som drog in den.
From sign-up to your first build on CRACI
CRACI på YouTube: CRACI demo.
Se hur CRACI passar in i ditt leveransflöde.
CRACI ersätter runnern, inte GitHub Actions. Dina arbetsflöden, granskningar och driftsättningssteg förblir som de är.
-
Anslut GitHub-appen
På alla repon eller bara på dem du väljer.
-
Byt runner
Sätt
runs-on: cracii arbetsflödet. Inget annat ändras. -
Kör ditt nästa bygge
Körningarna syns fortfarande i GitHub. Byggregistreringen och SBOM:en syns i CRACI.
- Runners
- Hanterade Linux-runners på x86-64 och ARM64, på europeisk infrastruktur.
- Byggen
- Docker Engine, Buildx och Compose v2. Yocto- och BitBake-byggen är dokumenterade.
- Din kod och dina data
- CRACI bearbetar källkoden under ditt bygge och lagrar den inte. Byggdata lagras i Europa. Vad cachen innehåller beror på vad dina arbetsflöden sparar. Läs säkerhetssidan.
- På roadmapen
- GitLab, Jenkins och andra CI-system, runners för Windows och macOS, on-prem-runners, Maven och Java.
Frågor team ställer före en demo
Kompatibilitet, installation, säkerhet och datahantering.
Vilka CI-miljöer och paketekosystem stöds?
GitHub Actions är den CI-integration som stöds i dag, och andra CI-system finns på roadmapen. CRACI registrerar paket från register för npm, PyPI, RubyGems, Cargo, Go, Nix och OCI, paketförråd för Debian, Ubuntu och Alpine samt Git och andra källnedladdningar. Maven och Java finns på roadmapen. Runners kör Linux på x86-64 och ARM64.
Vad krävs för att komma igång?
Du ansluter CRACI:s GitHub App på alla eller utvalda repon och sätter runs-on: craci i ditt arbetsflöde. CRACI ersätter runnern, inte GitHub Actions, så dina körningar syns fortfarande i GitHub.
Vilka data kommer CRACI åt, och var lagras de?
GitHub-appen läser din kod och dina Actions-körningar och hanterar de runners den registrerar för din organisation. CRACI bearbetar källkoden under ditt bygge och lagrar den inte. Byggdata, inklusive metadata, paketdata, nätverksspårningar, SBOM:er, proveniens, cachar och granskningsloggar, lagras i Europa, med anpassad lagringstid på Enterprise. Vad cachen innehåller beror på vad dina arbetsflöden sparar. Läs om säkerhet och datahantering.
Blockerar CRACI eller larmar den? Vad händer med ett bygge som bryter mot en policy?
Egress-policyn tillämpas vid runnern. Den valideras innan jobbet startar och blockerar vid fel, så en anslutning utanför policyn nekas och du får ett larm. Policykontroller kan också stoppa ett bygge i realtid.
Vilka format kan jag exportera?
SBOM:er exporteras som CycloneDX eller SPDX, inklusive transitiva beroenden, sårbarheter och deklarerade licenser.
Vad finns i dag och vad finns på roadmapen?
Tillgängligt i dag: hanterade Linux-runners för GitHub Actions, SBOM:er från bygget med sårbarheter, egress-policy, löpande sårbarhetsbevakning med triage samt policykontroller. På roadmapen: GitLab, Jenkins och andra CI-system, runners för Windows och macOS samt on-prem-runners.
Med stöd av
Omnämnda i
Se vägen från bygge till åtgärd.
- Utforska beroendena som registrerades under ett bygge.
- Hitta releaser som drabbas av en sårbarhet.
- Följ åtgärden från triage till en åtgärdad release.