4 Luglio 2024

Come visualizzare un sito con certificato HTTPS scaduto o non valido protetto con HSTS

Google Chrome e la feature nascosta “this is unsafe” per bypassare le restrizioni di siti con certificato HTTPS non valido protetti con HSTS.

Cos’è HSTS e quali garanzie offre ad un Browser Web moderno ?

HTTP Strict Transport Security (HSTS) è una politica di sicurezza web implementata da un sito web per proteggere le comunicazioni tra i browser e i server. Quando un sito web implementa HSTS, istruisce il browser a comunicare solo tramite connessioni HTTPS sicure per un periodo di tempo specificato. Ciò significa che, anche se un utente tenta di accedere al sito utilizzando un URL HTTP, il browser lo reindirizzerà automaticamente a una connessione HTTPS. Questa politica, oltre a garantire una connessione sicura, previene diverse tipologie di attacchi che potrebbero compromettere l’integrità e la riservatezza dei dati trasmessi.

Le principali garanzie che HSTS offre includono:

  • Protezione contro attacchi di downgrade: Impedisce che un attaccante possa forzare un browser a utilizzare una connessione HTTP non sicura, riducendo la possibilità di attacchi man-in-the-middle (MITM) che potrebbero intercettare e modificare i dati trasmessi tra il browser e il server.
  • Integrità delle comunicazioni: Assicura che tutte le comunicazioni tra il browser e il server siano crittografate e non possano essere intercettate o alterate, mantenendo così la confidenzialità e l’integrità dei dati.
  • Eliminazione di avvisi di sicurezza: Evita che il browser mostri avvisi di sicurezza relativi a contenuti misti (HTTP e HTTPS) sul sito, garantendo un’esperienza utente più sicura e senza interruzioni causate da avvisi di sicurezza.

Quando un browser visita un sito con un certificato HTTPS scaduto, non valido o non corrispondente, HSTS gioca un ruolo cruciale. Poiché HSTS impone l’uso esclusivo di HTTPS, il browser non permetterà di procedere con una connessione insicura. Invece di consentire agli utenti di aggiungere un’eccezione di sicurezza e accedere comunque al sito, HSTS forza il browser a bloccare completamente l’accesso, proteggendo così l’utente da potenziali rischi associati all’utilizzo di certificati non validi. Questo comportamento è fondamentale per mantenere un elevato livello di sicurezza e fiducia, assicurando che le comunicazioni rimangano sempre protette e riducendo la possibilità che utenti inconsapevoli possano esporre i loro dati a minacce esterne.

Applicazione della direttiva HSTS a livello di dominio secondo livello.

La politica HSTS può essere applicata a livello di dominio di secondo livello, che si riferisce al nome principale del dominio, come “nomedominio.it”, in contrasto con i sottodomini o terzi livelli come “shop.nomedominio.it” o “blog.nomedominio.it”. Quando HSTS viene configurato per un dominio di secondo livello, può includere la direttiva “includeSubDomains”, che estende automaticamente la politica di sicurezza a tutti i sottodomini. Questo significa che se HSTS è impostato con “includeSubDomains” per “nomedominio.it”, qualsiasi sottodominio come “shop.nomedominio.it” o “blog.nomedominio.it” erediterà le stesse regole di sicurezza, obbligando le connessioni HTTPS e proteggendo le comunicazioni contro attacchi di downgrade e MITM.

L’uso della direttiva “includeSubDomains” comporta che tutti i sottodomini siano obbligati a seguire le regole HSTS del dominio principale senza la possibilità di essere esclusi individualmente. Questa ereditarietà garantisce che tutte le parti del sito rimangano protette e che l’integrità delle comunicazioni sia mantenuta su tutte le sezioni del dominio, riducendo così il rischio di potenziali vulnerabilità. Ad esempio, se un’organizzazione decide di aggiungere nuovi servizi come un negozio online (“shop.nomedominio.it”) o un blog (“blog.nomedominio.it”), questi servizi dovranno anch’essi rispettare la direttiva HSTS con “includeSubDomains” già impostata per il dominio principale. Questo approccio unificato assicura una protezione coerente e robusta su tutto il dominio, facilitando la gestione della sicurezza e offrendo una protezione avanzata agli utenti.

Come Chrome impedisce di visualizzare un sito protetto con HSTS impedendo di proseguire aggiungendo un’eccezione

