0Pricing
Cyber Security Academy · Lezione

Gestione sicura delle dipendenze

Blocchi le versioni delle dipendenze, monitori le CVE, utilizzi i lock file e automatizzi la SCA nelle pipeline CI.

Gestione sicura delle dipendenze è una lezione Cyber Security Academy gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Cyber Security Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Cyber Security Academy include 4 lezioni in totale.

Perché le dipendenze sono un rischio

Le applicazioni moderne importano centinaia di pacchetti di terze parti. Ogni dipendenza, comprese le dipendenze transitive, amplia la superficie di attacco. Una vulnerabilità in una libreria diffusa, come Log4Shell in Log4j, può esporre migliaia di applicazioni contemporaneamente.

File di lock e versioni fissate

I file di lock (package-lock.json, yarn.lock, Pipfile.lock) fissano ogni dipendenza a una versione esatta, incluse le dipendenze transitive. Eseguire il commit dei file di lock nel controllo versione. In questo modo si garantiscono build riproducibili e si impediscono aggiornamenti accidentali delle versioni che introducono vulnerabilità.

Software Composition Analysis (SCA)

Gli strumenti SCA analizzano gli alberi delle dipendenze confrontandoli con i database CVE per identificare i pacchetti vulnerabili. OWASP Dependency-Check, Snyk e GitHub Dependabot rilevano automaticamente le vulnerabilità note e suggeriscono versioni con patch, fornendo indicazioni per la correzione.

Aggiornamenti automatici delle dipendenze

Dependabot e Renovate Bot aprono automaticamente PR quando sono disponibili nuove versioni compatibili che non introducono modifiche incompatibili. Danno priorità agli aggiornamenti di sicurezza. Configurare l'unione automatica per gli aggiornamenti delle patch con CI superata, così da mantenere aggiornate le dipendenze riducendo al minimo l'intervento manuale.

Valutazione di nuove dipendenze

Prima di aggiungere una dipendenza, verifichi il numero di download, l'attività recente dei commit, il numero di issue aperte, la compatibilità della licenza e lo storico delle CVE note. Preferisca pacchetti ben mantenuti, con processi attivi di risposta agli incidenti di sicurezza, rispetto ad alternative non mantenute.

Rischi delle dipendenze transitive

Le dipendenze dirette includono a loro volta altre dipendenze. Nell'incidente event-stream, gli aggressori hanno preso il controllo di una dipendenza transitiva utilizzata da milioni di pacchetti. Verifichi l'intero albero delle dipendenze, non solo quelle dirette.

Registry privati dei pacchetti

Gli attacchi di dependency confusion consistono nel pubblicare pacchetti dannosi su registry pubblici con lo stesso nome dei pacchetti interni. Li mitighi usando nomi di pacchetto con scope, l'autenticazione al registry privato e una allowlist dei registry approvati in .npmrc o pip.conf.

Sicurezza della catena di fornitura: SBOM

Una Software Bill of Materials (SBOM) è un inventario leggibile dalle macchine di tutti i componenti del software. Generi SBOM con Syft o CycloneDX. Le SBOM consentono di valutare rapidamente l'impatto delle vulnerabilità quando vengono pubblicate nuove CVE: permettono di identificare le versioni interessate in pochi minuti.

Conformità delle licenze

Le licenze OSS impongono determinati obblighi. La GPL può richiedere la divulgazione del codice sorgente. MIT e Apache 2.0 sono permissive. FOSSA e TLDR-Legal aiutano a valutare la compatibilità delle licenze. Integri la scansione delle licenze nella CI per impedire l'inclusione accidentale di GPL nei prodotti commerciali.

Verifica dell'integrità

La Subresource Integrity (SRI) per gli script ospitati su CDN usa un hash crittografico nell'attributo integrity. npm package.json include un campo integrity. Verifichi i checksum durante il download dei pacchetti nella CI per rilevare manomissioni della catena di fornitura.

Mantenere aggiornate le dipendenze

Applichi le patch di sicurezza entro 24-48 ore dalla pubblicazione della CVE per le vulnerabilità critiche. Usi i punteggi CVSS e i dati sulla sfruttabilità per stabilire le priorità. Una dipendenza corretta che introduce una modifica incompatibile è preferibile a una vulnerabilità sfruttabile in produzione.

Verifica delle conoscenze

Che cos'è un attacco di dependency confusion?

Riepilogo

Una gestione sicura delle dipendenze richiede il blocco delle versioni nei file di lock, l'esecuzione della scansione SCA nella CI/CD, l'automazione degli aggiornamenti delle patch, la generazione di SBOM per valutare l'impatto e la valutazione del livello di sicurezza delle nuove dipendenze prima di adottarle.

Domande Frequenti

La lezione «Gestione sicura delle dipendenze» è gratuita?

Sì — il testo completo di «Gestione sicura delle dipendenze» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Cyber Security Academy, passa a CoddyKit PRO. Il corso Cyber Security Academy include 4 lezioni in totale.

Cosa imparerò in «Gestione sicura delle dipendenze»?

Blocchi le versioni delle dipendenze, monitori le CVE, utilizzi i lock file e automatizzi la SCA nelle pipeline CI. Eserciti Cyber Security Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Cyber Security Academy?

Non è richiesta alcuna esperienza precedente. Cyber Security Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.

Quanto tempo richiede la lezione «Gestione sicura delle dipendenze»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Cyber Security Academy?

Sì. Ogni lezione Cyber Security Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Convalida degli input e codifica degli output
  2. Gestione sicura delle dipendenze
  3. OWASP ASVS: Application Security Verification Standard
  4. Tecniche di code review sicura
← Torna a Cyber Security Academy