ZAP
Strumento di scansione | Web |
Mobile |
Local |
API |
Extension |
Serverless |
Istruzioni |
---|---|---|---|---|---|---|---|
OWASP® Zed Attack Proxy (ZAP) |
Utilizza il OWASP ZAP ; il contenitore Docker ZAP per eseguire scansioni dinamiche automatiche (DAST) sulla tua applicazione. I file di configurazione predefiniti includono già tutti i CWE necessari. Devi soloaggiungerlo al tuo ambiente e al comando Docker run. |
Per la definizione di ciascun tipo
fai clic qui
È possibile eseguire un'analisi completa su applicazioni web, mobile o interne seguendo questa procedura:
-
Le scansioni DAST e API verranno eseguite utilizzando l'immagine Docker ZAP. Per le applicazioni web, mobile o interne, la scansione completa ZAP deve essere eseguita in un ambiente di produzione 1 o di staging.
-
Scarica il file di configurazione zap-casa-config.conf e vai alla relativa directory.
-
Genera un file di contesto in base al quale eseguire la scansione. Per ulteriori dettagli, consulta le istruzioni "Autenticazione" riportate di seguito.
-
Esegui il seguente comando:
docker run -p 8080:8080 -v $(pwd):/zap/wrk/:rw -t owasp/zap2docker-stable zap-full-scan.py -t https://example.com -P 8080 -c zap-casa-config.conf -x results-full.xml -n example.context -U username
-
L'output verrà salvato in un file XML (esempio allegato qui: zap-results-full.xml)
Per eseguire una scansione dell'API, segui questi passaggi:
-
Per le analisi dell'API, utilizza il file di configurazione zap-casa-api-config.conf.
-
Vai alla relativa directory ed esegui il seguente comando
docker run -p 8080:8080 -v $(pwd):/zap/wrk/:rw -t owasp/zap2docker-stable zap-api-scan.py -t https://example.com -f openapi-P 8080 -c zap-casa-api-config.conf -x results-full.xml
-
L'output verrà salvato in un file XML (esempio allegato qui: zap-results-api.xml )
Autenticazione
Le analisi ZAP devono essere eseguite con autenticazione per capire dove vengono archiviati e a quali dati utente viene eseguito l'accesso. Questa operazione richiede la configurazione prima di eseguire le scansioni. L'immagine Docker di ZAP consente due argomenti relativi all'autenticazione:
-n file_contesto |
File di contesto che verrà caricato prima della scansione della destinazione |
-U utente |
Nome utente da utilizzare per le scansioni autenticate. L'utente deve essere definito nel file di contesto specificato. |
Per impostare questi parametri, è necessario creare un file di contesto. Questa operazione può essere eseguita più facilmente tramite l'interfaccia utente desktop di Zap.
-
Imposta il meccanismo di autenticazione. ZAP attualmente supporta cinque approcci di autenticazione:
-
Autenticazione manuale
-
Autenticazione basata su modulo
-
Autenticazione HTTP/NTLM
-
Autenticazione basata su script
-
Autenticazione basata su JSON
-
- Definisci i parametri di autenticazione. In genere, sono inclusi l'URL di accesso e il formato del payload (nome utente e password). I parametri richiesti sono specifici per i metodi di autenticazione utilizzati.
- Aggiungi un utente e una password validi. Crea più utenti se l'applicazione espone funzionalità diverse in base ai ruoli.
Una volta configurate queste impostazioni, puoi esportare il contesto come file per la scansione.
Assicurati di salvare il contesto in un punto a cui è facile fare riferimento, poiché dovrai includere il percorso del file come argomento per il comando di scansione. Ora potrai eseguire una scansione autenticata con l'accesso utente specificato nel contesto. Esempio:
docker run -p 8080:8080 -v $(pwd):/zap/wrk/:rw -t owasp/zap2docker-stable zap-full-scan.py -t https://example.com -P 8080 -c zap-casa-config.conf -x results-full.xml -n /Users/DemoUser/Documents/Context.context -U test@example.com