Diventa Autore per CoreTech | Scopri di più





Configurazione passo passo di Acunetix con Jenkins

01/07/20 c.ardia News

Uno dei vantaggi più importanti dell'utilizzo di Acunetix è il fatto che puoi integrarlo nel tuo SDLC in modo da poter scansionare le tue applicazioni automaticamente e il prima possibile. Prima si esegue la scansione e prima si eliminano le vulnerabilità, meno tempo e risorse si perde. Questo è il principio alla base dell'approccio DevSecOps che sta guadagnando popolarità in tutto il mondo.

Jenkins è lo strumento CI / CD più popolare al mondo utilizzato nella maggior parte degli ambienti DevOps. Puoi scaricare Jenkins da https://jenkins.io/download/ . Jenkins funziona su piattaforme come Windows, distribuzioni Linux e in contenitori Docker. Puoi integrare completamente Acunetix con Jenkins in modo che le tue build includano una scansione della sicurezza web.

Passaggio 1. Installa il plug-in Acunetix per Jenkins

  1. Nell'interfaccia utente di Jenkins, fare clic sull'opzione di menu Gestisci Jenkins .
  2. Nella pagina Gestisci Jenkins, fai clic sull'opzione Gestisci plugin . Questo aprirà la pagina Gestione plugin Jenkins .
  3. Nella pagina Gestione plugin Jenkins , fare clic sulla scheda Disponibile .
  4. Nel campo Filtro , digitare Acunetix .

  1. Fai clic sulla casella di controllo accanto alplug-inAcunetix.
  2. Fare clic sulpulsanteInstalla senza riavvio.
  3. Al termine dell'installazione, fare clic sulla casella di controllo accanto aRiavvia Jenkins al termine dell'installazione e nessun lavoro è in esecuzione.

Passaggio 2. Trovare il percorso dell'archivio certificati

È necessario il percorso dell'archivio certificati per installare il certificato Acunetix SSL nell'archivio Jenkins CA.

Il percorsodell'archiviocertificati predefinito èJAVA_HOME_FOLDER \ lib \ security \ cacerts.È necessario identificareJAVA_HOME_FOLDERper il binario Java che esegue il servizio Jenkins.Tieni presente che la tua macchina potrebbe avere diverse installazioni di diverse versioni di Java.

Nota: l'istanza Java che esegue il servizio Jenkins è diversa dalle istanze JDK definite inGestisci JenkinsConfigurazione globale dello strumento.Le istanze JDK definite inGlobal Tool Configurationsono utilizzate da Jenkins durante i processi di compilazione.

Jenkins su Windows

Nota: descriviamo il processo di ricerca del percorso dell'archivio certificati per una versione a 32 bit di Jenkins 2.222.4 (l'ultima versione stabile al momento della stesura).Il processo potrebbe essere diverso con altre versioni di Jenkins.

Per scoprire quale installazione Java esegue il servizio Jenkins, aprire ilfilejenkins.xmlnella directory di installazione di Jenkins e cercare ilexecutabletag.Per esempio:

La%BASE%variabile si riferisce alla directory di installazione di Jenkins.Nel caso di Jenkins 2.222.4 (32 bit), si tratta diC: \ Programmi (x86) \ Jenkins.Pertanto, l'eseguibile Java èC: \ Programmi (x86) \ Jenkins \ jre \ bin \ java.

Per trovare ladirectoryjava.homeper l'istanza Java che esegue il servizio Jenkins, eseguire il comando seguente:

L'output mostrerà ladirectoryjava.homepertinente:

Poiché il filedell'archiviocertificati èJAVA_HOME_FOLDER \ lib \ security \ cacerts, ora sappiamo che in questo esempio è necessario utilizzare il file dell'archivio certificatiC: \ Program Files (x86) \ Jenkins \ jre \ lib \ security \ cacerts.

Jenkins su Linux

Devi prima sapere quale binario Java esegue il tuo servizio Jenkins.Dalla riga di comando, eseguire quanto segue:

Dovresti ricevere l'output che mostra tutti i processi che includonojenkinsnel nome o nel percorso, ad esempio:

In questo caso, possiamo vedere che l'eseguibile java è/ bin / java(il tuo sistema potrebbe avere una configurazione diversa) ma è quasi certamente un collegamento simbolico al binario reale installato dal pacchetto JDK o JRE o forse anche una catena di collegamenti simbolici.

Per trovare ladirectoryjava.homeper l'istanza Java che esegue il servizio Jenkins, eseguire il comando seguente:

