ZAP
Strumento di scansione | Web |
Mobile |
Local |
API |
Extension |
Serverless |
Istruzioni |
---|---|---|---|---|---|---|---|
OWASP® Zed Attack Proxy (ZAP) |
Utilizza il container ZAP OAP e ZAP Docker per eseguire scansioni dinamiche automatiche (DAST) sulla tua applicazione. I file di configurazione predefiniti hanno già tutti i CWE necessari. Tutto ciò che devi fare è aggiungerlo al tuo ambiente e al comando Docker run. |
Per la definizione di ciascun tipo
fai clic qui
È possibile eseguire una scansione completa delle applicazioni web, per dispositivi mobili o interne seguendo questi passaggi:
-
Le scansioni DAST e API verranno eseguite utilizzando l'immagine Docker ZAP. Per le applicazioni web, mobile o interne, la scansione ZAP completa deve essere eseguita in un ambiente di produzione o di gestione temporanea.
-
Scarica il file di configurazione zap-casa-config.conf e vai alla directory.
-
Genera un file di contesto su cui eseguire l'analisi. Per ulteriori dettagli, consulta le istruzioni "Autenticazione" di seguito.
-
Esegui questo 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)
La scansione dell'API può essere eseguita seguendo questi passaggi:
-
Per le scansioni delle API, utilizza il file di configurazione zap-casa-api-config.conf.
-
Passa alla directory ed esegui questo 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 qui allegato: zap-results-api.xml )
Autenticazione
Le scansioni ZAP devono essere eseguite con autenticazione per comprendere dove sono archiviati e accessibili i dati utente. Questa operazione richiede una configurazione prima di eseguire le scansioni. L'immagine Docker ZAP consente due argomenti relativi all'autenticazione:
-n contesto_file |
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 facilmente tramite l'interfaccia utente di ZAP Desktop.
-
Imposta il meccanismo di autenticazione. Attualmente ZAP supporta cinque approcci di autenticazione:
-
Autenticazione manuale
-
Autenticazione basata su moduli
-
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 obbligatori sono specifici dei metodi di autenticazione utilizzati.
- Aggiungi un utente e una password validi. Crea più utenti se l'applicazione espone funzionalità diverse in base ai ruoli.
Dopo aver configurato queste impostazioni, puoi esportare il contesto come file da sottoporre alla tua scansione come riferimento.
Assicurati di salvare il contesto in modo che sia facile da 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