Sommario:

Rafforzare i servizi SSL sul tuo server Web (Apache/Linux): 3 passaggi
Rafforzare i servizi SSL sul tuo server Web (Apache/Linux): 3 passaggi

Video: Rafforzare i servizi SSL sul tuo server Web (Apache/Linux): 3 passaggi

Video: Rafforzare i servizi SSL sul tuo server Web (Apache/Linux): 3 passaggi
Video: Webinar - L'esperto di sicurezza full stack, tutti ne parlano ma nessuno ne ha mai visto uno 2024, Dicembre
Anonim
Potenziamento dei servizi SSL sul tuo server Web (Apache/Linux)
Potenziamento dei servizi SSL sul tuo server Web (Apache/Linux)

Questo è un tutorial molto breve che riguarda un aspetto della sicurezza informatica: la forza del servizio SSL sul tuo server web. Lo sfondo è che i servizi ssl sul tuo sito web vengono utilizzati per garantire che nessuno possa hackerare i dati che vengono trasmessi da e verso il tuo sito web. Ci sono stati attacchi ben pubblicizzati a servizi SSL vulnerabili come il bug Heartbleed in OpenSSL e il bug Poodle che sfruttava le vulnerabilità SSL 3.0. (Questa area è un obiettivo in movimento, quindi è necessario creare test SSL nel ciclo ISO 27001 plan-do-check-act (PDCA).)

Quando ssl viene installato sul tuo sito Web utilizzando un certificato di un provider riconosciuto, vedrai che è possibile accedere al tuo sito Web da https://yourdomain.com. Ciò significa che i dati vengono trasmessi avanti e indietro in formato crittografato. Al contrario, https://yourdomain.com o una crittografia debole espongono i dati trasmessi in chiaro, il che significa che anche un hacker bambino può accedere ai dati della tua password ecc. utilizzando strumenti prontamente disponibili come Wireshark.

Per il resto di questo tutorial, presumo che utilizzerai Apache come server Web su Linux e che tu abbia accesso al tuo server Web tramite un emulatore di terminale come putty. Per semplicità, assumerò anche che il tuo ISP abbia fornito il tuo certificato SSL e che tu abbia la capacità di riconfigurare alcuni aspetti di esso.

Passaggio 1: testare la forza del tuo servizio SSL

Testare la potenza del tuo servizio SSL
Testare la potenza del tuo servizio SSL

Vai semplicemente su https://www.ssllabs.com/ssltest/ e inserisci il tuo nome di dominio accanto alla casella Nome host e seleziona la casella di controllo "Non mostrare i risultati sulle schede" e fai clic sul pulsante di invio. (Tieni presente che non dovresti testare alcun dominio senza previa autorizzazione e non dovresti mai mostrare risultati sulle schede.)

Dopo che i test sono stati eseguiti, ti verrà assegnato un punteggio da F a A+. Ti verrà fornito un risultato dettagliato del test che, si spera, ti renderà ovvio il motivo per cui ti è stato assegnato il punteggio assegnato.

I soliti motivi di errore sono perché si utilizzano componenti obsoleti come cifrari o protocolli. Mi concentrerò presto sui cifrari, ma prima una breve parola sui protocolli crittografici.

I protocolli crittografici garantiscono la sicurezza delle comunicazioni su una rete di computer. … La connessione è privata (o sicura) perché la crittografia simmetrica viene utilizzata per crittografare i dati trasmessi. I due protocolli principali sono TLS e SSL. Quest'ultimo è vietato dall'uso e, a sua volta, TLS si sta evolvendo e quindi mentre scrivo questo, l'ultima versione è 1.3, anche se in formato bozza. In termini pratici, a gennaio 2018, dovresti avere solo TLS v 1.2. abilitato. Probabilmente ci sarà un passaggio a TLV v 1.3. durante il 2018. Il test Qualys elencherà quali protocolli crittografici hai applicato e attualmente, se stai utilizzando TLS v 1.2., riceverai un punteggio basso.

