Oct 24 2003

Scrambler telefonici


by tonycrypt

Quando utilizziamo il telefono per comunicazioni riservate, in effetti non abbiamo nessun tipo di protezione. Anche se nei moderni sistemi di comunicazione cellulare si utilizzano tecniche crittografiche per la protezione dei dati, esse risultano poco efficaci e ormai superate. Come garantire una privacy efficace utilizzando sistemi alla portata di tutti? Una prima risposta la si può trovare nell’utilizzo dei cosiddetti scrambler telefonici. Si tratta di dispositivi in grado di alterare un segnale elettrico, per mascherarlo e quindi proteggerlo durante un percorso di comunicazione. Una volta “alterato” un segnale, si dovrà utilizzare un altro dispositivo scrambler per poterlo ricostruire e di conseguenza decifrarlo all’atto della ricezione del segnale. Ovviamente i dispositivi scrambler utilizzati nella fase di cifratura e decifrazione devono operare allo stesso modo e quindi dovranno condividere una stessa “password”, per lavorare in maniera sicura. A livello teorico questi sistemi utilizzano un tipo di crittografia simmetrica, poiché usano una sola chiave per la cifratura e la decifratura delle telefonate. I primi modelli di scrambler telefonici impiegavano sistemi molto semplici per l’alterazione del segnale. Si trattava di piccoli “trucchi” elettronici legati alla sovrapposizione di forme d’onda particolari, a tagli di frequenza eccetera, che potevano essere ricostruiti “artigianalmente” tramite l’utilizzo di oscilloscopi e generatori di forme d’onda. Le password erano costituite dai valori numerici relativi alle frequenze di taglio, al tipo di forma d’onda alterante e così via, e quindi l’insieme delle possibili chiavi risultava abbastanza limitato (di solito non si superavano le 5000 possibilità). Con il passare del tempo questi dispositivi sono stati rimpiazzati da scrambler più efficaci dal punto di vista tecnico e soprattutto crittografico. Un esempio moderno è l’AT&T Security Telephone Device 3600, uno scrambler che utilizza un sistema di negoziazione delle chiavi e un algoritmo proprietario della ditta americana AT&T per la fase di cifratura. Questo dispositivo, dal costo di 1000 dollari circa, garantisce la privacy durante la comunicazione attraverso l’utilizzo di un algoritmo crittografico basato sulla conoscenza di una chiave di sessione generata al momento dell’attivazione del dispositivo (e quindi personalizzata solo per quella particolare telefonata) e comunicata all’altro scrambler del destinatario. Esistono anche scrambler telefonici per le comunicazioni via fax: un esempio, sempre della stessa compagnia americana AT&T, è il modello 3700/3710 che consente di comunicare in maniera sicura attraverso un algoritmo proprietario e una gestione avanzata delle chiavi, tramite la generazione di numeri casuali. Il costo di questi scrambler per fax è decisamente più elevato, si superano abbondantemente i 2000 dollari. Esistono anche scrambler più economici di quelli appena presentati, che a livello crittografico utilizzano sistemi meno sofisticati. Uno di essi è l’Enigma 100 basato sull’utilizzo digitale di un DSP (Digital Signal Processing) per la protezione e l’elaborazione dei segnali elettrici. Esistono anche scrambler per i cellulari; in questo caso le tecniche utilizzate per la protezione del segnale sono molto più sofisticate, dovendo lavorare con dati digitalizzati e quindi con numeri facilmente “mascherabili” grazie alle tecniche matematiche della crittografia. Anche se consentono di ottenere buoni risultati dal punto di vista della sicurezza, i sistemi descritti non sono proprio alla portata di tutti, visti i costi e le esigenze pratiche legate a un utilizzo hardware di due dispositivi posizionati ai capi di una comunicazione telefonica. Esistono però tecniche altrettanto sofisticate, se non di più, e molto più pratiche e soprattutto economiche: gli scrambler telefonici software. Dal momento che ormai la maggior parte dei computer è dotata di una scheda audio e di un modem, perché non combinare le due cose per alterare le telefonate con questi dispositivi? Vediamo come. Per mascherare una telefonata tramite l’utilizzo di un normale personal computer, è necessario in qualche modo digitalizzare la voce, modificarla con un algoritmo crittografico e inviarla tramite modem nella linea telefonica. La digitalizzazione e la modifica del segnale che rappresenta la voce vengono effettuate da un software particolare; ne esistono diversi in circolazione (alcuni anche disponibili gratuitamente) che, tramite una scheda audio e un microfono, riescono a convertire la forma d’onda sonora in una lunga catena di numeri facilmente manipolabili da un algoritmo crittografico. Con questo software, ad esempio, è possibile comunicare con un amico in maniera sicura ed economica, dal momento che la “telefonata” avviene utilizzando la rete e quindi i costi, in teoria, sono nulli (in realtà i costi reali sono identificati dal costo della telefonata, di solito urbana, effettuata per il collegamento al provider fornitore dell’accesso a Internet). Esistono molti altri programmi che consentono di proteggere le conversazioni telefoniche attraverso l’utilizzo di Internet. Ma i ritardi di trasmissione e la scarsa qualità del segnale non consentono comunicazioni full duplex per la maggior parte degli utenti Internet: bisogna sapersi accontentare.


