mainSlogopaceclick Blog  · informatica · elettronica · astronomia..

Phishing portato a livelli estremi sfruttando Punycode: come funziona, come prevenire ed essere sicuri dei siti web aperti tramite SSL

Punycode è un sistema di codifica che serve a rappresentare una sequenza di caratteri unicode tramite una sequenza di caratteri ASCII, per rendere possibile l'uso di tali sequenze nei nomi di dominio, senza dover modificare infrastrutture e standard esistenti.

In questo modo si possono gestire nomi di dominio internazionalizzati (IDNA) aggiungendo all'inizio della stringa punycode i caratteri 'xn--'.

Ad esempio, inserendo come indirizzo xn--google.com, vedremo il browser mostrare la stringa convertita in caratteri cinesi:

undefined

La traduzione di sequenze Punycode nella codifica originaria è a carico dello user agent (applicazione installata sul computer dell'utente che si connette al server) nel browser .

Il problema è che come tutti i nomi a dominio internet registrati, è possibile creare delle sequenze punycode ad-hoc per mostrare all'utente una stringa convertita totalmente a piacere.

Ad esempio, se inseriamo nel browser la stringa (procedete solo a vostro rischio e pericolo) punycode "xn--80ak6aa92e.com", la vedremo istantaneamente venire convertita in "apple.com".

Ovviamente il sito aperto non sarà quello ufficiale Apple, ma in realtà sarà sempre il sito "xn--80ak6aa92e.com", solo che il nostro browser ci visualizzerà il testo transcodificato in ASCII.

In breve il browser viene tratto in inganno, e con lui l'utente, vediamo l'esempio:

se inseriamo:

undefined

e premiamo invio, avremo in risposta:

undefined

da notare la presenza di un certificato SSL (DV) sul sito fasullo, che crea un FALSO senso di sicurezza

 

LA DIFFERENZA CON QUELLO VERO

undefined

in questo caso il certificato SSL (OV o EV) certifica l'effettiva corrispondenza dell'azienda.

 

Il fenomeno del 'phishing' (tipo di truffa effettuata su internet, specialmente a mezzo e-mail) cerca sempre nuove strategie per trarre in inganno gli utenti, spingendoli a cliccare su link che SEMBRANO essere affidabili ma che in realtà REINDIRIZZANO verso pagine web spesso dannose.

Si tratta di attacchi di social-engineering nei quali un malintenzionato cerca di ingannare la vittima convincendola a fornire informazioni personali, dati finanziari o codici di accesso, fingendosi un ente affidabile in una comunicazione digitale.

PRIMA REGOLA: PREVENZIONE

Quando ricevete email di dubbia provenienza, diffidate dal cliccare sui link proposti, specialmente se legati in qualche modo ad istituti bancari o di credito.
Fare specialmente attenzione all'indirizzo di provenienza, e prima di cliccare su un link, controllare quale sia la sua effettiva destinazione.

Esempio:

un link visualizzato come "apple.com", potrebbe in realtà essere destinato al precedente "xn--80ak6aa92e.com" (questo potrebbe derivare da una formattazione HTML costruita apposta per l'occasione)

in questo caso tuttavia, basterà posizionarsi con il mouse sopra al link e controllare il vero collegamento leggendo il popup che appare (di solito) in basso a sinistra del programma di posta

 

SECONDA REGOLA: CONTROLLO

Una volta cliccato su un link, come fare a sapere che il sito aperto è effettivamente quello sicuro?

L'unica arma di difesa in questo caso è il certificato SSL, che può essere di 3 tipi:

  • DV Domain Validation: garantiscono una connessione cifrata con il server, ma non garantiscono sulla corrispondenza aziendale al nome visualizzato.
  • OV Organization Validation & EV Extended Validation: oltre alla cifratura con il server, garantiscono verifica sull'effettività dell'azienda.

 riguardando le immagini precedenti potrete notare la differenza.

 

Come cambiare l'indirizzo MAC alla scheda di rete su Windows

L'indirizzo MAC (o MAC Address) viene usato dalle schede di rete per identificarsi nell'interscambio di informazioni.

MAC è l'acronimo di Media Access Control ed è costituito da un codice lungo 6 byte (48 bit).
Viene assegnato dal produttore della scheda al momento della sua creazione ed è univoco per ogni scheda.
I primi 3 byte sono l'identificativo della azienda produttrice, gli ultimi 3 rappresentano uno specifico sotto-indirizzo univoco.

undefined

L'IEEE (Institute of Electrical and Electronics Engineers) ha creato questo indirizzo prevedendone la saturazione intorno al 2100 (poiché sono disponibili 281.400 miliardi di diverse combinazioni).

Poiché ogni scheda di rete ha memorizzato un proprio indirizzo MAC, nei nostri computer equipaggiati con wifi-Bluetooth-ecc.. avremo più indirizzi. (per scoprire quali sono, salta al punto 'Verifica')

Se avessimo la necessità di cambiare il MAC di una specifica scheda di rete (per svariati motivi, come ad esempio per aggirare un filtro nel nostro router), dovremmo procedere come segue.

 

Cambiamo

Apriamo proprietà del sistema

undefined


Andiamo su Gestione Dispositivi

undefined


Cerchiamo la scheda a cui vogliamo modificare il MAC e andiamo sulle sue proprietà

undefined


Cerchiamo, da avanzate "Servizio di rete" o ("Network address")

undefined

Selezioniamo il campo vuoto e inseriamo (SENZA - o : o .) l'indirizzo MAC che vogliamo compaia.

Ad es. se vogliamo come nuovo MAC 08-00-27-00-E0-4D, mettiamo 08002700E04D.

Una volta inserito, diamo OK e RIAVVIAMO il sistema.

 

Come scegliere il MAC

Possiamo inserire praticamente qualsiasi combinazione: ecco la lista ufficiale per chiarire di cosa parlo. 

Strumenti utili

Se siamo in possesso di un indirizzo MAC del quale vogliamo maggiori dettagli, come il nome del produttore, andiamo su questo sito.

 

Verifica

Per verificare quali sono gli indirizzi MAC delle nostre schede di rete:

-apriamo il prompt come amministratori (start>cerchiamo 'cmd'>click destro>esegui come amministratore)

-diamo il comando

 undefined

 

NOTA:

come scritto all'inizio, il MAC viene memorizzato dalle case a livello firmware nei chip delle schede di rete, e non è alterabile permanentemente.

La nostra modifica sarà 'virtuale', cioè il nostro sistema 'simulerà' il MAC immesso come reale, ma non verrà alterato il MAC memorizzato nell'hardware. Il che vuol dire che a seguito di disinstallazioni driver/aggiornamenti anche del sistema, potremmo dover eseguire di nuovo la procedura.

 

Cosa sono, come configurare e proteggere i DNS su Windows

DNS è l'acronimo di Domain Name System 
è il protocollo usato a livello globale per la traduzioni dei nomi a dominio
undefined

Cosa vuol dire?

Quando digitiamo il nome di un sito web (ad es. spaceclick.com) il nostro computer invia una richiesta DNS ad un opportuno server per la traduzione in indirizzo IP (es. 105.0.0.155) di tale nome. E poi si collega a tale indirizzo IP per lo scaricamento e visualizzazione del sito.

Questo perché ogni server (che contiene un sito web) è presente in internet con un proprio indirizzo IP (numerico) univoco; i computer non sanno di certo implicitamente instradare una richiesta 'verbale' verso un indirizzo 'numerico'!
Da qui la necessità di una traduzione.

Sparsi per il globo ci sono moltissimi server DNS, sempre in attesa di una richiesta di traduzione.

Di norma ogni provider che fornisca connessione ad internet (soprattutto per i privati), preconfigura i suoi router in modo da connettersi verso i server DNS proprietari dell'azienda. Questo perché in caso di necessità l'azienda stessa può impedire la traduzione di certi siti, magari dopo un blocco richiesto dalle autorità (siti malevoli); in tal caso il sito non risulterà raggiungibile dal computer richiedente (ma in realtà sapendo il suo indirizzo IP, potremmo benissimo collegarci!).

Perché cambiare i DNS?

Molte volte capita che i server DNS dei provider locali risolvano richieste con scarse prestazioni, soprattutto negli orari di punta in condizioni di alto carico.

Instradare richieste DNS verso un server 'veloce', velocizzerà di conseguenza la nostra navigazione!

Oppure può capitare che un sito non sia raggiungibile per via di una mancata propagazione di nuovi parametri DNS (capita soprattutto quando un sito estero modifica qualcosa, e passano anche giorni prima che tali modifiche arrivino nei server dei provider italiani).

Infine potrebbe esserci la necessità di superare dei blocchi imposti dal provider e quindi risolvere quanti più nomi possibile.

Le alternative

Come scritto, non esistono solo i server del provider!
Sparsi per il globo ci sono migliaia di server equivalenti, alcuni più e alcuni meno 'open', alcuni più e alcuni meno sicuri e veloci.

Eccone alcuni consigliati:

DNS Google

8.8.8.8
8.8.4.4

DNS OpenDNS

208.67.222.222
208.67.220.220

DNS Comodo SecureDNS

8.26.56.26
8.20.247.20

DNS Dyn's Internet Guide

216.146.35.35
216.146.36.36

DNS FoolDNS

87.118.111.215
213.187.11.62

DNS TelecomItalia

85.37.17.51
85.38.28.97

Quale scegliere?

Inutile dire che per rapidità e affidabilità il top in questo caso è Google, il quale è noto anche per l'immensa estensione dei suoi database (risolve molti più domini dei rivali).
Tuttavia se cerchiamo più sicurezza la scelta migliore sarà quella di OpenDNS o SecureDNS, dove ci viene fornita una protezione preventiva contro tentativi di pishing o contro siti contenenti malware e virus.
Questi server DNS bloccano tali siti, grazie a una loro lista aggiornata dagli stessi utenti della rete.

Come cambiare i parametri DNS

  • Andare su 'Pannello di controllo'.
  • Aprire 'Centro connessioni di rete e condivisione'.
  • Andare su 'Impostazioni scheda'

undefined

  • Selezionare la scheda di rete con la quale il computer si connette al router e quindi ad internet (di solito nei fissi è una ethernet, sui portatili una wireless). Andare su proprietà.

NOTA: Se nel computer è installato VirtualBox/VisualStudio o comunque altri programmi che fruiscono di emulatori di rete virtuale, potrebbero esserci più scelte nella finestra 'impostazioni scheda'. E' necessario trovare la scheda di rete 'a monte' e modificare solo quella, perché nel caso modificassimo una scheda di tali emulatori, non solo provocheremmo il malfunzionamento dei bridge virtuali, ma non avremo in realtà modificato i DNS alla vera scheda di rete del PC!

undefined

  • Scorrere l'elenco e selezionare la linea 'Protocollo TCP/IPv4' (attenzione a non deselezionare la casella a sx), e andare su Proprietà.

undefined

Nella nuova finestra che appare, potrebbero esserci 2 casi:

-è selezionata la casella 'Ottieni indirizzo server DNS automaticamente', in tal caso procedere a metterne uno manualmente.
-è già selezionata la casella 'Utilizza i seguenti server DNS'. Questo vuol dire che il computer era già stato precedentemente configurato per uno specifico server DNS, in tal caso sconsigliamo la modifica, oppure vi consigliamo di segnarvi gli indirizzi trovati per poterli ripristinare in caso di problemi.

Procedere con l'immissione manuale (nel nostro caso abbiamo scelto Google):

undefined

 

 SIAMO QUINDI PRONTI A VERIFICARE LE NUOVE IMPOSTAZIONI

 Tra i vari modi testare i nuovi dns, c'è quello rapido da prompt dei comandi.

 Aprire il prompt di Windows (start>esegui>cmd oppure cercare cmd dalla ricerca Windows 8), digitare

nslookup

 e dare invio

 apparirà sotto, una risposta con il server deputato.
 Se l'address corrisponde a quello che avevamo scelto, l'impostazione è andata a buon fine.

undefined

 

Da cmd consiglio anche di lanciare il comando:

ipconfig /flushdns

per ripulire la cache DNS gestita e memorizzata in locale da parte di Windows.

Adesso potremo anche provare a risolvere manualmente qualche nome, come ad esempio spaceclick.com con il comando:

nslookup blog.spaceclick.com

la risposta conterrà la traduzione in IP (e quindi il suo vero indirizzo nella rete) del dominio di questo sito.

 

F-SECURE per conferma..

Un metodo alternativo per verificare le corrette impostazioni dei DNS (su Router o PC) viene messo a disposizione da F-Secure.
Attraverso il servizio Router-Checker (raggiungibile qui) il sito esegue una verifica degli indirizzi IP che richiediamo e ci notifica un eventuale 'dirottamento' di cui non siamo a conoscenza.
Per vedere i dettagli, aprire la pagina, far partire il test ed infine andare su Details of your DNS server's IP address.
Molto interessante per proteggerci da attacchi di DNS hijacking (che in breve, ci fanno credere di aprire un sito legittimamente mentre invece ci connettiamo ad un sito fatto ad-hoc da un malintenzionato per prenderci dati personali).

Navigando normalmente da browser, noterete sicuramente un miglioramento di prestazioni, soprattutto nel momento in cui cliccate sui link per spostarvi da una pagina all'altra.

E' ovviamente sempre possibile ritornare alle impostazioni precedenti (quindi utilizzando i DNS del provider) rimettendo la scelta su 'Ottieni indirizzo server DNS automaticamente'.

Home