Un'ultima cosa da dire sui protocolli crittografici, quando acquisti un pacchetto web e un certificato SSL da un ISP mainstream come GoDaddy, sarà TLS v 1.2. che è buono, ma più avanti, potresti trovare difficile eseguire l'aggiornamento per dire TLS v 1.3. Personalmente, installo i miei certificati SSL e quindi ho il controllo del mio destino, per così dire.

Passaggio 2: riconfigurare Apache per apportare modifiche SSL

Riconfigurare Apache per apportare modifiche SSL
Riconfigurare Apache per apportare modifiche SSL

Una delle aree importanti che viene testata nel test Qualys SSL e il focus di questa sezione sono le suite di crittografia che determinano la forza di crittografia dei dati trasmessi. Ecco un esempio di output di un test Qualys SSL su uno dei miei domini.

Cipher Suite # TLS 1.2 (suite nel server preferenziale ordine) TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030) ECDH secp256r1 (eq. 3072 bit RSA) FS256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (0xc02f) ECDH secp256r1 (eq. 3072 bit RSA) FS128TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028) ECDH secp256r1 (eq. 3072 bit RSA) FS256TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 (0xc027) ECDH secp256r1 (eq. 3072 bit RSA) FS128

Potresti dedicare molto tempo alla riconfigurazione della configurazione di Apache per rimuovere le linee rosse (non riuscite) dal rapporto di prova di Qualys, ma raccomando il seguente approccio per ottenere le migliori impostazioni di Cipher Suite.

1) Visitare il sito Web di Apache e ottenere i loro consigli per l'utilizzo di una suite di crittografia. Al momento della scrittura, ho seguito questo link -

2) Aggiungi l'impostazione consigliata al file di configurazione di Apache e riavvia Apache. Questa era la loro impostazione consigliata che ho usato.

SSLCipherSuite ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE -AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256

Note - Una delle sfide è trovare il file di cui hai bisogno per cambiare la tua direttiva SSLCipherSuite. Per farlo, accedi a Putty e accedi alla directory etc (sudo cd /etc) Cerca una directory apache come apache2 o http. Quindi, fai una ricerca nella directory di apache come segue: grep -r "SSLCipherSuite" /etc/apache2 - Questo ti darà un output simile a questo:

/etc/apache2/mods-available/ssl.conf:#SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5:!RC4:!DES/etc/apache2/mods-available/ssl.conf:#SSLCipherSuite HIGH:!aNULL: !MD5:!RC4:!DES /etc/apache2/mods-available/ssl.conf:#SSLCipherSuite ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS

La cosa importante da notare è il file /etc/apache2/mods-available/ssl.conf o quello che è tuo. Apri il file utilizzando un editor come nano e vai alla sezione # SSL Cipher Suite:. Quindi sostituire la voce esistente nella direttiva SSLCipherSuite con quella sopra dal sito Web di Apache. Ricorda di commentare le vecchie direttive SSLCipherSuite e riavviare Apache - nel mio caso, l'ho fatto digitando sudo /etc/init.d/apache2 restart

Tieni presente che a volte potresti dover rimuovere codici specifici che ti danno un punteggio di test Qualys SSL basso (ad esempio perché sono state scoperte nuove vulnerabilità) anche se hai utilizzato le impostazioni Apache consigliate. Un esempio è se la seguente riga appare in rosso (fallire) sul tuo report Qualys TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030) Il primo passo è trovare quale codice devi cambiare nella tua direttiva Apache SSLCipherSuite. Per trovare il codice, vai su https://www.openssl.org/docs/man1.0.2/apps/ciphers… - questo mostra il codice come segue: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 ECDHE-RSA-AES256-GCM-SHA384

Prendi ECDHE-RSA-AES256-GCM-SHA384 e rimuovilo dalla voce che hai aggiunto come direttiva Apache Apache SSLCipherSuite e quindi aggiungilo alla fine precedendolo con:!

Di nuovo, riavvia Apache e riprova

Passaggio 3: conclusione

So che hai imparato qualcosa sui test SSL. C'è molto altro da imparare su questo, ma spero di averti indicato nella giusta direzione. Nei miei prossimi tutorial tratterò altre aree della sicurezza informatica, quindi restate sintonizzati.

Consigliato: