Automatická kybernetická odolnost pro vývojáře a agenty
Udělejte z každého buildu svou první linii obrany.
Postavte bezpečnost dodavatelského řetězce do středu svého softwaru díky rychlým a spolehlivým runnerům, které stojí méně.
- Bezpečné runnery
- SBOM z doby buildu
- Monitorování zranitelností
- Reakce na zranitelnosti
- Zaznamenané balíčky: 185
- Odmítnutá spojení: 6
- SBOM úplná
- Opraveno v v2.4.1
- Build
northwind-controls/web-portal
- Balíčky
- 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
- Policy gateBuild #1843 zastaven Build #1844 prošel
- Vydaný artefakt
ghcr.io/northwind-controls/web-portal:2.4.1
Vydáno jako v2.4.1
Týmy, které stavějí na CRACI
Zranitelnosti přibývají rychleji než jakékoli opravy.
Útočníkům stačí jedna cesta dovnitř a agenti jim ji pomáhají najít rychleji než kdy dřív. Váš tým musí uzavřít každou mezeru, většinou ručně.
2026 zatím
- CVE zveřejněných denně
- 303
- V průměru jedna každých 5 min.
- Více denně než v předchozím roce
- +131%
- Oproti dennímu průměru za 2025.
- Hodnoceno High nebo Critical, každý den
- 155
- Podle jejich skóre CVSS.
| Rok | CVE denně | High nebo Critical denně |
|---|---|---|
| 2020 | 39 | 7 |
| 2021 | 54 | 12 |
| 2022 | 68 | 20 |
| 2023 | 78 | 28 |
| 2024 | 109 | 48 |
| 2025 | 131 | 54 |
| 2026 zatím | 303 | 155 |
Proč právě teď
- Upozornění se změnila v šum.
Když je naléhavých stovky nálezů, není naléhavý žádný. Týmy přestávají řídit riziko a začínají počítat upozornění.
- Objem přerůstá každý tým.
Triáž i opravy se stále dělají ručně. Při tomto objemu nepomůže mezeru uzavřít ani nábor dalších lidí.
- Opravy soupeří s funkcemi.
Produktové týmy se hodnotí podle dodaných funkcí, takže bezpečnostní práce čeká na klidný sprint, který nikdy nepřijde.
- Skenery jen odhadují.
Seznam sestavený ze souborů po buildu přehlíží, co do něj skutečně šlo, a falešný pocit jistoty lidi odrazuje od toho, aby se dívali.
Váš software dostává tvar během buildu.
Váš lockfile připíná, co se má nainstalovat. O tom, co skutečně dorazí, rozhoduje build. CRACI zaznamenává každý balíček při jeho příchodu, s vyřešenou verzí, odkud pochází a zda byl obnoven z cache CI.
"packages": {
…
…
} | Balíček | Vyřešeno | Dostal se přes | Zdroj |
|---|---|---|---|
| Přes package.json | |||
| express přes package.json | 4.21.2 | package.json | registry.npmjs.org |
| next přes package.json Nyní zasažen CVE-2025-29927 · Critical | 15.2.2 | package.json | registry.npmjs.org |
| react přes package.json · z cache CI | 19.0.0 | package.json | Cache CI |
| react-dom přes package.json · z cache CI | 19.0.0 | package.json | Cache CI |
| styled-jsx přes next | 5.1.6 | next | registry.npmjs.org |
| Přes build skript | |||
| tailwindcss přes build skript | 4.0.14 | build skript | registry.npmjs.org |
| typescript přes build skript | 5.8.2 | build skript | registry.npmjs.org |
| a další zaznamenané balíčky: 178 | |||
Zabezpečte build. Zaznamenejte jeho závislosti.
Vaše joby běží na runnerech CRACI místo runnerů hostovaných na GitHubu, a to dvakrát rychleji. Každý balíček, který si stáhnou, se zaznamená s verzí, zdrojem a licencí. Cokoli ze zdroje mimo vaši politiku je odmítnuto.
Secure Build Service
Každý job běží ve vlastním izolovaném virtuálním stroji, za egress policy, která se kontroluje před spuštěním jobu.
- Izolovaný VM
- Výchozí zákaz nebo povolení
- Fail-closed
- Výstraha při porušení
Package Analytics
Proxy, která rozumí balíčkům, zaznamenává každý balíček, který si job stáhne, s vyřešenou verzí, zdrojem a deklarovanou licencí.
- npm
- PyPI
- RubyGems
- Cargo
- Go
- Nix
- OCI
- Yocto
- a další
- 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
- reasonHostitel není v politice
- actionZablokováno na runneru
{
"bomFormat": "CycloneDX",
"specVersion": "1.7",
…
"components": [{
"name": "next",
"version": "15.2.2",
"purl": "pkg:npm/[email protected]",
"licenses": [
{ "license": { "id": "MIT" } }
]
}, …]
} CRACI vidí provoz, který skenery nevidí.
Ostatní nástroje SBOM čtou lockfile nebo výstup buildu a odhadují, co do něj šlo. CRACI vidí, co do každého buildu skutečně přichází, včetně skrytých závislostí, které stáhnou hooky v době buildu, build skripty a základní image.
Skener
Skener konkurence
- Metoda
- Čte package-lock.json
- Kdy
- Po buildu
- Vidí
- Co uvádí lockfile
| Balíček | Verze | Licence | Nalezeno v |
|---|---|---|---|
| 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 |
| Není v žádném lockfilu, takže ani v SBOM | |||
| Není v žádném lockfilu, takže ani v SBOM | |||
| Není v žádném lockfilu, takže ani v SBOM | |||
Uvedené balíčky: 142 Chybí: 43
Zaznamenaná SBOM
- Metoda
- Vidí provoz buildu
- Kdy
- Během buildu
- Vidí
- Co build stáhl
| Balíček | Verze | Licence | Staženo z |
|---|---|---|---|
| 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 |
| předkompilovaný binární soubor skryté přes postinstall hook · pkg:npm/hidden-package | — | — | registry.npmjs.org |
| stahování build skriptu (2) skryté přes build skript · pkg:generic/[email protected]?download_url=example.com/tool | — | — | example.com |
| balíčky OS základního image (40) skryté přes Dockerfile FROM · pkg:oci/ubuntu | — | — | registry.hub.docker.com |
Zaznamenané balíčky: 185 Navíc oproti lockfilu: 43
Ukázkový build. Přetáhněte předěl a porovnejte. Jak fungují SBOM z doby buildu
Přiřaďte potenciální zranitelnosti přesně ke konkrétním vydáním.
CRACI průběžně kontroluje zaznamenané SBOM kvůli novým zranitelnostem. V tomto ilustrativním příkladu je kritická zranitelnost zveřejněna 7 dní po vydání. Sledujte záznam o buildu od zasaženého balíčku až k opravě týmu.
Krok 1 z 4
Je zveřejněna CVE-2025-29927
next je přímá závislost a build #1842 zaznamenal přesnou verzi.
- Závažnost
- Critical 9.1
- Balíček
- next
- Zasaženo
- od 15.0.0 do 15.2.2
- Opraveno v
- 15.2.3
Krok 2 z 4
Zasaženo je jedno vydání
CRACI ho porovná se zaznamenanou SBOM.
- Vydání
- web-portal v2.4.0
- Shoda
- next 15.2.2, přímá závislost
- SBOM
- Complete
Krok 3 z 4
Bylo dodáno jako tento image
Vydání, jeho image a jeho SBOM zůstávají pohromadě.
- Image
- ghcr.io/northwind-controls/web-portal:2.4.0
- Vydání
- v2.4.0
- SBOM
- Sledováno
Krok 4 z 4
Oprava má vlastníka
Proveďte triáž, předejte ji dál a sledujte ji až k opravenému vydání.
- Vlastník
- Platformní tým
- Akce
- Aktualizovat next na 15.2.3 a znovu sestavit
- Opraveno v
- web-portal v2.4.1, 2025-03-22
Odpovězte každému auditorovi důkazy.
Každý build po sobě zanechá důkazy: SBOM, záznamy o zranitelnostech a to, jak se každá oprava dostala do vydání. Využijte je pro své procesy CRA, NIS2, ISO 27001 a SOC 2, aby dotaz auditora znamenal stažení souboru, ne celý projekt.
- Složení
- SBOM z doby buildu pro každé vydání.
- CycloneDX
- SPDX
- Tranzitivní závislosti
- Zranitelnosti
- Deklarované licence
- Řešení zranitelností
- Zaznamenané SBOM se průběžně znovu vyhodnocují.
- Triáž
- Oprava
- Uchováno s vydáním
- Podávání zpráv
- CRACI je připraví; podáváte je vy.
- Včasné varování
- Oznámení
- Závěrečná zpráva
Cyber Resilience Act
- Začínají platit oznamovací povinnosti
- Nařízení se použije v plném rozsahu
Hlášení zranitelnosti Výňatek
web-portal v2.4.0
northwind-controls/web-portal · build #1842
- SBOM
- CycloneDX · Complete
- Build
- #1842 · commit 9f3c2e1
- Zranitelnost
- CVE-2025-29927 · Critical
- Komponenta
- next 15.2.2
- Hlásí se
- CSIRT a ENISA, přes Single Reporting Platform podle CRA
Časová osa řešení
- Vydání sestaveno a SBOM zaznamenána
- Bezpečnostní upozornění zveřejněno a přiřazeno k tomuto vydání
- Triáž provedl tým Produktová bezpečnost, přiděleno týmu Platformní tým
- v2.4.1 vydáno s next 15.2.3
SBOM se exportuje jako CycloneDX nebo SPDX
Spusťte svůj první build za 5 minut.
V tomto demu provedeme web TanStack Start od registrace až po první běh na CRACI. Připojíme GitHub, nasměrujeme joby pomocí runs-on: craci a sledujeme první běh. CRACI zaznamená každou externí závislost, kterou build stáhne, označí známé zranitelnosti a každou z nich dohledá zpět k jobu, který ji přinesl.
From sign-up to your first build on CRACI
CRACI na YouTube: CRACI demo.
Podívejte se, jak CRACI zapadá do vašeho workflow dodávek.
CRACI nahrazuje runner, ne GitHub Actions. Vaše workflow, revize i kroky nasazení zůstávají, jak jsou.
-
Připojte GitHub App
Ke všem repozitářům nebo jen k těm, které vyberete.
-
Aktualizujte svůj runner
Nastavte ve workflow
runs-on: craci. Nic jiného se nemění. -
Spusťte další build
Běhy se dál zobrazují v GitHubu. Záznam o buildu a SBOM se zobrazí v CRACI.
- Runnery
- Spravované linuxové runnery na x86-64 a ARM64, na evropské infrastruktuře.
- Buildy
- Docker Engine, Buildx a Compose v2. Buildy Yocto a BitBake jsou zdokumentované.
- Váš kód a data
- CRACI zpracovává zdrojový kód během vašeho buildu a neukládá ho. Data buildů jsou hostována v Evropě. Obsah cache závisí na tom, co vaše workflow ukládají. Přečtěte si stránku o bezpečnosti.
- V plánu vývoje
- GitLab, Jenkins a další systémy CI, runnery pro Windows a macOS, on-prem runnery, Maven a Java.
Otázky, které si týmy kladou před demem
Kompatibilita, nastavení, bezpečnost a nakládání s daty.
Která prostředí CI a ekosystémy balíčků jsou podporovány?
Podporovanou integrací CI je dnes GitHub Actions, další systémy CI jsou v plánu vývoje. CRACI zaznamenává registry npm, PyPI, RubyGems, Cargo, Go, Nix a OCI, repozitáře balíčků Debian, Ubuntu a Alpine a stahování z Gitu a jiných zdrojů. Maven a Java jsou v plánu vývoje. Runnery běží na Linuxu na x86-64 a ARM64.
Co vyžaduje nastavení?
Připojíte CRACI GitHub App ke všem nebo vybraným repozitářům a ve svém workflow nastavíte runs-on: craci. CRACI nahrazuje runner, ne GitHub Actions, takže se vaše běhy dál zobrazují v GitHubu.
K jakým datům má CRACI přístup a kde jsou uložena?
GitHub App čte váš kód a vaše běhy Actions a spravuje runnery, které pro vaši organizaci registruje. CRACI zpracovává zdrojový kód během vašeho buildu a neukládá ho. Data buildů, včetně metadat, dat o balíčcích, síťových stop, SBOM, původu (provenance), cache a auditních záznamů, jsou hostována v Evropě, s vlastní dobou uchovávání v Enterprise. Obsah cache závisí na tom, co vaše workflow ukládají. Přečtěte si o bezpečnosti a nakládání s daty.
Blokuje CRACI, nebo upozorňuje? Co se stane s buildem, který poruší politiku?
Egress policy se vynucuje na runneru. Ověřuje se před spuštěním jobu a při selhání vše zablokuje (fail-closed), takže spojení mimo politiku je odmítnuto a vy dostanete výstrahu. Policy gates mohou build zastavit i v reálném čase.
Jaké formáty mohu exportovat?
SBOM se exportují jako CycloneDX nebo SPDX, včetně tranzitivních závislostí, zranitelností a deklarovaných licencí.
Co je k dispozici dnes a co je v plánu vývoje?
Dnes k dispozici: spravované linuxové runnery pro GitHub Actions, SBOM z doby buildu se zranitelnostmi, egress policy, průběžné monitorování zranitelností s triáží a policy gates. V plánu vývoje: GitLab, Jenkins a další systémy CI, runnery pro Windows a macOS a on-prem runnery.
Podporují nás
Psali o nás
Podívejte se na cestu od buildu k opravě.
- Prozkoumejte závislosti zaznamenané během buildu.
- Identifikujte vydání zasažená zranitelností.
- Sledujte reakci od triáže až po opravené vydání.