Google Chrome è uno dei browser più diffusi e ha un forte impegno nella sicurezza degli utenti. Quando un sito web è protetto da HSTS, Chrome esegue rigorosamente le direttive di sicurezza impostate dal sito. Se il certificato HTTPS è scaduto, non valido o non corrispondente, Chrome mostrerà una pagina di errore con il messaggio “La tua connessione non è privata” e il codice di errore “NET::ERR_CERT_INVALID”.

connection-notprivate

Dettagli della protezione offerta da Chrome:

 

  • Blocco degli avvisi: Chrome non permette di ignorare l’avviso di sicurezza e aggiungere un’eccezione per i siti con HSTS. Ciò garantisce che gli utenti non possano accidentalmente accedere a siti potenzialmente pericolosi. Questo meccanismo è cruciale per mantenere un livello di sicurezza elevato, poiché impedisce la possibilità di ignorare gli avvisi di sicurezza, che potrebbero esporre l’utente a minacce come il furto di dati o attacchi MITM.
  • Reindirizzamento forzato: Anche se un utente tenta di accedere al sito tramite HTTP, Chrome reindirizzerà automaticamente la richiesta a HTTPS. Questo comportamento non solo garantisce che tutte le comunicazioni rimangano sicure, ma elimina anche la possibilità di accessi accidentali tramite HTTP non sicuro, migliorando complessivamente la sicurezza delle sessioni utente.
  • Errore irreversibile: Una volta che il browser ha ricevuto l’intestazione HSTS da un sito, non ci sono opzioni per disabilitare o ignorare questo comportamento tramite l’interfaccia utente del browser. Questo aspetto della protezione è particolarmente importante perché rende il rispetto delle politiche di sicurezza HSTS obbligatorio e non bypassabile, anche da parte di utenti avanzati, assicurando che le misure di sicurezza rimangano in vigore fino alla scadenza del periodo specificato dall’HSTS.

La necessità di vedere un sito con certificato HTTPS scaduto o non corrispondente.

In contesti di sviluppo e manutenzione dei siti web, è molto frequente per gli addetti ai lavori dover accedere a versioni del sito con certificati HTTPS non validi. Questa necessità emerge in diverse situazioni che richiedono l’intervento di sviluppatori, web designer e tecnici IT per garantire il corretto funzionamento e l’integrità dei progetti web.

Ecco alcune situazioni comuni:

  • Sviluppo e Test: Durante lo sviluppo di nuove funzionalità, gli sviluppatori possono lavorare su ambienti di staging con certificati auto-firmati o scaduti. Questi ambienti sono essenziali per provare nuove implementazioni senza influenzare il sito in produzione.
  • Migrazione di siti web: Quando si migra un sito da un server a un altro, possono esserci periodi di transizione in cui i certificati non sono ancora stati aggiornati, causando la necessità di accedere ai siti con certificati temporaneamente non validi.
  • Onboarding: I nuovi sviluppatori o i membri del team di supporto tecnico potrebbero aver bisogno di accedere a versioni del sito con problemi di certificato per diagnosticare e risolvere eventuali anomalie, garantendo così che il sito funzioni correttamente una volta che i problemi sono stati risolti.

In tutte queste situazioni, la possibilità di ignorare temporaneamente gli avvisi di sicurezza è cruciale per garantire la continuità del lavoro senza interruzioni significative. Ignorare questi avvisi in un ambiente controllato permette agli sviluppatori e ai tecnici di svolgere il loro lavoro efficacemente, risolvendo problemi e apportando miglioramenti necessari senza compromettere la sicurezza del sito in produzione.

Come bypassare tale restrizione tramite la direttiva nascosta “this is unsafe” in Google Chrome

Contesto e avvertenze

Questa procedura ci è stata segnalata da Pierpaolo Pittari, dopo che abbiamo riscontrato difficoltà in fase di staging e onboarding nel visualizzare siti con certificato SSL scaduto che erano soggetti alla direttiva HSTS. Dopo un’estenuante ricerca, Pierpaolo ci ha comunicato questa funzionalità in mattinata. Sembrava più un’easter egg che una vera e propria feature per sviluppatori, ma si è rivelata essere la soluzione di cui tutti gli sviluppatori avranno bisogno prima o poi. Prima di descrivere come bypassare la restrizione HSTS in Chrome, è importante sottolineare che questa procedura deve essere utilizzata con estrema cautela. Ignorare gli avvisi di sicurezza può esporre il sistema a potenziali rischi di sicurezza. Questo metodo dovrebbe essere utilizzato solo in ambienti controllati e per scopi legittimi, come quelli menzionati in precedenza.

Procedura dettagliata

Google Chrome ha una funzionalità nascosta che permette di bypassare l’avviso “La tua connessione non è privata” per siti con certificati HTTPS non validi. Questa funzionalità è attivabile digitando una frase specifica sulla pagina di errore.

Ecco i passaggi dettagliati per utilizzare la direttiva “this is unsafe”:

  1. Accedere al sito con errore di certificato:
    • Apri Google Chrome e tenta di accedere al sito con il certificato HTTPS scaduto o non valido. Vedrai una pagina di errore con il messaggio “La tua connessione non è privata”.
  2. Visualizzare il codice sorgente della pagina di errore (opzionale):
    • Sebbene non sia necessario, puoi visualizzare il codice sorgente della pagina di errore per confermare la presenza della direttiva “this is unsafe”. Premi Ctrl + U (o Cmd + U su Mac) per aprire il codice sorgente.
  3. Attivare la direttiva nascosta:
    • Con la pagina di errore aperta, digita “this is unsafe” (senza virgolette) direttamente sulla tastiera. Nota che non ci sarà un campo di input visibile; semplicemente digita la frase come se stessi scrivendo normalmente.
  4. Bypass dell’errore:
    • Dopo aver digitato “this is unsafe”, Chrome bypasserà l’avviso di sicurezza e caricherà il sito web nonostante il certificato HTTPS non valido.

Questa procedura sfrutta una funzionalità nascosta di Chrome progettata principalmente per scopi di sviluppo e debugging. Tuttavia, come ribadito in precedenza, l’uso di questa funzionalità dovrebbe essere limitato a situazioni controllate per evitare potenziali rischi di sicurezza.

Per chi volesse vedere dettagliatamente il funzionamento abbiamo trovato questo video Youtube in rete che illustra molto bene la procedura sopra descritta.

Fonti di riferimento

La direttiva “this is unsafe” è stata discussa in vari contesti online, inclusi blog di settore e forum di discussione. Alcuni riferimenti utili includono:

Queste risorse forniscono ulteriori dettagli sulla direttiva nascosta e discutono le implicazioni di sicurezza del suo utilizzo.

Conclusione

L’implementazione di HSTS rappresenta una misura di sicurezza fondamentale per proteggere le comunicazioni web, assicurando che tutti i dati trasmessi tra il browser e il server siano crittografati e non possano essere intercettati o alterati. Questa politica di sicurezza è cruciale per prevenire attacchi di tipo man-in-the-middle (MITM) e altre minacce, obbligando l’uso di connessioni HTTPS e rendendo impossibile l’accesso tramite HTTP. HSTS offre così una protezione robusta e coerente per gli utenti, migliorando significativamente la sicurezza complessiva di un sito web.

Tuttavia, ci sono situazioni particolari in contesti di sviluppo, manutenzione e migrazione dei siti web in cui potrebbe essere necessario bypassare temporaneamente queste restrizioni per garantire la continuità del lavoro. Ad esempio, durante lo sviluppo di nuove funzionalità, la migrazione di siti web o l’onboarding di nuovi membri del team, gli sviluppatori e i tecnici potrebbero dover accedere a versioni del sito con certificati HTTPS scaduti o non validi. In questi casi, la possibilità di ignorare temporaneamente gli avvisi di sicurezza può essere cruciale per testare e risolvere problemi senza interruzioni significative.

Google Chrome offre una soluzione attraverso la direttiva nascosta “this is unsafe”, che permette di bypassare gli avvisi di sicurezza e accedere ai siti con certificati non validi. Questa funzionalità, pur essendo estremamente utile, deve essere utilizzata con estrema cautela. Ignorare gli avvisi di sicurezza espone il sistema a potenziali rischi, poiché consente l’accesso a siti che potrebbero essere vulnerabili o compromessi. Pertanto, questa procedura dovrebbe essere impiegata solo in ambienti controllati e per scopi legittimi, come quelli descritti, per evitare di compromettere la sicurezza del sistema.

Hai dei dubbi? Non sai da dove iniziare? Contattaci !

Abbiamo tutte le risposte alle tue domande per aiutarti nella giusta scelta.

Chatta con noi

Chatta direttamente con il nostro supporto prevendita.

0256569681

Contattaci telefonicamente negli orari d’ufficio 9:30 – 19:30

Contattaci online

Apri una richiesta direttamente nell’area dei contatti.

INFORMAZIONI

Managed Server S.r.l. è un player italiano di riferimento nel fornire soluzioni avanzate di sistemistica GNU/Linux orientate all’alta performance. Con un modello di sottoscrizione dai costi contenuti e prevedibili, ci assicuriamo che i nostri clienti abbiano accesso a tecnologie avanzate nel campo dell’hosting, server dedicati e servizi cloud. Oltre a questo, offriamo consulenza sistemistica su sistemi Linux e manutenzione specializzata in DBMS, IT Security, Cloud e molto altro. Ci distinguiamo per l’expertise in hosting di primari CMS Open Source come WordPress, WooCommerce, Drupal, Prestashop, Joomla, OpenCart e Magento, affiancato da un servizio di supporto e consulenza di alto livello adatto per la Pubblica Amministrazione, PMI, ed aziende di qualsiasi dimensione.

Red Hat, Inc. detiene i diritti su Red Hat®, RHEL®, RedHat Linux®, e CentOS®; AlmaLinux™ è un marchio di AlmaLinux OS Foundation; Rocky Linux® è un marchio registrato di Rocky Linux Foundation; SUSE® è un marchio registrato di SUSE LLC; Canonical Ltd. detiene i diritti su Ubuntu®; Software in the Public Interest, Inc. detiene i diritti su Debian®; Linus Torvalds detiene i diritti su Linux®; FreeBSD® è un marchio registrato di The FreeBSD Foundation; NetBSD® è un marchio registrato di The NetBSD Foundation; OpenBSD® è un marchio registrato di Theo de Raadt. Oracle Corporation detiene i diritti su Oracle®, MySQL®, e MyRocks®; Percona® è un marchio registrato di Percona LLC; MariaDB® è un marchio registrato di MariaDB Corporation Ab; REDIS® è un marchio registrato di Redis Labs Ltd. F5 Networks, Inc. detiene i diritti su NGINX® e NGINX Plus®; Varnish® è un marchio registrato di Varnish Software AB. Adobe Inc. detiene i diritti su Magento®; PrestaShop® è un marchio registrato di PrestaShop SA; OpenCart® è un marchio registrato di OpenCart Limited. Automattic Inc. detiene i diritti su WordPress®, WooCommerce®, e JetPack®; Open Source Matters, Inc. detiene i diritti su Joomla®; Dries Buytaert detiene i diritti su Drupal®. Amazon Web Services, Inc. detiene i diritti su AWS®; Google LLC detiene i diritti su Google Cloud™ e Chrome™; Microsoft Corporation detiene i diritti su Microsoft®, Azure®, e Internet Explorer®; Mozilla Foundation detiene i diritti su Firefox®. Apache® è un marchio registrato di The Apache Software Foundation; PHP® è un marchio registrato del PHP Group. CloudFlare® è un marchio registrato di Cloudflare, Inc.; NETSCOUT® è un marchio registrato di NETSCOUT Systems Inc.; ElasticSearch®, LogStash®, e Kibana® sono marchi registrati di Elastic N.V. Hetzner Online GmbH detiene i diritti su Hetzner®; OVHcloud è un marchio registrato di OVH Groupe SAS; cPanel®, L.L.C. detiene i diritti su cPanel®; Plesk® è un marchio registrato di Plesk International GmbH; Facebook, Inc. detiene i diritti su Facebook®. Questo sito non è affiliato, sponsorizzato o altrimenti associato a nessuna delle entità sopra menzionate e non rappresenta nessuna di queste entità in alcun modo. Tutti i diritti sui marchi e sui nomi di prodotto menzionati sono di proprietà dei rispettivi detentori di copyright. Ogni altro marchio citato appartiene ai propri registranti. MANAGED SERVER® è un marchio registrato a livello europeo da MANAGED SERVER SRL, Via Enzo Ferrari, 9, 62012 Civitanova Marche (MC), Italia.

SOLO UN ATTIMO !

Vorresti vedere come gira il tuo WooCommerce sui nostri sistemi senza dover migrare nulla ? 

Inserisci l'indirizzo del tuo sito WooCommerce e otterrai una dimostrazione navigabile, senza dover fare assolutamente nulla e completamente gratis.

No grazie, i miei clienti preferiscono il sito lento.
Torna in alto