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?