Vai al contenuto
Cyber Resilience Act: gli obblighi di segnalazione delle vulnerabilità si applicano dall’11 settembre 2026

Correggi, verifica e proteggi le tue build Yocto Project con l’IA.

Yocman corregge i task bitbake falliti con una patch che approvi, poi verifica CVE non corrette, segreti incorporati, account deboli, licenze e lacune SBOM nell’immagine distribuita. Tutto dal terminale; solo estratti mascherati raggiungono l’IA.

  • Patch per i tuoi layer, mai per poky
  • CVE, segreti, licenze e SBOM in un solo audit
  • Report JSON e codici di uscita per la CI
Nuovo allo Yocto Project? Cos’è e come funziona →
~/yocto/build
$ bitbake core-image-base
NOTE: Executing Tasks
NOTE: Running task 1984 of 3127 (busybox_1.36.1.bb:do_patch)
ERROR: busybox-1.36.1-r0 do_patch: Applying patch '0001-ash-increase-history-size.patch'
Hunk #1 FAILED at 9871. 1 out of 1 hunk FAILED

$ yocman fix
… collecting context: log.do_patch, 4 layers, local.conf (masked)
… reading meta-custom/recipes-core/busybox/busybox_%.bbappend
Diagnosis  the patch from meta-custom no longer applies to BusyBox 1.36.1
--- a/recipes-core/busybox/busybox_%.bbappend
+++ b/recipes-core/busybox/busybox_%.bbappend
@@ -1,6 +1,5 @@
 SRC_URI += " \
-    file://0001-ash-increase-history-size.patch \
     file://ash-tweaks.cfg \
Apply this patch? [y/N] y
✓ patch applied in meta-custom
… re-running bitbake -c patch -f busybox
✓ do_patch succeeded

$ yocman audit --fail-on high
  Overall score 18/100 over 10 categories
critical  CVE-2099-0101 (CVSS 9.8) in openssl 3.2.1
critical  OpenSSH private key in /etc/ssh
exit 1: findings at or above high

Verifica l’immagine che distribuisci davvero

yocman audit legge i risultati della build: rootfs, report cve-check, SBOM SPDX, .config del kernel e layer. Ogni rilievo include ID della regola, file di origine e correzione, con un punteggio per categoria.

Vulnerabilità
CVE non corrette per CVSS e cve diff per vedere cosa un aggiornamento corregge o introduce.
Segreti
Chiavi private, token e password nel rootfs o nei layer: viene segnalata la posizione, mai il contenuto.
Hardening
Password vuote, account root aggiuntivi, /etc/shadow leggibile, telnet, opzioni del kernel.
Licenze e SBOM
GPLv3 e licenze poco chiare, obblighi sui sorgenti, coerenza dello SBOM SPDX con l’immagine.
Vedi tutti i controlli di sicurezza
yocman audit
$ yocman audit --fail-on high
Overall score 18/100 over 10 categories
cve 9 secrets 0 users 0 licenses 76 sbom 86
critical CVE-001 CVE-2099-0101 (CVSS 9.8) in openssl 3.2.1
critical SECRET-001 OpenSSH private key in /etc/ssh
critical USER-001 root has no password
critical SVC-002 telnet.socket enabled: clear-text login
medium LIC-003 GPL-3.0 in the image
→ upgrade the recipe or backport the fix with 'CVE: <id>'
exit 1: findings at or above high
Build dimostrativa, identificativi CVE fittizi

Il Cyber Resilience Act riguarda il tuo firmware

I prodotti con elementi digitali venduti nell’UE devono gestire le vulnerabilità, fornire aggiornamenti di sicurezza e documentare il software, incluso lo SBOM. yocman cra report riunisce le evidenze di build su CVE, segreti, SBOM e hardening in un report.

Il Cyber Resilience Act spiegato per Linux embedded →
  1. 11 set 2026

    Segnalazione delle vulnerabilità attivamente sfruttate e degli incidenti gravi

  2. 11 dic 2027

    Si applicano tutti i requisiti essenziali

