Certificati SSL fra vantaggi, svantaggi (reali) e pratica quotidiana

Non un semplice accessorio, bensì una componente decisiva per la sicurezza e l'affidabilità del sito. E con interessanti risvolti SEO.

Hosting SolutionsC'è chi vuole svelati i segreti dell'algoritmo di indicizzazione di Google e chi ancora è spaesato e stupito dall'aver appreso un solo elemento della formula segreta del rank. Stiamo parlando della decisione di BigG di includere l'implementazione dei certificati SSL fra i segnali di posizionamento nella SERP di Mountain View.

Svelato l'elemento SSL che può fare la differenza nel posizionamento, nel mondo Web è scoppiata una diatriba fra i sostenitori dell'implementazione SSL e chi ritiene inutile questa costrizione, applicata facendo leva sui desideri SEO della maggior parte dei siti presenti online. I defezionisti, infatti, non vedono il motivo per cui debbano essere protette le connessioni verso siti come blog e tanti altri che, di norma, non trattano dati personali e non scambiano informazioni sensibili con il computer degli utenti.

Secondo costoro non solo i certificati SSL non darebbero vantaggi reali e non proteggerebbero i siti da exploit di server, database e attacchi DDoS, ma la loro applicazione nel rank sarebbe addirittura una mossa di natura mediatica per recuperare sul disonore accumulato con lo scandalo Datagate.
D'altra parte, Google si giustifica citando la stranota esperienza utente a cui il motore di ricerca mira da anni, la salute del Web e la sicurezza di tutti gli internauti.

Se a tutto questo si aggiungono i problemi di sicurezza a carico dei certificati SSL venuti a galla a seguito della grave falla HeartBleed, si capisce come l'argomento SSL sia davvero un tema caldo.

Così, di fronte a tutto questo fermento, è giusto chiedersi chi abbia ragione e chi no, cercando di capire, con dati certi, quali sono i pro e i contro reali e, soprattutto, le difficoltà della pratica quotidiana che bisogna affrontare per raggiungere i benefici ipotetici.

Gli svantaggi nell'implementazione dei certificati SSL non reali
Una delle critiche che spesso vengono mosse all'uso dei certificati SSL è l'eccessivo consumo di risorse hardware nei server e questa monito, si sa, può spaventare i webmaster più accorti e, al contempo, quelli meno informati sul reale degrado di prestazione di cui un server può soffrire con l'applicazione del protocollo SSL.

Al di là del semplice teorema che un processo di crittazione richiede comunque maggiore potenza computazionale e maggior consumo di memoria, c'è la necessità di applicare questa massima nella realtà di tutti i giorni, dove si lavora con server molto performanti e avanzati, dotati di più core e con protocolli come l'OpenSSL che, nonostante tutto, ha superato molte inefficienze nel corso delle implementazioni.

Alcuni test pratici comparsi sul blog SAP dimostrano chiaramente che al di là dell'overhead iniziale, l'uso dei certificati SSL influisce in modo impercettibile sulle prestazioni di un sito e che il problema poteva essere così evidente circa una decina di anni fa, ma non ora con le moderne tecnologie di cui il Web dispone.

Un altro svantaggio di cui si parla spesso sono le latenze. Anche in questo caso, nella maggior parte delle applicazioni l'impatto dovrebbe essere trascurabile, anche se vi sono situazioni in cui l'HTTPS può effettivamente causare dei ritardi di non poco conto, per cui, sull'argomento latenze, è sempre bene eseguire dei test per verificarne eventuali variazioni pre e post implementazione SSL.

A tutto questo si aggiunge poi il problema della cache del browser che non funziona, un altro mito che va ridimensionato al solo caso in cui si continua a usare un browser datato come IE6 in ambiente legacy, ma per chi usa browser più moderni questa difficoltà non dovrebbe proprio sussistere.

Gli svantaggi dei certificati SSL reali, ma poco incisivi
Dopo questa prima categoria di svantaggi forse poco svantaggiosi (e scusate il gioco di parole!), c'è una seconda categoria di problemi relativi al caching proxy e alla modalità di navigazione mista.

Per quanto riguarda il primo aspetto, il problema sussiste se si usano sistemi come Varnish per memorizzare i contenuti di un CMS in una cache che ne velocizzi l'accesso e, comunque, solo nel caso in cui non esista un meccanismo a fronte di questa cache che gestisca la crittografia introdotta con il protocollo SSL.

Questo accade anche con il caching proxy pubblico di molti ISP. Tuttavia queste pratiche sono in calo negli ultimi anni, sostituite sempre più spesso da CDN che funzionano perfettamente con HTTPS.