Oct 3 2003

Firewall


by tonycrypt

Un firewall (letteralmente tradotto “muro di fuoco”) è uno dei tanti modi per proteggere una rete da altre reti di cui non ci si fida o comunque sconosciute. Il reale meccanismo con cui è realizzato varia fortemente, ma il principio è uno solo: bloccare il traffico indesiderato e veicolare quello consentito. Alcuni firewall mettono più enfasi nel bloccarlo, altri nel permetterlo. Il firewall è un software che può essere inserito nel proprio computer, ma può essere inteso anche come un piccolo componente hardware che filtra gli accessi su una rete.
Di solito, i firewall sono configurati per proteggere contro i login non autenticati dall’esterno. Questo aiuta a prevenire il login di vandali in macchine della rete. I firewall, d’altra parte, non possono proteggere bene da cose come i virus. Un firewall non può rimpiazzare la coscienza, la consapevolezza e la prudenza dei suoi utenti. In generale, un firewall non può proteggere contro un attacco guidato di dati, attacchi nei quali qualcosa è postato o copiato all’interno dell’host dove è eseguito. Questa forma di attacco è avvenuta nel passato contro varie versioni di Sendmail.
Un firewall consente dunque un monitoraggio completo di tutte le attività in rete; tiene sotto controllo tutte le porte ed evita che virus o applicazioni di vario genere possano accedere, più o meno clandestinamente, alla rete. Un altro aspetto positivo derivante dall’uso del firewall è che se anche se siete infetti da un server/trojan questi non sono “rilevabili/pilotabili” dall’esterno. Il firewall blocca le porte usate dai trojan sia in entrata che in uscita. Il firewall blocca le porte non in uso del pc; se un programma lecito (o da voi autorizzato) ha bisogno di una porta lui la apre per il tempo strettamente necessario, poi la richiude automaticamente. Il firewall vi rende stealth (invisibile) e se qualcuno riesce a avere il vostro IP e prova a “bussare” su quell’ IP con un portscan o con un client non ottiene risposta-eco dal PING quindi non capisce nemmeno se siete ancora connessi o meno.


Sep 18 2003

L’indirizzo IP


by tonycrypt

La sigla IP è solitamente usata per indicare quel numero di 4 byte (32 bit) che identifica univocamente un qualsiasi computer connesso a Internet, e che andrebbe più correttamente detto indirizzo IP.
Questo numero è definito in modo da contenere almeno qualche indizio sulla collocazione fisica del computer a cui si riferisce, in modo da facilitare le operazioni di collegamento. Poichè Internet è formato dall’unione di tante reti locali, ciò si ottiene dividendo il numero in due parti: la prima (quella più a sinistra) indica la rete locale a cui appartiene il computer, mentre quella più a destra permette di determinare a quale particolare computer di quella rete locale si riferisca quel particolare IP. In questo modo, i computer che indirizzano i dati sulla rete si preoccupano solamente di leggere la prima parte dell’IP e di spedire i dati alla corrispondente rete locale; una volta arrivati là, sarà poi compito dell’hardware di gestione della rete locale di indirizzare i dati al giusto computer. Si ha però un problema: se ad esempio usassimo due byte per indicare la rete e gli altri due per indicare il computer all’interno della rete (o “nodo” della rete locale), potremmo avere al massimo 65536 reti locali in Internet (il massimo numero esprimibile con due byte); ma ce ne sono molte di più! D’altra parte, se decidessimo di usare tre byte per identificare la rete, potremmo avere molte più reti locali, ma per identificare il nodo avanzerebbe un solo byte, e potremmo quindi avere al massimo 256 nodi per ciascuna rete; ma in molte delle reti locali (es. in una Università) i computer connessi alla rete sono molti di più! Per questo motivo è stata pensata una struttura “flessibile”, in cui l’indirizzo è effettivamente suddiviso in due parti, una caratteristica della rete e una del nodo, ma la dimensione delle due parti è variabile. Gli indirizzi IP, pertanto, sono suddivisi in classi, a seconda della grandezza della “parte di IP” usata per esprimere la rete; le classi si distinguono a seconda del valore del primo byte dell’IP. Ed ecco la tabella esatta: si noti che i numeri 0 e 255 sono riservati per scopi speciali, per cui i quattro byte dell’IP possono variare ciascuno tra 1 e 254. Nella tabella, le x indicano la parte di indirizzo riservata all’individuazione del nodo all’interno della rete, e possono essere un qualsiasi numero compreso tra 1 e 254. Per ogni classe di IP sono indicati il massimo numero di reti e il massimo numero di computer per rete (nodi).