Sostituisci/ bin / javacon l'eseguibile trovato in precedenza.L'output mostrerà ladirectoryjava.homepertinente:

Poiché il filedell'archiviocertificati èJAVA_HOME_FOLDER / lib / security / cacerts, ora sappiamo che in questo esempio è necessario utilizzare il file dell'archivio certificati/ usr / lib / jvm / java-11-openjdk-amd64 / lib / security / cacerts.

Passaggio 3. Installare il certificato nel keystore Java

Jenkins su Windows

Eseguire il comando seguente dal prompt dei comandi:

Conferma di aver installato correttamente il certificato su Windows:

Jenkins su Linux

Eseguire il comando seguente dal prompt dei comandi:

Conferma di aver installato correttamente il certificato su Linux:

Il risultato su Windows e Linux

Banner

Se il certificato è stato installato correttamente, vedrai i dettagli di AcunetixCA, ad esempio:

Nota: quando si accede al keystore Java, viene richiesta la password.La password predefinita èchangeit.

Nota: se si utilizza una versione diversa di Jenkins rispetto a 2.222.4 (32 bit), potrebbe essere necessario utilizzare un percorso diverso dell'installazione Java per tutti i comandi precedenti.

Passaggio 4. Configurare l'integrazione tra Jenkins e Acunetix

  1. Nell'interfaccia utente di Jenkins, fare clicsull'opzione di menuGestisci Jenkins.
  2. NellapaginaGestisci Jenkins, fai clicsull'opzioneConfigura sistema.Scorri verso il basso, fino allasezioneAcunetix.

3. Assicurarsi che ilvaloredell'URL dell'API Acunetixsia corretto.Per impostazione predefinita, ilcampoURL API Acunetixsi basa sulocalhost.

  • Il certificato CA Acunetix viene emesso per il nome host selezionato durante l'installazione di Acunetix.In Jenkins, devi usare lo stesso nome host.
  • Se Jenkins viene eseguito su un host diverso da Acunetix, è necessariorendere Acunetix raggiungibile da host diversi da localhost.
  • Se si utilizza Acunetix Online, utilizzarehttps://online.acunetix.com/api/v1.

4. Fai clic sulpulsanteAggiungiaccanto alcampoChiave API Acunetixe seleziona l'opzioneJenkins.

Banner