L'aspetto della modalità di navigazione mista, invece, si rivela quando non si effettua la dovuta revisione dei componenti di terze parti su un sito e l'utente si trova a dover fronteggiare l'avviso del browser con cui si viene messi in guardia che non tutti gli elementi presenti in pagina sono protetti da un dovuto certificato SSL. Questo accadeva soprattutto con l'integrazione di strumenti per la distribuzione pubblicitaria o di social networking, che da tempo ormai si sono adeguati alla distribuzione dei contenuti criptati tanto da rendere questa problematica molto meno importante che in passato.

Da quanto appreso, si capisce che la maggior parte degli svantaggi fin ora citati non influenza siti di piccola e media entità, mentre siti di più importante portata devono solo considerare più attentamente il passaggio al protocollo SSL, anche se gli aspetti negativi sono di gran lunga superati dai vantaggi che se ne ottiene.

I vantaggi reali dei certificati SSL
Se, dal punto di vista teorico, l'implementazione dei certificati SSL non comporta svantaggi davvero marcati, sembra invece portare con sé vantaggi di non poco conto.

In primis, si evitano più facilmente gli attacchi MiTM (Man in The Middle), per cui la cifratura delle informazioni attraverso l'uso di un sistema ibrido di certificati pubblici e privati permette di crittografare i dati in transito, rendendoli illeggibili a chiunque tenti di interporsi nella comunicazione fra client e server. E anche se alcune notizie su determinate attività dell'NSA e su bug decennali fanno pensare il contrario, c'è da dire che a meno di obiettivi specifici, nella maggior parte delle applicazioni ciò è veritiero.

Inoltre, i certificati SSL comprovano l'identità del sito e del server a cui gli utenti si collegano, permettendo loro di distinguere il portale originale da un sito imitatore realizzato per scopo di phishing.

Tutto questo infonde fiducia negli utenti e migliora, di conseguenza, la reputazione brand del business legato al sito protetto con SSL, ottenendo così altri due vantaggi interessanti per il ritorno di immagine e questo accade soprattutto quando si decide di implementare un certificato SSL di tipo EV (Extended Validation) che con la colorazione verde della barra degli indirizzi aiutano gli utenti a fidarsi del sito a cui si stanno rivolgendo.

Inoltre, un certificato SSL è necessario per rispondere ai requisiti di certificazione PCI Payment Card Industry, per la raccolta delle informazioni finanziarie legate ai pagamenti elettronici in sicurezza.

Infine, non da ultimo, con la decisione di Google di introdurre l'implementazione SSL come segnale rank, si ottiene anche un miglioramento della visibilità nei risultati delle ricerche, come dimostrano alcuni studi recentissimi condotti dagli esperti SEO di Searchmetrics.

La pratica quotidiana dell'implementazione dei certificati SSL
Definiti gli svantaggi e i vantaggi, si perviene poi alla realtà dei fatti, ossia alla pratica quotidiana con cui si implementa un protocollo SSL su un sito che ne risulta privo.

Per prima cosa, è necessario che tutti i link interni puntino alla versione HTTPS delle risorse e questo vale non solo per le pagine, ma anche per le immagini, per i CSS, per i JavaScript e via discorrendo e pur avendo l'opportunità di usare le clausole di server redirect è sempre meglio non abusarne anche per ragioni SEO.

Se si utilizza una CDN, bisogna assicurarsi che il provider supporti il protocollo HTTPS, ma questo ormai è vero per quasi tutte le CDN più note, anche se non tutte offrono il supporto a titolo gratuito.

Bisogna poi investire tempo e risorse sulla configurazione del Webserver e chi si trova con NGINX/SPDY dovrebbe essere più avvantaggiato in questo senso.

