Integrazione di ZAP in SDLC. Lo sto facendo bene?

3

Stiamo cercando di integrare le scansioni OWASP ZAP nel nostro ciclo di sviluppo. Quando una nuova build raggiunge il team di controllo qualità, esegue uno strumento di automazione simile a Selenium, che apre un browser Web Firefox in una macchina Windows e esegue i test case. Essendo completamente nuovo per ZAP, questo è quello che ho impostato ora per ottenere regolarmente i risultati di scansione da quei test.

  1. Installato lo strumento ZAP in una macchina Linux e sta funzionando modalità demone con un tasto api sulla porta 8080

  2. Apportate modifiche alle impostazioni di Firefox nella macchina Test di automazione che ogni nuovo profilo di Firefox aperto da Selenium avrà il proxy puntato su < IP_of_ZAP_Machine: 8080 >.

  3. Un cronjob verrà eseguito ogni mezzanotte che effettua le seguenti operazioni in questo ordine:

    • Raccoglie gli URL scansionati chiamando l'URL http://IP_of_ZAP_Machine:8080/XML/core/view/sites/?zapapiformat=XML

    • Genera un elenco di URL che mostra gli avvisi per ciascun "sito" ottenuto dal passaggio precedente.

      Esempio: http://IP_of_ZAP_Machine:8080/HTML/core/view/alerts/?zapapiformat=HTML&baseurl=https%3A%2F%2Fwww.example.com&start=&count= per i risultati della scansione su link

    • Scarica i risultati della scansione in formato HTML chiamando tutti gli URL del passaggio precedente e inserendo tutti gli HTML in un file ZIP .

    • invia il file ZIP al mio team.

    • Carica una nuova sessione in modo che i risultati inviati via e-mail dopo la mezzanotte conterranno i risultati solo dalla mezzanotte precedente. La nuova sessione viene caricata utilizzando l'URL http://IP_of_ZAP_Machine:8080/JSON/core/action/newSession/?zapapiformat=JSON&apikey=<my_api_key>&name=${newsessionname}&overwrite=

Mentre ottengo i risultati della scansione come previsto ogni giorno, le domande sono: lo sto facendo bene? C'è un modo più corretto o stabilito per farlo?

Nota: i risultati di tutti i passaggi sono registrati in un file di registro per future verifiche.

    
posta Sree 10.04.2017 - 13:28
fonte

2 risposte

3

Funziona per te? Se è così allora sì, probabilmente lo stai facendo bene;) ZAP è uno strumento molto flessibile e molte persone lo usano in modi diversi. Una domanda: stai riavviando l'istanza ZAP, ad esempio per ogni scansione o dopo un periodo di tempo? In caso contrario, potresti incorrere in problemi poiché ZAP non è progettato per essere eseguito come un processo a lunga esecuzione. Stiamo lavorando per cambiarlo, ma non siamo ancora arrivati.

    
risposta data 10.04.2017 - 13:44
fonte
1

C'è anche un plug-in ZAP per Jenkins che funziona bene per il tipo di test automatico che sei cercando di fare.

    
risposta data 07.09.2017 - 23:18
fonte

Leggi altre domande sui tag