5. Nellafinestra di dialogo delprovider di credenziali Jenkins:

  • NelcampoTipo, selezionaTesto segreto.
  • NelcampoAmbito, selezionareGlobale (Jenkins, nodi, elementi, tutti gli elementi figlio, ecc.).
  • Apri l'interfaccia utente di Acunetix per recuperare la chiave API di Acunetix:
    • Vai allapagina deltuoprofilo(devi essere l'amministratore) e scorri verso il basso.
    • Se non disponi ancora di una chiave API, fai clic sul pulsanteGenera nuova chiave API.
    • Fare clic sulpulsanteCopiaper copiare la chiave API negli Appunti.
    • Torna all'interfaccia utente di Jenkins.
  • NelcampoSegreto, incolla la chiave API di Acunetix.
  • Fare clic sulpulsanteAggiungiper chiudere lafinestra di dialogo delprovider di credenziali Jenkins.
  • Fare clic sulpulsanteApplicaper salvare le impostazioni della chiave API Acunetix.
  • Fare clic sulpulsanteTest connessione: verrà visualizzato il messaggioConnesso correttamente.

Problemi di connessione - Note e risoluzione dei problemi

Il certificato CA Acunetix viene emesso per il nome host selezionato durante l'installazione di Acunetix.In Jenkins, devi usare lo stesso nome host.Se si desidera utilizzare l'indirizzo IP, è necessariogenerare nuovamente il certificato CA Acunetix per l'indirizzo IP.

Se si utilizza un nome host anziché un indirizzo IP o viceversa, Jenkins risponderà con unerrore diconnessione rifiutata.Per approfondire il problema riscontrato, segui queste istruzioni per il tuo sistema operativo.

  • Windows: per impostazione predefinita, puoi trovare i log di Jenkins in% JENKINS_HOME% \ jenkins.oute% JENKINS_HOME% \ jenkins.err, a meno che non sia personalizzato in% JENKINS_HOME% \ jenkins.xml.
  • Linux: per impostazione predefinita, puoi trovare i log di Jenkins in/var/log/jenkins/jenkins.log, a meno che non sia personalizzato in/ etc / default / jenkins(per *.deb) o tramite/ etc / sysconfig / jenkins(per *.Rpm).

Passaggio 5. Aggiungere una scansione Acunetix come passaggio di creazione in un lavoro Jenkins

Per aggiungere una scansione Acunetix come fase di creazione in un lavoro Jenkins, accedere alla configurazione di un lavoro esistente o creare un nuovo lavoro.NelpassaggioBuild, selezionaAcunetixdalmenu adiscesaAggiungi passaggio build.

Vedrai le seguenti opzioni:

  • Tipo di scansione: scegliere un tipo di scansione per la scansione.I tipi di scansione vengono utilizzati per ridurre l'ambito dei test eseguiti dallo scanner durante la scansione.
  • Target di scansione: scegliere un target di scansione che si desidera scansionare.I target di scansione sono ottenuti da Acunetix ad eccezione dei target che richiedono un intervento manuale.
  • Creazionenon riuscitase il livello di minaccia è: scegliere a quale livello della minaccia di scansione non riesce la creazione di Jenkins (Alta,MediaoBassa).
  • Interrompi scansione quando la creazione non riesce: selezionare questa casella di controllo se si desidera interrompere la scansione quando viene soddisfatta la condizione dierroreinCreazionenon riuscitaseviene raggiunto illivello di minaccia.
  • Genera rapporto: selezionare un rapporto da generare al completamento della scansione.Verrà fornito un collegamento per il download nell'output della console dei lavori.È inoltre possibile accedere in seguito a questo rapporto in Acunetix.

Articoli su Acunetix e Jenkins

Trovare le vulnerabilità dei siti web prima degli HackerL'importanza della convalida delle correzioni: lezioni da GoogleSDLC agile e sicuro - Best practiceIn che misura le aziende gestiscono la sicurezza delle applicazioni Web?Cross-Origin Resource Sharing (CORS) e intestazione Access-Control-Allow-OriginCosa sono i reindirizzamenti aperti?DevSecOps: come arrivarci da DevOpsIl bigino su SQL Injection per sviluppatoriSfruttare SSTI in ThymeleafSicurezza nginx: come proteggere la configurazione del serverRafforzamento del sistema Web in 5 semplici passaggiCos'è la sicurezza del sito Web - Come proteggere il tuo sito Web dall'hackingRapporto sulle vulnerabilità delle applicazioni Web Acunetix 2020Perché l'elenco delle directory è pericoloso?Cosa sono gli hack di Google?Cosa è l'attacco BEASTWeb Shells in Action - Rilevazione e prevenzione - parte 5Web Shells in Action - parte 4Mantenere le Web Shells sotto copertura - parte 3Introduzione alle web shell - parte 2: 101 Uso di PHPIntroduzione alle web shell - parte 1Debunking 5 miti sulla postura della sicurezza informaticaIniezioni di NoSQL e come evitarleConfigurazione passo passo di Acunetix con JenkinsCosa sono i riferimenti a oggetti diretti non sicuriAnche il più forte cade: un'iniezione SQL in Sophos XG FirewallAcunetix rilascia Business Logic RecorderCome recuperare un sito Web compromessoCome difendersi dagli hacker Black Hat durante la pandemia COVID-19Che cos'è l'inclusione remota dei file (RFI)?Apache Security - 10 consigli per un'installazione sicuraUn nuovo sguardo sugli attacchi correlati al proxy inversoVulnerabilità delle password comuni e come evitarleTutto quello che devi sapere sugli attacchi Man-in-the-MiddleChe cosa sono le iniezioni HTMLRed Teaming – 5 consigli su come farlo in modo sicuroTesta le tue competenze XSS utilizzando siti vulnerabiliPerché hacker malintenzionati hanno messo gli occhi sugli ospedaliPratiche di codifica sicura – I tre principi chiaveLa maledizione delle vecchie librerie JavaMutation XSS nella ricerca GoogleIgnorare SOP utilizzando la cache del browserCome e perché evitare reindirizzamenti e inoltri non convalidati?Dirottamento di sessione e altri attacchi di sessioneCome abbiamo trovato un altro XSS in Google con AcunetixChe cos'è un buffer overflowChe cos'è l'overflow di IntegerChe cos'è HSTS e perché dovrei usarlo?Che cosa è OS Command InjectionVulnerabilità delle entità esterne XML in Internet ExplorerCoreTech assicura protezione dei siti Web con AcunetixCoreTech distributore Acunetix a fianco dei partner per la CyberSecurityCyberSecurity applicativa, nuova opportunità per voi!