Infine, a meno che non si ricorra al supporto SNI, non bisogna dimenticare di essere dotati di un indirizzo IP dedicato, anche se molte proposte commerciali di certificati SSL li offrono gratuitamente a corredo del certificato stesso, proprio per garantirne il corretto funzionamento.
Notizie collegate
7 Commenti alla Notizia Certificati SSL fra vantaggi, svantaggi (reali) e pratica quotidiana
Ordina
  • Avere un certificato EV potrebbe essere utile per un e-commerce che deve dare fiducia al cliente. Vedersi il nome dell'azienda nel "browser" colorato di verde senza messaggi di alert secondo me è un vantaggio.

    Che ne dite?
    Forse solo agli utenti meno espterti potrebbe infondere sicurezza?
  • Per i sistemi che supportano SNI (es. CentOS) si possono utilizzare certificati SSL single domain standard?
    Con gli IP v4 che scarseggiano, sarebbe sembra un buon compromesso.
    Teo_
    2654
  • Pur essendo un articolo pubblicitario, almeno non contiene solo supercazzole come l'altro sull'smtp dedicato...

    Riguardo i certificati SSL, ho trovato solo
    https://www.startssl.com
    che rilascia certificati totalmente gratuiti, il che non è male per chi gestisce piccoli siti...
    non+autenticato
  • - Scritto da: Jack
    > Pur essendo un articolo pubblicitario, almeno non
    > contiene solo supercazzole come l'altro sull'smtp
    > dedicato...
    >
    > Riguardo i certificati SSL, ho trovato solo
    > https://www.startssl.com
    > che rilascia certificati totalmente gratuiti, il
    > che non è male per chi gestisce piccoli
    > siti...
    c'e' da dire che quando, nel 2014, per via di heartbleed, molti cert andavano considerati compromessi, si e' visto che
    - Unfortunately StartCom charges 25 USD for every revocation.
    - other CA permit rekeying. Startcom doesn’t
    (non so ora)
    non+autenticato
  • - Scritto da: bubba
    > - Unfortunately StartCom charges 25 USD for every
    > revocation.
    > - other CA permit rekeying. Startcom doesn’t

    Ovviamente da qualche parte dovranno pur guadagnare pure loro, il mio era solo un consiglio per entrare (gratis) nel mondo SSL, quando tutti gli altri prevedono fin da subito un pagamento.

    (il rekeying penso sia fattibile ma solo agli account a pagamento)
    non+autenticato
  • Offrire gratuitamente un certificato SSL è intrisecamente contrario al meccanismo stesso della certificazione: la CA (Certification Authority) è appunto un'autorità riconosciuta legalmente e si prende la responsabilità di decidere se un sito è affidabile o meno, e il grado di affidabilità dello stesso (si arriva fino a contattare il responsabile della sicurezza della azienda e a fare controlli alle camere di commercio o equivalenti).
    Se si offre un certificato gratuitamente, quale volete che siano i controlli atti a garantire che tale sito sia affidabile?
    non+autenticato
  • - Scritto da: Bruno
    > Offrire gratuitamente un certificato SSL è
    > intrisecamente contrario al meccanismo stesso
    > della certificazione: la CA (Certification
    > Authority) è appunto un'autorità riconosciuta
    > legalmente e si prende la responsabilità di
    > decidere se un sito è affidabile o meno, e il
    > grado di affidabilità dello stesso (si arriva
    > fino a contattare il responsabile della sicurezza
    > della azienda e a fare controlli alle camere di
    > commercio o
    > equivalenti).
    > Se si offre un certificato gratuitamente, quale
    > volete che siano i controlli atti a garantire che
    > tale sito sia
    > affidabile?

    Perché come dimostrato dal caso DigiNotar le CA (Certification Authority) non contano niente, NULLA.

    Qualunque CA puo' generare un certificato SSL per qualsiasi dominio/IP o SNI che sia. Quindi, una "CA cinese" a caso genera senza problema un certificato diverso ma pur sempre valido per il tuo sito web... e qualcuno ti fa con quello un MITM (man-in-the-middle attack) senza che né te né i tuoi utenti se ne possano accorgere. Col risultato che è come se avessi avuto una connessione plaintext. Quindi, le CA non servono a niente e l'intera struttura basata sui certificati SSL rilasciati da CA è "broken" e non serve a nulla per verificare l'identità di un sito. Una CA governativa creata dal nulla l'altro ieri non si fa problemi a fare un certificato EV, se gli serve, per qualsiasi scopo sia. Se poi viene craccata una CA (DigiNotar) senza complotti puo' essere qualsiasi script kiddie a generare un qualsiasi certificato. Un tunnel SSL da un po' piu' di sicurezza... ma se lo scambi come "sicuro", allora sbagli. Almeno che non hai già da prima a conoscenza le fingerprint del certificato e le controlli PRIMA che ogni richiesta venga inviata dal browser. Praticamente quando premi il bottone "submit" o in genere PRIMA di inviare una richiesta (che sia HEAD/GET/POST..) a un sito dovresti avere un messaggio che ti chiede se la connessione (TCP+SSL) stabilita col sito di destinazione si è stabilita con un certificato corretto. Se rispondi sì (perché in qualche modo lo devi sapere da prima! quindi indifferentemente dall'esistenza o no delle CA, o di un certificato self-signed), allora confermi di inviare la richiesta HTTP nel tunnel SSL+TCP.

    I certificati SSL gratuiti sono tanto sicuri quanto quelli a pagamento. Cioè non sono sicuri per niente, a verificare l'identità di chicchessia. Pero' di sicuro servono a cifrare il traffico (anche se magari è cifrato solo tra te e chi ti stà facendo il MITM)
    Oltre a StartCom, c'è https://letsencrypt.org/ (gestita da EFF, Mozilla e CISCO Systems) che rilascia certificati gratuiti.

    Secondo me, è proprio senza senso pagare per un certificato SSL.
    non+autenticato