Introduzione a GitHub Advanced Security

Completato

GitHub Advanced Security (GHAS) è una suite completa di funzionalità di sicurezza progettate per migliorare la postura di sicurezza dei progetti di sviluppo software. Oltre a essere strettamente integrata con GitHub. GHAS è disponibile anche come estensione di Azure DevOps e offre quindi funzionalità simili in entrambe le piattaforme.

Anche se GHAS non è progettata per misurare direttamente il debito tecnico, le sue capacità possono contribuire notevolmente all'individuazione e alla correzione di tale debito. GHAS offre analisi del codice, gestione delle dipendenze e revisioni avanzate del codice insieme ai servizi di analisi della sicurezza, ad esempio l'analisi del codice, l'analisi dei segreti e l'analisi delle dipendenze. GHAS fornisce anche informazioni dettagliate e raccomandazioni per classificare in ordine di priorità e risolvere le vulnerabilità di sicurezza.

Sfruttando queste funzionalità, le organizzazioni possono identificare e risolvere in modo proattivo il debito tecnico all'inizio del ciclo di vita dello sviluppo. Ciò riduce i rischi per la sicurezza, migliora la qualità del codice e facilita la manutenibilità a lungo termine dei progetti software.

CodeQL analysis

CodeQL è un motore di analisi semantica del codice che consente agli sviluppatori di identificare i problemi all'interno delle codebase. Fornisce un linguaggio di query dichiarativo progettato per cercare criteri che consentono di identificare gli errori di scrittura di codice e i difetti di progettazione, che contribuiscono all'accumulo di debito tecnico. Le sue funzionalità di analisi possono essere usate anche per rilevare potenziali vulnerabilità di sicurezza, ad esempio difetti di inserimento, problemi di autenticazione e problemi di controllo di accesso, che sono spesso indicativi del debito tecnico sottostante.

Gestione delle dipendenze

La gestione delle dipendenze è fondamentale per la gestione del debito tecnico associato a dipendenze obsolete o vulnerabili. L'analisi delle dipendenze di GHAS offre visibilità sulle dipendenze del progetto, incluse informazioni su pacchetti obsoleti, vulnerabilità di sicurezza e problemi di licenza. Dependabot può aggiornare automaticamente le dipendenze con vulnerabilità di sicurezza, consentendo di mantenere aggiornata e sicura la codebase.

Analisi del codice

L'analisi del codice analizza automaticamente i repository di codice per individuare potenziali vulnerabilità di sicurezza ed errori di scrittura di codice, inclusi i difetti del codice e gli anti-pattern, usando una combinazione di tecniche di analisi statica. Rileva problemi di sicurezza comuni, scripting intersito (XSS), SQL injection e overflow del buffer, che, analogamente all'analisi basata su CodeQL, indicano comunemente il debito tecnico risultante da procedure di scrittura di codice non sicure. L'analisi del codice di sicurezza fornisce inoltre informazioni dettagliate di utilità pratica su qualità del codice e rischi per la sicurezza, aiutando a classificare in ordine di priorità e risolvere il debito tecnico nel modo più efficiente ed efficace.