Classe Da A Max. reti Max. nodi Note
A 1.x.x.x 126.x.x.x 126 16.387.064 Usato per poche grandi reti
B 128.1.x.x 191.254.x.x 16.256 64.516 Solitamente usato per le reti di medie dimensioni (università, grosse aziende)
C 192.1.1.x 223.254.254.x 2.064.512 254 Usato per le reti di piccole dimensioni
D 224.x.x.x 239.x.x.x Indirizzi per trasmissioni broadcast e multicast (trasmissione contemporanea a più di un computer)
E 240.x.x.x 254.x.x.x Attualmente indefiniti (tranne qualche numero particolare)

Con questo sistema si ha una elevata flessibilità, e diventa possibile assegnare ad ogni ente che si collega ad Internet un numero di IP relativamente adeguato alle sue esigenze. Il problema non è irrilevante, perchè facendo i conti si trova che il massimo numero di computer collegabili a Internet, limitato dagli IP teoricamente disponibili, è di 3 miliardi 654 milioni circa; tenendo conto che un forte spreco di IP è inevitabile, questo numero è inadeguato agli sviluppi previsti per la rete, tanto che sono allo studio nuovi sistemi di indirizzamento. In particolare, è già cominciata la transizione dall’attuale IP versione 4 all’IP versione 6 (o IP Next Generation) che permetterà di avere ben 16 byte di indirizzo, contro i quattro attuali, e quindi avrà teoricamente posto per un numero di computer pari a 2 elevato a 128. Per contro, esso renderà abbastanza difficile ricordarsi a memoria il proprio indirizzo IP…

Vediamo un esempio pratico: consideriamo l’IP 131.192.8.30. Poiche’ il primo byte vale 131, questo e’ un indirizzo di classe B: pertanto i primi due byte (131.192) individueranno univocamente la rete locale a cui appartiene il computer, e saranno uguali per tutti i computer che appartengono a tale rete locale. Gli altri due byte (8.30), invece, servono ad individuare il particolare computer all’interno della rete locale. Questa struttura serve a semplificare la ricerca del singolo computer: difatti, all’esterno della rete locale, l’unica informazione che interessa è come raggiungere il router di ingresso a tale rete, mentre il compito di contattare tutti i computer con IP che inizia per 131.192 potrà essere delegato a tale router.
Tuttavia, molte reti locali sono a loro volta formate da tante
sottoreti (subnets); ad esempio, la rete di una Università contiene solitamente sottoreti separate per le sue varie sedi, e così via. Per contemplare questa possibilità, nelle classi di tipo A o B è possibile che una parte dei byte dedicati all’individuazione del singolo nodo venga in realtà usata per distinguere tra le varie sottoreti. Ad esempio, nell’IP precedentemente citato, il terzo byte (8) potrebbe servire ad individuare la sottorete, e a questo punto l’ultimo (30) servirebbe ad individuare il particolare computer nella sottorete.
Esistono infine alcuni IP particolari. Ad esempio, l’IP
255.255.255.255 indica tutti i computer sulla rete locale del computer dell’utente; analogamente, “riempiendo” con dei 255 le x (vedi tabella) di un indirizzo si ottiene un IP che indica tutti i computer sulla rete locale corrispondente; ad esempio 131.192.255.255 indica tutti i computer sulla rete locale individuata dai due byte 131.192. Messaggi indirizzati a questi IP saranno letti da tutti i computer! Nel caso esista la suddivisione in sottoreti, è possibile applicare lo stesso principio: 131.192.8.255 indica tutti i computer sulla sottorete 8 di 131.192 (ammettendo che 131.192 sia suddivisa in sottoreti). Ovviamente, questo tipo di IP può essere usato solo come destinazione.

Come trovare l’IP di un utente

Conoscere l’indirizzo IP di un utente può risultare molto utile per diversi motivi: si può individuare la posizione geografica di un utente, si possono smascherare finte e-mail, si possono creare delle statistiche sugli utenti connessi ad un determinato sito, si può risalire a persone che hanno commesso abusi su Internet ma…se ne può anche fare un cattivo uso. Conoscere l’indirizzo IP di un utente poco esperto potrebbe infatti consentire di penetrare nel sistema o nella rete della vittima, su cui è possibile anche arrecare danni più o meno gravi. Ma vediamo praticamente in che modo è possibile risalire all’indirizzo IP di un determinato utente;

