Usando un singolo numero invece di un indirizzo IP o un nome DNS, quali sono gli usi concreti? [chiuso]

6

La mia domanda:

Ho letto che usando l'equivalente del numero singolo (chiamato " equivalente binario " dall'autore) dell'indirizzo IP invece dell'indirizzo IP attuale o il nome del dominio può essere usato " per ignorare gli ACL di base ".

Mi chiedo se una pratica così "esoterica" sia realmente usata e, in caso affermativo, in quali scenari?

La mia comprensione è che il filtraggio può avvenire su due livelli:

  • A livello di applicazione. Qui i proxy controlleranno il nome di dominio contro una lista nera. Evitare questo usando un IP sembra di gran lunga un metodo più pratico,
  • A livello di rete. Qui i firewall controlleranno l'IP di destinazione contro una lista nera: secondo la mia comprensione, non importa come uno abbia inserito un indirizzo IP, sia che abbia usato DNS, IP, binario o altro, verrà comunque bloccato.

L'unico scenario teorico che posso immaginare è un sysadmin stupido che usa un proxy mal configurato invece di un firewall per simulare un filtraggio basato su IP.

C'è qualche altro scenario reale? A meno che la mia situazione teorica rifletta in realtà problemi di sicurezza reali?

Il cosiddetto " equivalente binario ":

Per coloro che non sanno cosa sto riferendo anche io, penso che sia abbastanza poco noto che un host (prendiamo www.google.com per esempio) può essere raggiunto attraverso tre mezzi:

  • Il più ovvio: il suo nome di dominio: www.google.com ,
  • Un modo più tecnico: il suo indirizzo IP: 216.58.210.228 ,
  • Un modo decisamente più tecnico: utilizzare la rappresentazione decimale dell'indirizzo IP: 3627733732 .

È quest'ultimo che mi interessa qui. Per calcolarlo, è necessario iniziare dall'indirizzo IP dell'host:

$ host www.google.com
www.google.com has address 216.58.210.228

Il libro che ho letto ha consigliato di convertire ciascuno dei componenti dell'indirizzo IP in numeri binari, concatenarli per ottenere un unico grande numero binario e convertirlo nuovamente in decimale. Ognuno ha il suo gusto, personalmente preferisco semplicemente moltiplicarlo ciclicamente per 256 e aggiungere ogni componente come nell'esempio qui sotto:

$ bc
((( 216 * 256) + 58) * 256 + 210) * 256 + 228
3627733732

Questo produce un numero, puoi usarlo per accedere al server di Google utilizzando un URL opaco come link o assicurati che l'indirizzo IP corretto venga contattato eseguendo il ping per esempio:

$ ping 3627733732
PING 3627733732 (216.58.210.228) 56(84) bytes of data.
64 bytes from 216.58.210.228: icmp_seq=1 ttl=53 time=26.5 ms

Questa è una bella cosa, cyber stregone, stupisci i tuoi amici con questo trucoso trucchetto 1337 , fantastico! Ma a parte questo, mi chiedo se ci sia un uso reale per questo?

    
posta WhiteWinterWolf 20.12.2015 - 16:14
fonte

1 risposta

4

Dipende dall'implementazione del filtro e forse dal sistema operativo sul computer client.

Come hai detto tu - l'indirizzo IP finirà nei pacchetti TCP nella sua rappresentazione binaria, indipendentemente da come è stato originariamente passato al livello del software socket. I firewall filtrano per questo indirizzo binario e quindi catturano qualsiasi cosa - non c'è modo di aggirarlo.

Tuttavia, se il "firewall" o "proxy" viene eseguito sulla macchina soggetta al blocco (ad esempio su una macchina dipendente anziché sul firewall aziendale), vedo come funzionerebbe:

Se il "Filtro IP" è implementato come una sorta di delega sostitutiva per la libreria di rete dei sistemi operativi (ad esempio Windows Firewall / Windows Defender). Quando il software richiede un nuovo socket su Host XY, controlla XY rispetto a una lista nera. Se non è nella lista nera, passerà la chiamata API al sistema operativo.
Se il software di filtro non tiene conto della rappresentazione a numero singolo, consentirà le connessioni agli host nella blacklist.

P.S .: Penso che questo scenario sia piuttosto oscuro. Non riesco a immaginare che un sysadmin serio possa fare affidamento su Windows Firewall o sth. simile. Inoltre, pensa che Windows Firewall usi una whitelist (ricorda questi dialoghi "Permetti al software ABC di accedere alla rete XYZ?"?)

    
risposta data 20.12.2015 - 16:40
fonte

Leggi altre domande sui tag