Come guarire dalla psicosi del TLS

No, non sto per aprire una sezione del blog dedicata alla salute. Semplicemente mi voglio occupare di sicurezza sul web, toccando un argomento molto dibattuto ultimamente, ovvero la questione dell’HTTPS.

Ecco quindi una guida pratica per capire di cosa si tratta e di cosa è necessario fare per mettere il proprio sito in sicurezza.

Di cosa si parla

Essendo HTTP (HyperText Transfer Protocol) il protocollo che da sempre regola la trasmissione in rete delle pagine web (i famosi ipertesti), HTTPS ne è la versione sicura, basata sul protocollo crittografico TLS (Transport Layer Security).

La sicurezza del TLS è data dalla crittografia, che in poche parole consiste nel trasmettere un messaggio in modo offuscato e non liberamente leggibile se non dal mettente e dal destinatario. Sì, perché Internet non è altro che una rete di computer, e ogni messaggio inviato transita per una serie di nodi prima di raggiungere il legittimo destinatario. Un messaggio trasmesso in chiaro può quindi essere intercettato da chicchessia, se questi si trova in ascolto al punto giusto e nel momento giusto. Questa possibilità, seppur remota nella maggioranza dei casi, non è comunque solamente teorica ma rappresenta un rischio reale.

Usando un protocollo sicuro, come appunto l’HTTPS, la comunicazione sarà quindi protetta dall’inizio alla fine. Chiunque dovesse intercettare il messaggio non sarebbe in grado di interpretarlo, in quanto non dotato della chiave di lettura per decifrare la crittografia.

Non si tratta di una semplice questione di privacy, ma di vera e propria sicurezza quando a transitare siano le password di nostri account (penso ad esempio a quelli dell’home banking) o direttamente i dati della carte di credito quando si fa un pagamento per un acquisto online.

Perché l’argomento è diventato di attualità?

Quelli di Google sono da tempo impegnati in una battaglia per rendere il web più sicuro. E si sa quanto i proprietari di siti siano attenti alle mosse del gigante di Mountain View.

Un primo capitolo lo avevamo avuto nel 2014, quando Google annunciò che l’HTTPS sarebbe diventato un fattore di ranking. In altre parole, i siti dotati di HTTPS avrebbero avuto un “spinta” in più in termini di visibilità nei risultati organici del motore di ricerca. Ci fu molta attenzione all’epoca, ma non ne seguì un grandissimo riscontro dato che da più parti fu rilevato che la spinta annunciata forse non c’era, o più probabilmente era decisamente debole. Tutto quindi rimase all’incirca come prima.

Si passa quindi al secondo capitolo, che si è aperto a settembre del 2016 con l’annuncio sempre di Google relativo al comportamento che il browser Chrome avrebbe adottato relativamente alle pagine HTTP, ovvero prive del protocollo di sicurezza. Si diceva infatti che da gennaio 2017 sarebbe infatti iniziato un processo di segnalazione delle pagine insicure, inizialmente più discreto, riservandosi di renderlo molto più incisivo nel corso del tempo.

Con il rilascio della versione 56 del browser, avvenuta a fine gennaio, alcune pagine HTTP vengono infatti segnalate come non sicure. Ok, ma di quali pagine si tratta? Al momento solo delle pagine che contengano form che possano inviare dati come password e carte di credito. La segnalazione allo stato attuale è quindi a livello di pagina e non a livello di sito.

Pagina non sicura segnalata da Google Chrome dal gennaio 2017

Pagina non sicura come segnalata da Google Chrome dal gennaio 2017, fonte Google Security Blog

Questa mossa, a differenza dell’altra, sta sicuramente destando più attenzione nell’ambito della comunità di chi gestisce siti web.

Come mettere in regola il proprio sito?

Muovere il proprio sito da HTTP a HTTPS non è un’operazione particolarmente complessa, ma necessita comunque attenzione e competenze, dato che una mossa sbagliata potrebbe compromettere la visibilità del sito.

In primis è necessario acquistare un certificato dal proprio fornitore di servizi. Un certificato è emesso da un ente certificatore e serve, in aggiunta alle protezioni tecnologiche già citate, a dimostrare a terzi l’affidabilità di chi sta dietro al sito HTTPS. Esistono vari livelli di certificati che si differenziano per la precisione della verifica fatta dall’azienda che emette il certificato. Nel caso più semplice basterà una verifica via email, mentre salendo di complessità potrebbe essere necessaria la produzione di documenti della propria azienda. È questo il caso ad esempio dei certificati EV, sigla che sta per Extended Validation, dove la procedura di verifica è evidentemente più complessa. Quello che cambia inoltre è anche la modalità con cui il sito HTTPS viene mostrato dal browser: nel caso dei certificati più semplici ci sarà solo la dicitura https:// con accanto magari un lucchetto verde, mentre in altri casi verrà mostrato anche il nome dell’azienda: si vedano a questo proposito i siti delle banche, che ovviamente sono dotati della massima protezione e certificazione.

