Chiosa
Software & Code

Le correzioni di sicurezza devono mantenere funzionanti i progetti

2 min
Pubblicato su Chiosa Aggiornato

In parole semplici

Un agente di programmazione a cui viene chiesto di aggiornare un pacchetto software vulnerabile ha due compiti: rimuovere la vulnerabilità e non rompere il progetto. VulnBump raccoglie aggiornamenti di progetti reali e valuta entrambi.

Un verificatore separato controlla ogni tentativo cercando di nuovo la vulnerabilità, compilando il progetto e rieseguendo i test che prima passavano. Su 307 aggiornamenti, Snyk Evo Remediation Agent ha superato tutti i controlli più spesso delle configurazioni di Claude Code valutate. I risultati comprendono un solo tentativo per aggiornamento e i test propri di ciascun progetto.

La ricerca

Quando una dipendenza ha una correzione di sicurezza nota, un agente di programmazione può applicarla senza lasciare irrisolta la vulnerabilità né compromettere il progetto? I controlli degli aggiornamenti che verificano solo se compilazione e test continuano a funzionare possono non rilevare una correzione incompleta. Il paper chiede come valutare insieme entrambi gli aspetti.

VulnBump valuta aggiornamenti reali delle dipendenze con un verdetto a quattro controlli fornito da un verificatore indipendente e mostra quali sistemi di programmazione rimuovono le vulnerabilità mantenendo funzionanti i progetti.

Gli autori presentano VulnBump, che valuta 307 aggiornamenti di dipendenze in 43 repository e sei gestori di pacchetti.

In un container nuovo, un verificatore indipendente controlla che le dipendenze si risolvano, che una nuova scansione trovi corretta la vulnerabilità, che il progetto si compili e che i test precedentemente superati continuino a passare.

Usando lo stesso modello, Snyk Evo Remediation Agent ha superato tutti e quattro i controlli nel 90.2% degli aggiornamenti, contro il 77.5% di Claude Code con gli stessi risultati e la stessa versione obiettivo di Snyk. Il punteggio congiunto valuta insieme la correzione della vulnerabilità e l’integrità del progetto.

I tassi sono calcolati aggregando gli aggiornamenti, non come medie tra repository.

Evo Remediation Agent e Claude Code usano harness, prompt e strumenti diversi, quindi il confronto non permette di stabilire quale componente spieghi la differenza; ogni sistema è stato eseguito una volta e verificato con i test propri di ciascun progetto.

Analisi

Dettagli

Paper successivoI test generati spesso falliscono con implementazioni valide