AWS ha reso Continuum per le vulnerabilità nel codice generalmente disponibile nelle regioni US East (N. Virginia) e US West (Oregon), quattro mesi dopo averne annunciato un’anteprima a accesso limitato. Il servizio verifica i problemi rilevati mettendoli in relazione con il codice e il contesto dell’ambiente, quindi propone una correzione sotto forma di patch o pull request in un repository collegato. Prima che la correzione venga distribuita, una persona deve esaminarla e approvarla.
Secondo AWS, il servizio è pensato per aiutare i team a gestire l’elevato numero di avvisi degli strumenti di scansione. I dirigenti dell’azienda affermano che i grandi parchi applicativi possono generare migliaia di segnalazioni al giorno, molte delle quali riguardano vulnerabilità non raggiungibili o non sfruttabili, oppure già bloccate dai controlli esistenti. Continuum punta a indicare quali problemi sono sfruttabili e come un attacco potrebbe ripercuotersi sui sistemi collegati, invece di basarsi solo su un livello di gravità.
Come verifica Continuum una vulnerabilità?
Il servizio crea un grafo di contesto a partire dai repository di codice e dalle informazioni sull’ambiente AWS. I team possono collegare il codice tramite GitHub o un bucket Amazon S3. Possono anche configurare un collector AWS che fornisce dettagli sulle risorse e sulla rete dell’account e della regione in cui viene eseguito il codice; queste informazioni aiutano Continuum a valutare se un aggressore può raggiungere un percorso vulnerabile e quali altri sistemi potrebbero essere esposti.
Per le vulnerabilità che riesce a riprodurre, Continuum esegue un exploit in una sandbox isolata e allega codice proof-of-concept e istruzioni per riprodurlo. Fornisce inoltre analisi del codice a supporto, un percorso di attacco e una valutazione del potenziale raggio d’impatto. AWS afferma che il servizio può valutare se le difese esistenti rileverebbero e bloccherebbero il percorso convalidato.
Continuum genera patch per il codice, aggiornamenti delle dipendenze o modifiche alla configurazione e può aprire pull request con queste proposte. La console avverte che una patch generata non significa che la vulnerabilità sia stata risolta: qualcuno deve comunque esaminarla e integrarla. AWS dichiara di voler consentire ai clienti di autorizzare categorie di correzioni da applicare automaticamente dopo controlli di affidabilità, tra cui la copertura dei test, i limiti di ambito e i risultati ottenuti in passato.
Quanto costa?
Secondo i dettagli sui prezzi di AWS citati da InfoQ, il costo si articola in due componenti: un addebito mensile per il contesto, calcolato in base alle righe di codice protette, e un costo di inferenza di $10 per ogni unità di inferenza Continuum man mano che vengono elaborati i problemi rilevati. Il costo del contesto parte da $200 per milione di righe e scende a $100 per milione oltre i dieci miliardi di righe.
Gli esempi di prezzo di AWS mostrano quanto il volume delle vulnerabilità rilevate possa incidere sul conto. Proteggere un milione di righe con 100 vulnerabilità, ciascuna da un’unità, costa $1,200. Proteggere 100 milioni di righe con 10,000 vulnerabilità, ciascuna da due unità, costa $218,200, di cui $200,000 per le inferenze. Gli esempi mostrano che il costo per vulnerabilità è un fattore importante per i team con grandi arretrati, anche quando il codice non è particolarmente esteso.
Perché conta
I team di sicurezza possono usare Continuum per affiancare alle segnalazioni degli strumenti di scansione prove di sfruttabilità e correzioni proposte, ma ogni correzione deve comunque essere approvata e integrata da una persona. Il collector AWS opzionale fornisce informazioni sulla rete e sulle risorse; non è ancora chiaro come Continuum gestisca le vulnerabilità che non riesce a dimostrare.