Ancora molti siti web non utilizzano il protocollo crittografato HTTPS

Vinci tutto supernealotto e giochi Sisal

Ancora molti siti web non utilizzano il protocollo crittografato HTTPS
Scegli sui Social
Pin Share

Milioni di siti trasmettono dati sensibili senza crittografia SSL/TLS. La colpa è degli sviluppatori PHP e dei plugin per i Content Management System. Controlli disattivati per evitare i messaggi di errore ai clienti.

C’è chi lavora per aumentare il livello di sicurezza di Internet e chi disfa tutto per semplice convenienza. Potrebbe essere questa la sintesi della vicenda legata alla gestione di alcune funzioni di validazione dei certificati digitali nei plugin e nelle librerie PHP che mette a rischio i dati sensibili dei visitatori.

Partiamo dallo scenario finale: su Internet ci sono, anche se una stima esatta è impossibile, milioni di siti che trasmettono informazioni senza utilizzare correttamente i protocolli di sicurezza SSL e TLS.

Come questo sia possibile e quali siano i motivi che hanno portato a questa situazione possiamo leggerlo in un rapporto scritto e pubblicato da Scott Arciszewski di Paragon Intiative.

Arciszewski spiega che tutto ruota intorno a 2 impostazioni cURL, presenti sui Web server, che regolano alcune delle modalità con cui vengono gestiti i certificati digitali.

Il primo è CURLOPT_SSL_VERIFYHOST, il cui scopo è controllare la corrispondenza dell’URL relativa al server che si contatta. Se si disabilita questa funzione (impostandola su “false”, mentre il valore predefinito è “2”) il server non eseguirà il controllo e si accontenterà di verificare che il server contattato abbia un certificato valido.

Immaginiamo che un sito di e-commerce, spiega Arciszewski, si colleghi per trasmettere i pagamenti a un server authorize.example.com e che un pirata riesca a dirottare la connessione verso authorize-example-com.obvious-phishing-site.cx.

Se CURLOPT_SSL_VERIFYHOST è attivo, quando esamina il certificato si accorge che è stato rilasciato per un altro indirizzo e la connessione viene bloccata. Se è disattivato, va avanti come se nulla fosse.

La seconda impostazione è CURLOPT_SSL_VERIFYPEER, che esegue un controllo di validità del certificato tramite l’infrastruttura dell’autorità di certificazione.

Se lo si disabilita, il sito accetterà come buoni anche i certificati creati in proprio. Risultato: chiunque potrebbe portare un attacco Man in the Middle con estrema facilità, intercettando i dati trasmessi.

Protocollo httpsEcco: a quanto pare ci sono centinaia di migliaia di progetti PHP (ma anche centinaia di plugin WordPress) i cui autori hanno disattivato le due funzioni.

Ma perché diavolo dovrebbero esserci degli sviluppatori PHP che disattivano queste funzioni consapevolmente? La risposta è semplice: la loro presenza è spesso una scocciatura.

Le due funzioni, infatti, richiedono di confrontare le richieste con un elenco di certificati validi. L’elenco può essere scaricato in vari modi, ma molti servizi di hosting non li scaricano o li memorizzano in posizioni non standard, rendendo più difficile impostare il funzionamento dei plugin.

In una situazione del genere, l’amministratore del sito (cioè il cliente dello sviluppatore) rischia di trovarsi di fronte una raffica di avvisi di sicurezza. Per evitare rogne, quindi, molti sviluppatori preferiscono disattivare CURLOPT_SSL_VERIFYPEER e CURLOPT_SSL_VERIFYHOST.

La situazione, però, secondo Arciszewski, è letteralmente esplosiva e se i pirati informatici cominciassero a sfruttare le vulnerabilità lascate aperte da queste impostazioni scellerate potrebbe trasformarsi in un disastro.

Il ricercatore ha anche realizzato uno strumento chiamato Certainty che permetterebbe agli sviluppatori di superare i problemi descritti sopra. Si tratta di una libreria PHP e i dettagli sul suo funzionamento si possono leggere qui.

Scegli sui Social
Pin Share

Ricerca in Scienza @ Magia

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
Inviami gli Articoli in Email:

Lascia il primo commento

Lascia un commento

L'indirizzo email non sarà pubblicato.


*


Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.