Chrome certificato TLS Fineco

Come viene mostrato il certificato sul sito della banca Fineco.

Una volta acquistato, il certificato va installato sul server, in modo che il proprio sito sia raggiungibile anche usando https oltre che http. Non entrerò nei dettagli di questa operazione, che deve essere affidata al proprio tecnico di fiducia, se non direttamente a chi gestisce il server.

A questo punto va configurata la propria piattaforma per usare la versione https come principale. A seconda del proprio sistema di gestione dei contenuti del sito (CMS) questo può essere immediato o richiedere un po’ di lavoro. Per WordPress si tratta semplicemente di modificare i campi “Indirizzo WordPress (URL)” e “Indirizzo sito (URL)” all’interno delle impostazioni generali.

Per i siti che includono risorse esterne (immagini, file CSS o Javascript) sarà necessario convertire tutto alla versione HTTPS, pena la segnalazione da parte del browser che il sito contiene elementi non sicuri.

Come ultimo step è necessario impostare i redirect, pagina per pagina, dalle URL HTTP a quelle HTTPS. I redirect, come sa chi si occupa di SEO, devono tutti essere 301, ovvero permanenti. Il fatto di impostare redirect non dovrebbe esentare comunque da modificare i link interni, e magari quando possibile anche quelli esterni, per evitare redirezioni inutili.

Per chi ha bisogno di una guida tecnica per l’implementazione dell’HTTPS su un sito di cui si abbia anche l’amministrazione del server, segnalo l’ottimo articolo di Andrea Pernici sul SEO Blog di GiorgioTave.it. Consigliato solo per chi mastica già programmazione web e amministrazione di sistemi.

Chi si dovrebbe adeguare al più presto?

L’intento di Google è di convertire tutto il web all’HTTPS. Al momento, la modifica è consigliata solo a chi gestisce alcuni tipi particolari di siti.

Chi gestisce un semplice sito informativo, senza vendere prodotti né offrire aree private per gli utenti, ritengo che al momento possa dormire sonni tranquilli. L’avviso “non sicuro” potrebbe comparire giusto nella pagina di login all’area di amministrazione, che comunque risulta dedicata solo agli amministratori e non ai semplici utenti. È questo il caso ad esempio di chi ha un sito su piattaforma WordPress.

Diverso è il caso di chi ha un sito ecommerce, ovvero dove gli utenti possono acquistare beni o servizi. Molto spesso questi siti danno la possibilità agli utenti di registrarsi e poter accedere al proprio account. In tutte le pagine dove è presente il form di login comparirà l’avviso di sito non sicuro. Nella maggioranza dei casi questo avverrà nella procedura di checkout, se non proprio in tutte le pagine dato che è prassi comune inserire questo form nella testata o nella sidebar di tutte le pagine.

Tralascio il caso del pagamento stesso: non raramente si fa uso di gateway esterni (come PayPal o Banca Sella, solo per citare quelli più diffusi) che sono già dotati delle dovute misure di sicurezza. Chi ha un sistema di pagamento interno, o semplicemente raccoglie i dati delle carte di credito dei clienti per garanzia o incasso manuale, se non usa già tutte le accortezze del caso è semplicemente un folle! 🙂

In poche parole, consiglio di dotarsi subito di HTTPS e certificato a chi vende online.

Spero di aver risposto ai dubbi più comuni. Per tutti gli altri ci sono comunque i commenti. 😉

2 Comments

  1. Articolo scritto bene, comprensibile anche ai meno avvezzi.
    Credo che, visto che se ne continua a parlare, sia diventato (o possa diventarlo) anche un problema di percezione degli utenti.
    Concordo con te Nicola, prima gli eccomerce e siti di vendita, poi pian piano anche quelli informativi.

  2. Nicola

    11 febbraio 2017 at 1:43 pm

    Ti ringrazio! 🙂
    Ho tarato il linguaggio per essere comprensibile anche ai non tecnici, credo che possa essere utile fare un po’ di chiarezza anche ai non addetti ai lavori.

Lascia un commento

La tua email non verrà pubblicata

*