Scopri cos’è un attacco omografico, come funziona il trucco dei caratteri Unicode negli URL e come verificare domini sospetti con Punycode, Chrome e PowerShell
Gli attacchi omografici rappresentano una delle tecniche più insidiose nel panorama della sicurezza informatica moderna. Non sfruttano malware o vulnerabilità software, ma un principio molto più sottile l’illusione visiva.
Un URL, un indirizzo email o uno username possono sembrare identici a quelli di un servizio legittimo, ma essere composti da caratteri Unicode differenti rispetto ai corrispettivi latini. Per l’occhio umano risultano indistinguibili; per i sistemi informatici, invece, sono stringhe completamente diverse.
Come funziona un attacco omografico
Il meccanismo alla base dell’attacco omografico si fonda sull’utilizzo di caratteri appartenenti ad alfabeti diversi ma visivamente simili, detti “omoglifi”. Un esempio emblematico riguarda il dominio di PayPal come gli indirizzi seguenti:
- paypal.com
- раypal.com

Queste sembrano identiche, ma nel secondo caso alcune lettere appartengono all’alfabeto cirillico e non a quello latino. Il risultato è un dominio falso che può essere usato per campagne di phishing altamente credibili.
Il problema nasce dall’adozione dello standard Unicode (confusables.txt), progettato per supportare oltre 150.000 caratteri distribuiti su più di 160 sistemi di scrittura. Questa scelta ha reso il web globale e inclusivo, ma ha anche aperto la porta a possibili abusi.
Unicode, caratteri confondibili e normalizzazione
Il consorzio Unicode mantiene un elenco ufficiale di caratteri “confondibili”, che include migliaia di simboli potenzialmente pericolosi. Attraverso la normalizzazione NFKC (Normalization Form Compatibility Composition), molte varianti stilistiche vengono convertite in una forma canonica più semplice, riducendo il rischio di ambiguità.
Tuttavia, non tutte le applicazioni implementano questa trasformazione in modo uniforme. Quando un attaccante registra una variante quasi identica di un dominio legittimo, sfrutta proprio questa discrepanza tra percezione visiva e rappresentazione tecnica.
Il ruolo del Punycode e dei browser moderni
Originariamente, il DNS supportava esclusivamente caratteri ASCII. Per consentire domini internazionalizzati, è stato introdotto il Punycode, un sistema di codifica che converte caratteri Unicode in formato ASCII con prefisso “xn--”.
Ad esempio, il browser Google Chrome trasforma automaticamente domini sospetti in formato Punycode. Se rileva una combinazione anomala di alfabeti (come latino + cirillico), mostra la versione ASCII codificata.
Ritornando all’esempio di prima, il dominio раypal.com che contiene caratteri cirillici viene tradotto in xn--ypal-43d9g.com. In questo modo segnala implicitamente la presenza di caratteri non standard. Tuttavia, se un dominio utilizza esclusivamente caratteri di un unico alfabeto non latino, potrebbe essere visualizzato senza conversione evidente.
Come verificare un URL sospetto in Windows e Linux
Per smascherare un possibile attacco omografico, è possibile utilizzare strumenti di verifica tecnica. Su Windows, tramite PowerShell, si può impiegare la classe IdnMapping per convertire un dominio in ASCII.
Se il risultato contiene il prefisso “xn--”, significa che il dominio include caratteri Unicode non latini. Su Linux, strumenti come idn2 consentono di effettuare la stessa operazione da terminale con il medesimo risultato.
INDICE DEI CONTENUTI





































Lascia un commento
Visualizza commenti