– CHAT Quando chattate attraverso chat IRC (per esempio ICQ, Mirc e molte altre) il vostro indirizzo IP viene reso pubblico, in un modo o nell’altro. Quindi siete in costante pericolo. Chiunque può conoscere il vostro indirizzo IP, risalire alla vostra collocazione geografica ed eventualmente arrecare danni al vostro computer. Vi consiglio di usare dei firewalls per proteggervi. Sarebbe meglio collegarsi attraverso un server Proxy ma spesso, così facendo, non si ottiene l’accesso alle chat.

– SITI WEB Un altro metodo per conoscere l’indirizzo IP di un utente è quello di attrarlo su un determinato sito internet. Per fare un esempio, in questo momento io potrei conoscereil tuo indirizzo IP e potrei utilizzarlo in diversi modi. In questo caso, comunque, me ne servo per semplici scopi statistici, per capire in modo approssimativo dove ti trovi, a che ora hai visitato il mio sito e così via. In caso di abusi, però, posso consultare il mio archivio e raccogliere tutte le informazioni necessarie per risalire all’autore . Se poi volessi agire in modo brutale, potrei fare uso di strumenti che mi consentono di penetrare nel tuo sistema ed agire come meglio credo. Attenzione! Si tratta solo di un esempio per mettere subito alla luce i rischi reali che si corrono sul web. Non è assolutamente mia intenzione mettere in atto azioni di tal genere contro i miei visitatori.

– VIRUS Esistono dei virus che, una volta eseguiti sul computer di una vittima, inviano continuamente l’IP di quell’utente a chi ha provveduto ad installare il virus, facilitando inoltre il suo accesso al computer della vittima. Quindi prestate la massima attenzione ai files allegati alla posta e, se possibile, evitate di aprire quelli con estensioni exe, com, bat e simili.

– SMS Quando inviate i vostri SMS dal web, ricordatevi che spesso il destinatario visualizza sul proprio cellulare il vostro indirizzo IP. Teoricamente questo, pur non garantendo la vostra privacy, consente al destinatario di reclamare in caso di abusi e di risalire al mittente. In pratica però il destinatario potrebbe farne un uso ben diverso.

Ottenere informazioni da un indirizzo IP

Abbiamo detto che l’indirizzo IP può fornire utili informazioni sulla collocazione fisica del computer a cui è stato assegnato. Accedendo alla sezione anonimato di questo sito sarà possibile effettuare il tracciamento di tutti i passaggi che si compiono per raggiunfere il computer di cui si conosce l’IP, partendo dal proprio. In tal modo, l’ultimo passaggio darà informazioni sulla collocazione geografica del computer che si cerca di identificare. Tutto questo potrà essere effettuato anche graficamente facendo uso del visualroute presente nella sezione anonimato.



Jul 20 2003

Carnivore


by tonycrypt

Carnivore è il sistema d’intercettazione delle e-mail messo in piedi dall’FBI, molto simile ad Echelon, che intercetta anche i messaggi SMS e le comunicazioni wireless. Il DCS 1000, noto al grande pubblico come Carnivore, è un sistema che permette alla nota agenzia investigativa di controllare indiscriminatamente tutte le e-mail degli utenti americani. Lo scopo dichiarato è quello di effettuare indagini in maniera più efficiente, ma, fin da quando si è venuto a sapere della sua esistenza, si è scatenata una vera e propria bufera di polemiche. Sono in molti a ritenere che questo sistema sia un’inaccettabile violazione del diritto alla privacy dei normali onesti cittadini: infatti, per trovare le comunicazioni sospette, Carnivore deve scandagliare tutte le e-mail e quindi deve entra nella corrispondenza privata delle persone. La sua legalità è tuttora oggetto di controllo anche da parte del Dipartimento di Giustizia americano.

Ma è in particolare dal giorno dei grandi attentati di Settembre negli USA che Carnivore viene sfruttato al massimo delle sue potenzialità. E, in clima di guerra e terrorismo, si mette al primo posto la sicurezza trascurando concetti come privacy o anonimato. Gli USA ammettono chiaramente il ricorso a Carnivore, vista la grave situazione venutasi a creare in seguito all’attacco terroristico. Ma, per garantire maggiore sicurezza in futuro, sarà rispettata la privacy? Non solo: gli Stati Uniti chiedono la chiusura dei remailers, strumenti indispensabili per garantirsi un certo anonimato.