CarCar > Sicurezza Informatica

Sommario Sicurezza
A01    Cos'e' un nuke

Sappiamo tutti (in particolare gli utenti Windows) che non esiste il sistema operativo perfetto. E' possibile mandare in crisi un sistema operativo connesso in rete inviandogli pacchetti di dati costruiti a regola d'arte, che sfruttino per esempio una cattiva implementazione del protocollo TCP/IP, quello usato in Internet. Gli effetti vanno dal Blue Screen of Death al congelamento totale della macchina (= unico comando funzionante: pulsante di reset hardware). Un esempio di nuke e' dato da un pacchetto con indirizzo IP mittente uguale a quello del destinatario, che cortocircuita la connessione (in pratica, il computer nel rispondere comincia a mandare dati a se stesso), oppure un pacchetto sapientemente frammentato in maniera che le parti si sovrappongano parzialmente. Ovviamente il nuke e' fatto su misura e sfrutta le debolezze di uno specifico stack TCP abbinato al suo specifico sistema operativo; quindi il nuke che va bene per Windows non va bene (o almeno non e' detto che vada bene) per altri computer, e viceversa nuke che buttano giu' altri computer, _forse_ potrebbero anche non buttare giu' Windows.


[Sommario]


A02    Vari tipi di attacco

- NesTea, Suffer3, Boink, Land, Oob, Smurf

Si tratta di attacchi di tipo DoS (nulla a che vedere con MS-DOS, la sigla significa Denial of Service, Privazione di Servizio). L'effetto varia da noie sullo schermo in presenza di patch a reset della macchina, a schermi blue sotto Win, a stop dei trasferimenti per intasamento delle connessioni.

- Portscan

Serve a trovare le porte aperte di un host remoto.


[Sommario]


A03    Ma cosa sono queste "porte"?

In un ufficio postale esistono vari sportelli, ognuno dei quali svolge un servizio ben determinato: uno per le raccomandate, uno per i pacchi, uno per i telegrammi, uno per vaglia e conti correnti, uno per il pagamento delle pensioni, ...
Analogamente, una macchina connessa alla rete (l'"ufficio postale") ha una serie di porte (gli "sportelli"), ognuna delle quali ha un numero ed e' associata a un ben determinato servizio. Gli indirizzi di porta vanno da 0 a 65535, e quelli inferiori a 1024 sono i cosiddetti Well Known Services (Servizi Ben Noti). I piu' usati sono il 21 per l'ftp, il 23 per telnet, il 25 per smtp (invio di posta), 80 (http, pagine web; molti server usano anche la porta 8080), il 110 per pop3 (ricezione di posta), il 119 per nntp (le news). Il file services (in windows e' nella directory C:\\System) li elenca in maniera piu' dettagliata.

VEDERE ["PORT"-Appendice] per un elenco con maggiori dettagli.

Perche' ci si possa collegare a una determinata porta, occorre che sulla macchina ci sia un server in ascolto su di essa. Per esempio, quando riusciamo a spedire una mail a qualcuno, e' perche' il server di posta del nostro provider ha un "demone" in ascolto permanente sulla porta 25, mentre se l'invio fallisce significa che quel programma non e' in esecuzione (macchina spenta perche' guasta, oppure il programma stesso ha dato i numeri). Ancora, poiche' Windows 95 non ha un server telnet di serie (ha solo il client), se proviamo a fare telnet standard verso una macchina Windows 95 il tentativo fallira' perche' non c'e' niente in ascolto sulla porta 23.

[Sommario]


A04    Differenze fra hackers e altri bei tomi

C'e' molta confusione sull'uso della parola hacker, per colpa soprattutto della disinformazione a opera dell'informazione (che paradosso!) TV e stampata e di certa cinematografia. L'hacker nell'immaginario comune e' colui che cerca di penetrare in un sistema per buttarlo giu', che nel corso delle sue scorribande provoca comunque dei danni, come per esempio il furto di file di password o altre informazioni riservate. Quello non e' un hacker, ma un __cracker__. L'__hacker__ invece e' una persona che anzi non lascia tracce, che se viola la sicurezza di un sistema e' per dimostrare di esserne capace. Un hacker cerca di apprendere sempre di piu' sulla macchina e sistema operativo che usa (e sugli altri ovviamente). Il suo scopo e' quello di vincere certe sfide, e in un certo senso anche di rendersi utile alle sue vittime. L'etica hacker infatti vuole che dopo aver violato un sistema si lasci una traccia, da qualche parte nel sistema stesso, che informi il suo amministratore come e' stato possibile entrare e quali falle nella sicurezza sono state sfruttate, cosicche' egli possatapparle.
I __wannabe__ sono invece coloro che "vorrebbero essere" (wannabe = want to be [voler essere], contrazione americana credo) per esempio hacker, ma che non lo sono. Nei newsgroup un wannabe fara' spesso sfoggio di termini tecnici, anche a sproposito, salvo volatilizzarsi o buttarla in rissa quando si cerca di approfondire un argomento che non e' in grado di sostenere. Un __lamer__ invece e' chi si crede un grande esperto, per esempio di sistemi, mentre in realta' sfrutta solo cio' che gli altri hanno gia' fatto. Un esempio? Tutti i tipi che si danno arie da hacker solo perche' sono capaci di lanciare il client di Bo (che non sarebbero mai capaci di scrivere, per inciso) e mandare un messaggio pop-up sullo schermo del boservizzato.
Questo e molto altro e' spiegato in "The Hackers's Dictionary 3ed.", anche in versione WWW, mentre il testo di riferimento per tutte queste definizioni e' il Jargon File, disponibile in formato testo e info in parecchi siti, e la cui home page e':

www.ccil.org/jargon/

[Sommario]


A05    Ho sentito parlare di "editor esadecimale", ma non ho capito esattamente cos'e'...

I programmi tipo edit.com dell'MS-DOS o NotePad (Blocco Note nella versione italiana) di Windows sono degli editor di testo che permettono di leggere e modificare dei file di testo; ne esistono un'infinita' commerciali o free. Gli editor esadecimali sono analoghi concettualmente, ma permettono di leggere e modificare ogni tipo di file, quindi vengono usati per aprire e manipolare dei file binari, come eseguibili (.exe e .com), librerie (.dll), eccetera. Si chiamano editor esadecimali perche' con essi viene visualizzato il valore esadecimale dei byte che costituiscono il file, tipicamente in una parte della finestra, mentre nell'altra viene mostrata la sequenza di caratteri corrispondenti (se stampabili a schermo).
Un editor esadecimale e' un programma semplice ma potentissimo, perche' permette di fare praticamente tutto su ogni file, e l'unica condizione e' di sapere ESATTAMENTE cosa si fa. Questo significa che, se volessimo cambiare la scritta "Avvio di Windows..." che appare al boot o la scritta "Avvio" o "Start" sul pulsante di avvio, dovremmo aprire il file giusto (nel secondo caso explorer.exe) con un editor esadecimale, posizionarci nel punto in cui e' memorizzata la stringa e cambiarla. Inutile dire che l'uso di tali programmi e' pericolosissimo se fatto per puro cazzeggio, dato che un file binario modificato "alla cieca" diventa con altissima probabilita' inutilizzabile.
Per le sue caratteristiche, gli editor esadecimali si prestano anche ad usi non "politicamente corretti" (eufemismo), come sprotezione di programmi, camuffamento rispetto ad antivirus e programmi di monitoraggio in genere, e cosi' via.

[Sommario]


A06    Cos'e' un firewall?

E' un software. Puo' girare su macchinette speciali ridotte al minimo, nel qual caso ti vendono un mattoncino hardware con dentro il software su (E)EPROM.
Alternativamente, puo' girare su un "server" apposito, tipo Linux (v., per esempio, www.debian.org, www.suse.com, www.slackware.org, ecc.).
In tutti i casi e' un programma che effettua quattro funzioni:

    1) INPUT: determina cosa puo' ARRIVARE
    2) OUTPUT: determina cosa puo' USCIRE
    3) FORWARDING: prende un pacchetto in arrivo dall'interno e lo butta fuori, o viceversa
    4) MASQUERADING: prende pacchetti dall'interno e li butta fuori, ma, contemporaneamente, maschera l'indirizzo di partenza, mettendo il proprio. Quando arriva una risposta a lui, cambia l'indirizzo del destinatario, mettendo quello della macchina originaria.


PC protetto: "Da PC1 a WWW.ALTAVISTA.COM, HELLO" --> Firewall
Firewall: "Da FIREWALL a WWW.ALTAVISTA.COM, HELLO" --> Altavista
Altavista: "Da Altavista a Firewall, TI SENTO" --> Firewall
Firewall: "Da Altavista a PC1, TI SENTO" --> PC Protetto

Nel caso di pacchetti DIRETTI

Nemico: "Da NEMICO a PC1, MUORI" --> Firewall
Firewall (opzione 1): (niente)
Firewall (opzione 2): "NESSUN PC1 PRESENTE" --> Nemico
Firewall (opzione 3): "MUORI TE, CAATA!" --> Nemico (crash!)

...le opzioni 2 e soprattutto 3 non sono fornite di serie 8-D

In ogni caso, anche con opzione 1, al server non capita nulla. Naturalmente, il firewall deve essere in grado di resistere ad un attacco diretto contro di lui.

[Sommario]


Fonte...Massimiliano Baldinelli...it.faq

 

Sicurezza informatica - By Carlo Carmagnini