Tutte le ricerche

Come i log di Certificate Transparency espongono i sottodomini interni

Il 65.5% di un campione di 702 domini principali espone almeno un hostname dall'aspetto interno in Certificate Transparency: il 38.9% registra un sottodominio dev., il 12.8% registra un sottodominio vpn.

Certificate Transparency espone gli hostname interni? Sì, regolarmente. Abbiamo analizzato i log pubblici di CT per 702 domini principali tramite crt.sh, la stessa ricerca gratuita accessibile a chiunque, e abbiamo scoperto che il 65.5% ha registrato almeno un hostname dall'aspetto interno: a dev., staging., vpn., admin., jira., o vault.-style, quasi certamente destinato al personale e non a internet pubblico. Nessun host è stato scansionato, risolto o contattato per ottenere questo dato. CT è un log pubblico append-only di ogni certificato mai emesso da una CA pubblica, e a un nome basta ricevere un solo certificato pubblicamente attendibile per diventare un record permanente e ricercabile. Questa è la prima mossa di un attaccante prima di avviare qualsiasi scansione, e la maggior parte delle organizzazioni sta regalando la propria convenzione di denominazione interna a costo zero.

La versione diretta Se un nome ha mai ricevuto un certificato da una CA pubblica, è presente in Certificate Transparency per sempre, a prescindere dal fatto che il server sottostante sia raggiungibile oggi o meno. Consultare quel log non è hacking. È una ricerca su registri pubblici, ed è solitamente la prima cosa che fa un attaccante competente.

Perché un log pubblico espone nomi dall'aspetto privato

Certificate Transparency esiste per un ottimo motivo: impedisce a una CA di emettere silenziosamente un certificato non autorizzato per un dominio, poiché ogni certificato emesso diventa visibile al proprietario del dominio e al pubblico. Chrome e altri browser richiedono la registrazione in CT alle CA pubblicamente attendibili dal 2018 in base all'RFC 6962. Questo è un autentico traguardo di sicurezza per l'ecosistema. L'effetto collaterale è che CT registra anche l'hostname stesso, e l'hostname è spesso la parte più rivelatrice del record.

I sistemi interni ottengono certificati pubblici per un motivo ordinario e banale: nessuno vuole visualizzare un avviso del browser quando i dipendenti aprono il portale VPN o l'istanza interna di Jira, anche se il DNS per quel nome viene risolto solo sulla rete aziendale o tramite un tunnel VPN. Di conseguenza, il nome ottiene un vero certificato da Let's Encrypt, DigiCert o un'altra CA pubblica, esattamente come farebbe un sito pubblico. Il certificato svolge il proprio compito senza dare nell'occhio. L'effetto collaterale è che vpn.example.com o staging-admin.example.com è ora permanentemente consultabile da chiunque interroghi CT per example.com, tramite uno strumento gratuito come crt.sh, con zero interazioni con l'infrastruttura di example.com.

I dati: cosa registrano 702 domini principali

Abbiamo interrogato crt.sh per un campione della classifica dei siti principali di Tranco (lista 94Y82), un dominio alla volta con caching e backoff per non sovraccaricare il servizio, e abbiamo classificato la prima label DNS di ogni nome registrato in nove categorie convenzionali di denominazione interna: remote access, auth/identity, non-production, devops/CI, internal collaboration, observability, admin/management, secrets/infrastructure e nomi esplicitamente interni. 702 dei 1.000 domini richiesti sono stati completati; 660 presentavano una cronologia in CT. I risultati per singolo dominio sono stati mantenuti solo in memoria durante l'esecuzione e non sono mai stati salvati su disco, quindi nulla in questa sede cita organizzazioni specifiche. Si tratta di percentuali sull'intero campione, non di un elenco.

Share of 702 sampled domains logging each category of internal-looking hostname Horizontal bar chart. Non-production 58.8 percent. Explicitly internal 29.3 percent. Admin and management 28.2 percent. Auth and identity 27.8 percent. DevOps and CI 25.2 percent. Remote access 21.8 percent. Secrets and infrastructure 20.4 percent. Internal collaboration 18.1 percent. Observability 16.5 percent. Sample of 702 domains, July 2026. 0% 25% 50% 75% 100% Internal-looking hostname categories, 702 domains Share of sample logging at least one name in each category. Passive CT read, July 2026. Non-production 58.8% Explicitly internal 29.3% Admin/management 28.2% Auth/identity 27.8% DevOps/CI 25.2% Remote access 21.8% Secrets/infra 20.4% Internal collab 18.1% Observability 16.5%
Fonte: analisi passiva di crt.sh per 702 domini dalla lista Tranco dei principali siti (94Y82), 24 luglio 2026. Un dominio viene conteggiato una sola volta per categoria, indipendentemente da quanti nomi corrispondenti abbia registrato. Le categorie non si escludono a vicenda, quindi la somma delle righe non è 100%.

I nomi di non produzione dominano: il 58.8% dei domini ha registrato un nome del tipo dev., staging., test. o simile. Questo è il risultato meno sorprendente e di per sé il meno pericoloso: la denominazione di un ambiente di staging non costituisce una vulnerabilità. Ciò che è più interessante è quanto a fondo nella lista si spingano le categorie pericolose. Il 20.4% ha registrato un nome legato a segreti o infrastruttura come vault., consul. o k8s., e il 21.8% ha registrato un nome per l'accesso remoto come vpn. o citrix. Queste sono le categorie in cui il nome stesso rivela all'attaccante esattamente per quale prodotto cercare una CVE nota.

I singoli prefissi raccontano la stessa storia a un livello di dettaglio maggiore. Ecco le dodici label più comuni individuate, per quota rispetto al campione di 702 domini:

Prefissi dall'aspetto interno più comuni registrati in CT, campione di 702 domini, luglio 2026
PrefissoDominiQuota del campione
dev27338.9%
test26037.0%
staging19227.4%
admin14520.7%
stage13118.7%
auth12517.8%
qa11416.2%
demo9413.4%
internal9012.8%
vpn9012.8%
sandbox8412.0%
stg7811.1%

Il prefisso vpn. da solo si attesta al 12.8% dell'intero campione, il che significa che circa un dominio su otto tra i più trafficati di internet ha comunicato al mondo, tramite un log pubblico che non ha mai dovuto toccare, di utilizzare uno specifico prodotto di accesso remoto a un determinato nome. Aggiungendo a questo il fingerprinting della versione possibile una volta risolto l'hostname, un attaccante è passato da zero informazioni a un elenco di target prioritari senza inviare un singolo pacchetto al bersaglio.

Raramente ci si ferma a un solo nome

La dispersione di informazioni non è distribuita uniformemente con un solo nome per dominio. Dei 460 domini che hanno esposto dati, 113 hanno esposto un nome da una sola categoria, ma i restanti hanno mostrato esposizioni su più categorie contemporaneamente: 65 domini hanno toccato tre categorie, 42 sei categorie e 22 domini hanno registrato un nome in tutte e nove le categorie monitorate. Quando un'organizzazione prende l'abitudine di assegnare certificati pubblici reali ai tool interni, l'abitudine tende a essere sistematica per ogni strumento interno utilizzato, non per uno solo. Per un attaccante, un dominio che espone ampiamente è più prezioso di uno che espone un singolo nome, perché mappa l'infrastruttura di dev, quella di auth e quella di admin con una sola query.

Come verificare il proprio dominio

Questa verifica richiede meno di un minuto e non necessita di strumenti oltre a un browser o a curl, perché si consulta lo stesso registro pubblico che abbiamo esaminato noi.

Cosa questo non dimostra

Limiti oggettivi, perché un dato senza i suoi caveat è solo marketing.

Domande frequenti

Gli attaccanti possono usare i log di Certificate Transparency per trovare sottodomini?

Sì. Ogni certificato emesso da una CA pubblica viene registrato in base a RFC 6962, e chiunque può interrogare liberamente questi log tramite crt.sh. Nel nostro campione di 702 domini, il 65.5% delle organizzazioni aveva registrato in questo modo almeno un hostname dall'aspetto interno, con zero interazioni con la propria infrastruttura.

I log di CT possono rivelare hostname interni che non avrebbero mai dovuto essere pubblici?

Sì. A un nome serve un solo certificato pubblicamente attendibile, spesso emesso per evitare che il personale visualizzi avvisi del browser, per diventare un record pubblico permanente. Il server sottostante non deve necessariamente essere raggiungibile da internet affinché il nome venga esposto.

Quali informazioni vengono esposte nel campo Subject Alternative Name di un certificato?

Il campo SAN elenca ogni hostname coperto da un certificato. Un singolo certificato multidominio può esporre decine di nomi contemporaneamente, tutti ricercabili in CT nel momento stesso in cui il certificato viene emesso.

Come si individuano i sottodomini usando crt.sh?

Interroga https://crt.sh/?q=%25.yourdomain.com&output=json. Restituisce ogni certificato registrato per il tuo dominio e i suoi sottodomini, inclusi quelli emessi per server che potrebbero non esistere più. Si tratta di una consultazione passiva e in sola lettura di un log pubblico, lo stesso metodo impiegato in questa ricerca.

Un certificato wildcard impedisce ai sottodomini di apparire nei log di CT?

Un certificato wildcard per *.example.com registra solo la stringa wildcard, nascondendo la label specifica del sottodominio. Ma nel momento in cui un servizio riceve un certificato con nome dedicato, quel nome viene registrato anche se tutto il resto si trova dietro una wildcard.

Come posso evitare che gli hostname interni trapelino in Certificate Transparency?

Utilizza una CA interna e privata per i nomi che non dovrebbero mai essere pubblici, poiché solo le CA pubbliche devono registrare in CT. Preferisci certificati wildcard rispetto a certificati foglia nominati singolarmente dove l'architettura lo consente, e considera tutto ciò che è già presente in CT come permanentemente noto.

Le autorità di certificazione private o interne sono esenti dalla registrazione in Certificate Transparency?

Sì. La registrazione in CT è richiesta per le CA pubblicamente attendibili, non per i certificati in generale. Un certificato emesso dalla propria CA interna, considerata attendibile solo dai dispositivi gestiti aziendali, non deve mai confluire in un log pubblico di CT.

Letture correlate