The Pulse
GitHub rende disponibile AI Scan per la sicurezza delle pull request
Il 15 ottobre GitHub ha reso AI Scan per le pull request generalmente disponibile, aggiungendo controlli delle vulnerabilità per linguaggi e framework attualmente non coperti da CodeQL. I risultati hanno valore consultivo e la funzionalità

AI.info Team · Scritto con l’IA ·
Più linguaggi, ma nessun blocco dell’unione
Il 15 ottobre GitHub ha reso AI Scan per le pull request generalmente disponibile, estendendo i controlli delle vulnerabilità oltre i linguaggi e i framework coperti da CodeQL. Il lancio comporta un compromesso preciso: lo scanner può segnalare rischi e suggerire correzioni, ma i suoi risultati non possono far fallire un controllo di scansione del codice né impedire l’unione di una pull request in base ai requisiti dei set di regole. I team ottengono un ulteriore elemento per la revisione, non uno strumento per imporre il rispetto delle regole.
GitHub presenta AI Scan come complemento a CodeQL, non come suo sostituto. Secondo l’azienda, può individuare vulnerabilità nelle modifiche apportate dalle pull request che riguardano PHP, Shell/Bash, la configurazione Terraform (HCL), i Dockerfile, JSP per Java e Blazor per C#, oltre ad altre tecnologie non coperte. La funzionalità è quindi rilevante per i repository il cui codice comprende tecnologie attualmente non coperte da CodeQL.
I risultati compaiono accanto agli avvisi di CodeQL
Quando la scansione del codice e l’impostazione AI Scan effettiva del repository sono abilitate, le scansioni vengono eseguite automaticamente sulle pull request idonee. I risultati compaiono nelle schede Conversation e Files changed accanto a quelli di CodeQL, con un’etichetta «AI» che li distingue. Un risultato può includere una spiegazione del rischio per la sicurezza e una correzione automatica suggerita, fornendo ai revisori elementi da valutare prima dell’unione.
Il carattere consultivo limita l’uso che i team possono fare di questi risultati. Secondo GitHub, i risultati di AI Scan non fanno fallire i controlli di scansione del codice e non possono essere usati per bloccare un’unione tramite i requisiti dei set di regole. L’azienda esclude inoltre le pull request provenienti da fork e quelle create da Dependabot: la funzionalità, quindi, non esamina tutte le modifiche proposte.
L’accesso dipende dal tipo di repository
I repository pubblici appartenenti a organizzazioni o account personali possono usare AI Scan. Per i repository privati e interni appartenenti a organizzazioni, GitHub richiede GitHub Code Security oppure GitHub Advanced Security. Non è necessaria una licenza GitHub Copilot: una novità che svincola l’accesso a questa funzionalità di scansione dalle licenze Copilot.
L’annuncio non presenta AI Scan come uno strumento di verifica dell’intero repository. La funzionalità è legata alle modifiche apportate dalle pull request: i risultati compaiono nel flusso di revisione e le esclusioni riguardano pull request di provenienza specifica. I team che ne valutano la copertura dovrebbero quindi considerarla un controllo aggiuntivo sulle modifiche proposte idonee, non un sostituto di una più ampia revisione della sicurezza.
L’utilizzo attinge ai Code Security AI Credits
AI Scan consuma Code Security AI Credits. GitHub afferma che, nella visualizzazione di fatturazione e licenze per le aziende, l’utilizzo compare nella sezione «AI usage» del prodotto «Advanced Security» e che gli amministratori possono impostare budget a livello di SKU. L’annuncio del lancio non indica un prezzo per singola scansione: le organizzazioni dovranno quindi monitorare il proprio consumo di crediti, anziché desumere un costo fisso dall’annuncio della disponibilità.
Con questo rilascio, GitHub amplia l’insieme delle modifiche apportate dalle pull request che il suo prodotto di scansione del codice può esaminare, lasciando le decisioni finali sull’unione ai controlli esistenti e alla revisione umana. Il limite pratico è esplicito: AI Scan può segnalare un rischio e raccomandare una correzione, ma non può impedire l’unione della pull request.