Da una build fallita a una riuscita

  1. La build fallisce

    bitbake si ferma su do_patch, do_compile o un controllo QA. Esegui yocman fix nella stessa shell, senza configurazione.

  2. Yocman analizza la causa

    La CLI raccoglie il log del task fallito, i layer e la configurazione. L’agente indaga con strumenti di sola lettura e trova la causa.

  3. Approvi la correzione

    Ricevi la diagnosi e un diff unificato per il tuo layer. Nulla cambia senza conferma, poi il task viene rieseguito.

La build resta sulla tua macchina

L’agente non ottiene mai una shell sulla tua macchina. Chiede alla CLI file specifici e puoi vedere ogni richiesta.

Esecuzione locale
bitbake, kas e tutti gli strumenti girano sulla tua macchina o sul runner CI. Escono solo estratti mascherati.
Segreti mascherati
Token, password, chiavi private, credenziali negli URL, email, IP privati e percorso home vengono sostituiti prima dell’invio.
--dry-run
Mostra esattamente i dati che verrebbero inviati, senza inviare nulla.
Decidi tu
Le patch toccano solo i tuoi layer, mai poky o quelli upstream, e richiedono conferma.
Cosa riceve l’agente
$ yocman fix --dry-run
- PREMIRRORS:prepend = "git://.*/.* https://builder:k7Fq2v9X@mirror.corp.example/src/"
+ PREMIRRORS:prepend = "git://.*/.* https://***:***@mirror.corp.example/src/"
- ERROR: Logfile of failure stored in: /home/alice/yocto/build/tmp/work/.../log.do_patch
+ ERROR: Logfile of failure stored in: ~/yocto/build/tmp/work/.../log.do_patch
- GITLAB_TOKEN = "glpat-Xq2Lk9vWmP4rT7sB1nYd"
+ GITLAB_TOKEN = "<redacted>"
Dry run: nothing was sent.

Una CLI per tutta la build

Vedi tutte le funzionalità

Correggi

fixexplainaskcontextlogin

Diagnostica un task fallito e ottieni una patch per il tuo layer, o fai domande sul progetto. Gli errori già risolti vengono recuperati dalla tua cronologia.

--- a/recipes-apps/myapp/myapp_1.0.bb
+++ b/recipes-apps/myapp/myapp_1.0.bb
inherit cmake systemd
+DEPENDS += "zlib"
✓ do_compile succeeded

Analizza

doctorrulesconflayers checkdepswhyprovidesunusedorphansduplicatessizebuildtimesstateboot

Comprendi l’immagine: perché contiene un pacchetto, cosa occupa spazio, dove si spende tempo di build e avvio, cosa ricostruisce sstate.

Installed size 42.0 MiB in 43 packages
libc6-dbg 8789 KiB 20.4%
libcrypto3 4394 KiB 10.2%
SIZE-002 debug symbols in the image

Verifica

auditcvesecretsuserspermsserviceskernel-auditlicensessbomcra report

Controlli di sicurezza e conformità sull’immagine distribuita: CVE, segreti, account, servizi, kernel, licenze, SBOM, con punteggio per categoria.

Overall score 18/100 over 10 categories
critical CVE-001 unpatched CVE (CVSS 9.8)
critical SECRET-001 private key in the rootfs
medium LIC-003 GPL-3.0 in the image

Inizia

initaddremovebuildshellenvflash

Crea un progetto kas per una scheda verificata o descrivilo, aggiungi funzionalità, compila su host o container con avanzamento in tempo reale e scrivi la scheda.

$ yocman init --release scarthgap --board rpi4-64 \
--feature ssh-openssh --env container
✓ Project generated in ~/yocto/rpi4-scarthgap

Provalo sulla prossima build

Piano gratuito incluso, senza carta di credito. Installa la CLI, poi esegui yocman fix su una build fallita o yocman audit su una completata — fino a 5 comandi di sicurezza al mese.

$ pipx install yocman
Inizia gratis