DAST, o dynamic application security testing, è un approccio di test che prevede il test di un'applicazione per diverse vulnerabilità di runtime che si verificano solo quando l'applicazione è completamente funzionante. Questi problemi possono essere correlati al runtime, al codice, alle dipendenze e altro ancora.
Come una sorta di test black-box (il che significa che non si è consapevoli di ciò che è in esecuzione all'interno dell'applicazione quando si tenta di sfruttarla), DAST adotta un approccio outside-in e simula scenari di attacco del mondo reale come SQL injection, cross-site scripting e problemi di autenticazione.
Get the Application Security Best Practices [Cheat Sheet]
This 6-page guide goes beyond basics — it’s a deep dive into advanced, practical AppSec strategies for developers, security engineers, and DevOps teams.

Come funziona effettivamente il DAST?
DAST si adatta al meglio alla fase di test della tua applicazione. DAST generalmente viene fornito dopo altre scansioni di sicurezza e qualità del codice nelle pipeline, come ad esempio SAST.
DAST prevede più passaggi:
1. Scoperta
In questa fase, un'applicazione viene scansionata per trovare i punti di ingresso o le interfacce che consentono a un utente di interagire con l'applicazione. Pensa alle API, ai moduli, all'interfaccia utente o agli URL. Tutti questi punti di ingresso saranno testati nella fase successiva.
2. Simulazione
Una volta identificate le interfacce dell'applicazione nella fase di rilevamento, l'applicazione è esposta a diversi tipi di attacchi come SQL injection, Scripting tra siti (XSS), perdite di memoria di runtime, falsificazione di richieste cross-site (CSRF), Escalation dei privilegi, le configurazioni del server e i problemi TLS. Gli strumenti DAST tentano di eseguire questi attacchi e si sforzano di ottenere l'accesso alle parti critiche dell'applicazione.
3. Analisi
Una volta eseguite le simulazioni, i risultati di queste simulazioni di attacco vengono analizzati per determinare se sono presenti vulnerabilità o meno.
4. Cronaca
Nella fase di segnalazione, gli strumenti DAST presentano le vulnerabilità identificate e suggeriscono strumenti e potenziali correzioni. La reportistica può essere integrata con i canali di comunicazione dell'organizzazione per avvisare i team non appena viene rilevata una vulnerabilità.
Tutti questi passaggi insieme creano una scansione DAST completa e i report sono un punto di partenza per indagini e correzioni, consentendo ai team di rafforzare la posizione di sicurezza del sistema.
SAST contro DAST
Ricapitolando, il test dinamico di sicurezza delle applicazioni (DAST) è una tecnica di test di penetrazione che valuta un'applicazione'senza analizzare il codice sottostante. Invece di ispezionare la base di codice, DAST si concentra sull'esecuzione e l'interazione con il software utilizzando vettori di attacco noti.
Ad esempio, DAST testa un server HTTP inviando richieste incorporate con potenziali exploit per verificare se l'applicazione è vulnerabile. Dal momento che DAST non't esaminare il codice stesso,'è indipendente dal linguaggio ed è efficace indipendentemente dal linguaggio di programmazione o dalle tecnologie utilizzate, il che lo rende versatile su diverse piattaforme.
Sebbene DAST tenda a essere più lento dei test statici di sicurezza delle applicazioni (SAST), è in grado di rilevare una gamma più ampia di vulnerabilità che non sono evidenti a SAST, come le vulnerabilità di runtime che si verificano negli ambienti di produzione. (Vulnerabilità come la suscettibilità agli attacchi DDoS (Distributed Denial of Service), l'esposizione di dati interni sensibili o configurazioni errate nei servizi di terze parti.
D'altra parte SAST viene prima di DAST durante lo sviluppo e pipeline CI/CD. SAST analizza il codice sorgente stesso e può essere eseguito molto presto nelle pipeline DevSecOps. Con SAST, il codice viene analizzato per trovare modelli che possono essere potenziali problemi. SAST può anche essere abbinato al fuzzing per risultati più completi.
DAST contro IAST
IAST, o test di sicurezza interattivo delle applicazioni, è una combinazione di metodologie SAST e DAST che può aggiungere più valore ai test di sicurezza. IAST analizza il codice sorgente alla ricerca di vulnerabilità ed esegue anche parte del codice per identificare i problemi e monitorarne il comportamento in tempo reale. IAST analizza il runtime aggiungendo strumentazione per misurare metriche importanti in diversi punti di codice, aiutando a identificare i problemi di sicurezza e a indicare la gravità del problema.
Vantaggi di DAST
I test dinamici di sicurezza delle applicazioni sono molto vicini alle situazioni di attacco in tempo reale, quindi possono aiutarti a rilevare gli exploit che si trovano effettivamente in natura. Ecco un riepilogo degli altri vantaggi che DAST porta in tavola:
Vulnerabilità di runtime e rilevamento di vulnerabilità estese: Oltre al codice, è possibile riscontrare problemi gravi nel runtime (e solo nel runtime). Questo rende DAST davvero utile perché la scansione delle vulnerabilità in fase di esecuzione è la specialità di DAST. DAST guarda anche oltre il codice da una prospettiva esterna e può testare problemi come la cattiva gestione delle sessioni, la falsificazione delle richieste cross-site, i reindirizzamenti aperti, Log4Shelle altro ancora.
Test indipendenti dalla lingua: Gli strumenti DAST non devono comprendere il linguaggio di codifica utilizzato per creare l'applicazione: sono in grado di identificare e sfruttare eventuali vulnerabilità, qualunque cosa accada. Ciò semplifica l'implementazione di DAST, semplificando i flussi di lavoro di test.
Test di terze parti: Puoi testare le tue dipendenze per eventuali problemi tramite gli strumenti DAST. (Dal momento che non deve comprendere il funzionamento interno e ha bisogno solo di interfacce per avviare la valutazione, è facile utilizzare DAST sui tuoi strumenti di terze parti!)
Comportamento di attacco reale: Il più grande punto di forza di DAST è la natura dei suoi "attacchi". Le simulazioni eseguite dagli strumenti DAST sono molto vicine al comportamento reale degli aggressori.
Catch code risks before you deploy
Learn how Wiz Code scans IaC, containers, and pipelines to stop misconfigurations and vulnerabilities before they hit your cloud.

Limitazioni del DAST
Sebbene DAST sia un'ottima opzione per i test, presenta alcuni aspetti negativi:
Falsi positivi nei test di sicurezza: DAST può innescare molti falsi positivi, creando molto lavoro per i team, che devono setacciarli tutti e decidere a quali avvisi prestare attenzione.
Rilevamento lento: DAST è molto lento rispetto alla sua controparte, SAST, e potrebbe richiedere molto tempo per rilevare i problemi, allungando i cicli di distribuzione.
Opposto di shift left: L'approccio shift-left di SAST consente di risparmiare molto tempo, ma DAST è fondamentalmente l'opposto. È possibile avviare solo l'analisi DAST dopo Il codice dell'applicazione è completo, compilato e distribuito. Poiché viene fornito dopo la distribuzione, l'identificazione e l'instradamento della correzione dei problemi ai proprietari dello sviluppo pertinenti è un processo lungo.
Nessuna intuizione sul codice: Poiché DAST non ha visibilità sul codice stesso, possono esserci problemi che DAST non rileva. Ecco perché anche il SAST è molto importante, ed è una buona idea utilizzarli entrambi e non fare affidamento solo su uno.
DevOps Security Best Practices [Cheat Sheet]
In this 12 page cheat sheet we'll cover best practices in the following areas of DevOps: secure coding practices, infrastructure security, monitoring and response.
Download Cheat SheetStrumenti DAST open source più diffusi
Esistono molti strumenti open source popolari che puoi sfruttare per l'analisi DAST. Eccone alcuni in continuo sviluppo:
Tool | Description |
---|---|
OWASP ZAP | ZAP, or Zed Attack Proxy, is one of the most popular DAST tools. It can be easily integrated into your CI/CD security pipeline to analyze the behavior of your application. ZAP has a major community backing it, can perform other security testing like SAST, and can carry out code reviews as well. |
Wapiti | Wapiti is another very popular open-source tool for scanning web applications. It covers a wide array of attacks, including some advanced attacks like TLS misconfigurations and Shellshock. (Note that Wapiti doesn’t have a GUI and is more suited to scheduled scans than real-time testing.) |
Vega | Vega is also a free, open-source tool for dynamic application testing. Vega has APIs and GUI, which makes it user friendly. The downsides? Vega has limited support for modem JavaScript applications and can struggle with CI/CD integration. |
w3af | w3af is billed as a complete ecosystem for auditing web applications. It comes with a lot of helpful features—from notification channels to reporting and alerting. w3af’s drawbacks are a lack of a GUI and limited support for C/CD. |
Burp Suite | Burp Suite is used widely for security scanning and testing. Burp Suite is available as a community offering as well as a paid version. (With the paid version, you can get some extra automated scanning features.) For better control and ease of use, Burp Suite offers a GUI. Burp Suite boasts a vast number of features and attacks that it can analyze and perform. |
Rafforza la sicurezza delle tue applicazioni e SDLC con Wiz Code
Sebbene le scansioni DAST possano richiedere molto tempo, aggiungono molto valore nel rafforzare la posizione di sicurezza delle applicazioni contro le minacce degli aggressori. Per mantenere la velocità e la produttività dei cicli di distribuzione agili, le scansioni DAST possono essere eseguite direttamente dopo la distribuzione e quindi ripetute in modo continuo e asincrono per segnalare eventuali vulnerabilità di runtime che potrebbero verificarsi.
Non c'è dubbio che DAST possa aiutarti a rafforzare la tua posizione di sicurezza dopo che le tue app sono state distribuite, ma DAST da solo non è sufficiente. È consigliabile implementare un approccio proattivo alla sicurezza ed eseguire un set completo di scansioni durante la fase di compilazione (codice di prime parti, codice di terze parti, infrastruttura e impostazioni di sicurezza della pipeline) per assicurarsi di non lasciare i sistemi esposti agli attori delle minacce, ed è qui che Codice Wiz entra.
Wiz Code offre feedback sulla sicurezza in tempo reale agli sviluppatori, arricchiti con approfondimenti sul cloud, direttamente nell'IDE e nelle richieste pull. Ciò consente agli sviluppatori di anticipare l'impatto delle vulnerabilità e dei segreti esposti una volta che il codice è stato distribuito e di correggere in modo proattivo i problemi di sicurezza delle applicazioni più importanti nel codice.
Wiz Code si connette anche ai repository di codice e alle pipeline CI/CD, analizzando l'intero stack di applicazioni e la posizione di sicurezza SDLC, dalle dipendenze del codice di terze parti e dai problemi di conformità delle licenze alle immagini dei container, ai modelli IaC e alle impostazioni delle pipeline VCS e CI/CD stesse, in modo da poter rilevare vulnerabilità, configurazioni errate, problemi di conformità, dati sensibili, segreti esposti, e malware.
Utilizzo di Wiz Code in combinazione con uno dei Wiz Partner di integrazione SASTcome Scacco Marx, Cycode o Jit, offre ai team di sicurezza visibilità e controllo completi sul livello di sicurezza delle applicazioni, dal momento della creazione al runtime, senza strumenti in silos o lacune nella copertura.
Vuoi vedere di persona come Wiz Code può proteggere tutto ciò che crei ed esegui, dal codice al cloud? Pianifica una demo oggi stesso.
Secure your cloud from code to production
Learn why CISOs at the fastest growing companies trust Wiz to accelerate secure cloud development.