Quando ci si avvicina al dominio della sicurezza delle applicazioni, una preoccupazione critica che emerge frequentemente riguarda la fase di analisi iniziale dei test statici di sicurezza delle applicazioni (SAST), realizzati con strumenti capaci di eseguire analisi molto approfondite come Fortify SAST.
La prospettiva di rilevare una serie scoraggiante di risultati all’inizio può, infatti, risultare scoraggiante, creando una percezione di maggiore complessità e preoccupazione che spesso spinge gli sviluppatori a optare per strumenti SAST meno sofisticati, che promettono la conformità AppSec senza necessariamente offrire la profondità di analisi tipica di Fortify.
Il valore esclusivo di Fortify SAST
Fortify SAST si caratterizza rispetto a scanner SAST meno robusti per la sua avanzata base di ricerca. Il team di ricerca dedicato, Fortify Research, si impegna a fornire aggiornamenti trimestrali del Rulepack, consentendo a Fortify SAST di supportare un’ampia gamma di linguaggi di programmazione e framework. Fortify SAST è in grado di identificare uno spettro di 815 categorie di vulnerabilità uniche e copre oltre un milione di singole API. Questo livello di analisi supera in modo significativo la capacità di strumenti SAST più semplici, fornendo una valutazione più approfondita delle potenziali vulnerabilità.
L’accuratezza della soluzione di OpenText nell’identificare le vere minacce alla sicurezza è confermata dall’OWASP 1.2b Benchmark che ha attribuito a Fortify SAST un tasso di identificazione dei veri positivi del 100%.
Districarsi tra falsi positivi e negativi
Alcune preoccupazioni associate agli strumenti SAST riguardano la possibilità che i risultati delle scansioni producano una quantità eccessiva di risultati dentro cui si cela un elevato numero di falsi positivi e negativi.
Un falso positivo si verifica quando un sistema di sicurezza identifica erroneamente un’attività innocua come malevola: In pratica, questo significa che un’azione sicura o un file innocuo viene segnalato come una minaccia portando a consumare tempo e risorse umane per l’investigazione e la risoluzione di allarmi che non rappresentano una reale minaccia. Al contrario, un falso negativo si verifica quando un’attività malevola non viene rilevata e segnalata come tale dal sistema di sicurezza. Ciò significa che un attacco reale o un malware viene ignorato e lasciato libero di agire all’interno del sistema.
È essenziale riconoscere che tutti gli strumenti SAST realizzano un compromesso tra falsi positivi e falsi negativi. Se ridurre al minimo i falsi positivi è fondamentale, è altrettanto importante prevenire i falsi negativi, che potrebbero nascondere rischi significativi per la sicurezza dell’applicazione. A differenza di strumenti SAST che potrebbero non andare abbastanza a fondo per scoprire vulnerabilità complesse, il SAST di Fortify fornisce un’analisi approfondita con opzioni di filtraggio avanzate per le implementazioni on-premise, per gestire efficacemente i falsi negativi.
Non va poi scordato il ruolo fondamentale degli auditor nel filtrare i risultati ottenuti dalle scansioni ed eliminare il rumore. I metodi di auditing tradizionali, tuttavia, possono diventare un collo di bottiglia nella sicurezza delle applicazioni, non riuscendo spesso ad allinearsi con il ritmo rapido richiesto dagli sviluppatori.
In risposta, Fortify ha sviluppato algoritmi di machine learning non supervisionato all’avanguardia in collaborazione con i data scientist del suo team Security Analytics. Questi algoritmi, presenti in Audit Assistant 2.0, sono il risultato di processi di addestramento di centinaia di milioni di decisioni di audit anonimizzate provenienti da scansioni SAST storiche e anonimizzate di Fortify on Demand (FoD). Queste innovazioni riducono significativamente il tempo necessario per l’analisi e la valutazione, offrendo spunti d’azione per una rapida risoluzione dei problemi. Queste funzionalità sono integrate in FoD e sono disponibili per le implementazioni on-premise, dove è possibile addestrare gli algoritmi sui propri dati di scansione.
Soluzioni per gestire efficacemente i veri positivi
Gli sviluppatori si concentrano tipicamente sulla correzione delle vulnerabilità critiche in accordo alle linee guida previste, trascurando spesso problemi di gravità moderata o bassa. Questo approccio selettivo porta, tuttavia, a un accumulo crescente di preoccupazioni minori che, sebbene non rappresentino minacce immediate, contribuiscono a un più ampio “debito tecnico di sicurezza”. I team AppSec sono incaricati di dare priorità alle vulnerabilità ad alto rischio in mezzo a un elenco in costante espansione di minacce minori, espandendo di fatto la superficie di attacco dell’applicazione evitando di affrontare queste vulnerabilità.
Ne consegue che anche l’elevato volume di rilevazioni corrette (veri positivi) pone un significativo problema di gestione.
Per affrontare in modo specifico le sfide poste dall’elevato volume di veri positivi che possono presentarsi, Fortify SAST ha introdotto alcune soluzioni all’avanguardia: Speed Dial, Smart View e l’integrazione con Mobb.
Speed Dial consente agli sviluppatori di regolare il livello di approfondimento di un test statico in base agli specifici requisiti dell’applicazione. Questa funzionalità riconosce che non tutte le fasi dello sviluppo o le applicazioni richiedono lo stesso livello di analisi, offrendo agli sviluppatori la possibilità di modulare il livello di profondità della scansione e optare per una scansione meno approfondita quando è possibile in modo da velocizzare il processo di scansione fino al 50% e riservare le scansioni più approfondite per le situazioni ad alto rischio.
La funzionalità Smart View, disponibile in Fortify Audit Workbench, offre una rappresentazione visiva sofisticata delle problematiche di flusso dei dati all’interno del codice dell’applicazione. Questa funzionalità semplifica notevolmente il processo di identificazione e comprensione dei percorsi attraverso i quali le vulnerabilità possono essere sfruttate. Visualizzando una mappa chiara e intuitiva di come i dati si muovono attraverso il sistema e dove potrebbero verificarsi violazioni della sicurezza, Smart View permette agli sviluppatori e agli analisti di sicurezza di individuare rapidamente le vulnerabilità critiche e di predisporre gli approcci ottimali per la loro risoluzione o analisi. Questa caratteristica si dimostra particolarmente utile quando si affronta un grande numero di veri positivi poiché aiuta a definire le priorità dei problemi in base al loro impatto potenziale, garantendo che le vulnerabilità più critiche vengano affrontate tempestivamente.
La partnership di Fortify con Mobb ha consentito l’integrazione della tecnologia di quest’ultima senza soluzione di continuità con Fortify SAST per automatizzare il processo di correzione. In particolare, la funzionalità PowerUp di Mobb guida gli sviluppatori nel processo di applicazione di correzioni efficaci ed efficienti alle vulnerabilità identificate assicurando che non solo vengano rimosse, ma anche che le applicazioni vengano rese più resilienti rispetto a problemi simili in futuro.