e-mail

Anche se è insolito, voglio cominciare con un ringraziamento a Giulio, un mio amico che mi ha spinto a riflettere su tale argomento delicato.

HACKING PER COSTRUIRE

by DANIELE BAILO .



Un primo impatto

Senza dubbio la maggior parte di noi al sentire questa parola drizza le orecchie con uno sguardo un po' eccitato e pensa già a progetti trasgressivi (alimentati dai film sugli hackers che stanno uscendo ultimamente e già usciti nel passato, come War Games) tipo entrare nei sistemi informatici delle banche, curiosare tra gli archivi della NASA, distruggere a distanza i computer dei propri nemici ecc.
Ma questo non è precisamente hacking....

Crackers e Hackers:due mentalità diverse

Una prima definizione

Eric S. Raimond (di cui ho tradotto in italiano la sua guida 'How to become a hacker') ci viene in aiuto facendo la distinzione tra Hackers e Crackers.
Il Cracker (alla lettera 'colui che rompe') cerca generalmente di elidere (non eludere) le protezioni poste in un sistema informatico od in un programma; è un cracker quindi chi prende i password file e cerca di decriptarli, oppure chi (conoscendo abbastanza bene l'assembler) riesce a togliere la protezione ai programmi shareware o a quelli (come Winzo$$99) che richiedono di inserire un codice per funzionare.
L'Hacker (alla lettera 'colui che spacca') cerca generalmente di eludere (non elidere) le protezioni dei sistemi. Dico sistemi senza specificare "informatici", poichè lo spirito avventuroso (proprio dell'hacker), che spinge a trovare il bug in qualsiasi cosa, può essere applicato all'informatica ed ai computer come ai distributori automatici o a qualsiasi altra cosa. Tuttavia, generalmente, ci si riferisce al mondo dei computer.
E' dunque un hacker chi sfrutta i BUG e le backdoors di un sistema informatico per penetrarci dentro. Teniamo infine presente che l'attività dell'hacker è generalmente orientata alle reti.

La scintilla

cosa è che spinge a fare l'hacker o il cracker?
La risposta non è semplice poichè ancora una volta bisogna analizzare distintamente il desiderio di hacckare da quello di cracckare, tenendo presenti gli aspetti in comune.
Una possibile causa (comune ad entrambi) è il potere.
Mi riferisco al potere di conoscere perfettamente un computer e di sentirsene padrone. Questa è una sfida con la macchina, o meglio, con la propria intelligenza. Questo desiderio, che oserei definire istinto, può prendere pieghe differenti a seconda del carattere, dei pensieri, dell'educazione della persona.
Può sfociare in un senso di onnipotenza, ed ecco allora i mega-cracker, che cracckano 10 programmi e 4 sistemi operativi al giorno, o i mega-hacker, che spoofano il proprio DNS, fanno un D.O.S. attack e scrivono un programma per sfruttare il bug di PINE il tutto contemporaneamente.
Direi che questi "sogni da hackers" sono uno degli impulsi principali che spinge ad hacckare/cracckare. La totale padronanza di un computer può anche essere usata come strumento per aumentare la fiducia in se stessi e nella propria intelligenza, e se si è altruisti anche per combinare qualcosa di buono.
Ritengo che il "potere" sia una delle scintille principali, ma ce ne possono essere altre.
Ad esempio la mancanza di rapporti sociali ed una certa attitudine alla solitudine unite ad un'indole che tende ad andare al nocciolo delle cose ed approfondirle. Allora il computer, l'informatica e nel nostro caso l'hacking/cracking possono diventare delle ragioni di vita.
C'è poi chi ha bisogno di scaricare le proprie frustrazioni in maniera aggressiva, o chi, chissà per quali arcani motivi, ha una carica di violenza a cui vuole dar sfogo. Teniamo presente che se tale istinto non è accompagnato da un'indole costante nel'apprendere e profonda nel capire, allora ne uscirà uno di quei mezzi hacker/cracker, che è capace solo di scaricarsi software di spoofing, pinging, bruteforce, script per IRC e così via. Questa è la fine della maggior parte di quelli che ahnno un approccio di questo tipo all'hacking/cracking.
C'è chi ha uno spirito avventuroso e curioso, ama il mettersi alla prova e sfidare la propria intelligenza. E questo è uno dei ritratti tipici dell'hacker, che per certi versi può essere paragonato a chi pratica sport estremo.
Troviamo infine chi animato da uno spirito di furbizia (non di astuzia), si sente appagato (e, perchè no, si esalta...) al pensiero di avere delle cose o ricevere dei servizi senza pagarli. Questo è lo spirito tipico del cracker.

Gli strumenti

Che cosa bisogna fare o sapere per diventare un buon hacker?
Prima di tutto lo si deve volere seriamente. Sono quindi importanti una costanza, un interesse non effimero, una curiosità che fungano da "carburante" allo studio da affrontare. Gli hackers più bravi posseggono una rosa di nozioni e di informazioni che derivano sia dall'esperienza che dallo studio, attività che dovrebbero andare di pari passo.
E' dunque importante conoscere vari linguaggi di programmazione e di scripting (C/C++, assembler, perl, java, javascript, html), e questo significa anche passare giornate intere a spremersi il cervello per capire un algoritmo o a fare il debug di un programma. Ma è altrettanto fondamentale andare in giro per la rete, saper usare programmi e servizi UNIX (il ping, il telnet...), raccogliere informazioni, usare algoritmi già pronti (anche se è sempre meglio cercare di capirli) con la filosofia che nulla deve essere fatto due volte.
Bisogna anche imparare a condividere le informazioni con quella che E.Raimond chiama la "comunità hacker". E' dalla rete che si può ricavare la maggior parte del materiale: RFC, listati dei programmi più svariati, commenti e discussioni sui newsgroup, le varie riviste on-line sull'hacking e il phreaking, mailing lists, notiziari UNIX/LINUX e chat su IRC. Tutte cose che bisogna sfruttare moltissimo. Ovviamente nessuna di esse può sostituire, per esempio, le giornate passate ad impazzirsi su un manuale di C/C++ o le nottate spese a capire perchè l'ultima versione del kernel di LINUX della RedHat non riconosce la scheda di rete. Di fondamentale importanza è conoscere e sapersi muovere con UNIX o qualsiasi altro sistema operativo UNIX-LIKE (tipo Linux).
Concludo suggerendo delle domande che possono mantenere vivi l'interesse e la curiosità ed alimentare la costanza:
a)che cosa è che....?
b)come è possibile che...?
c)so bene cosa accade quando.....?
d)come funziona...?
Alcuni esempi pratici della loro applicazione:
so bene come funziona una rete?Che cosa accade quando mando un E-Mail?Come funziona il protocollo HTTP i il POP3?Come è possibile spoofarsi l'IP?Che cosa è l'IP?E il DNS?Che cosa è un protocollo?Che cosa è un Wingate?etc..



Come usare gli strumenti

Gli scopi

Gli scopi che un Hacker si può prefiggere sono vari, dipendono dall'individuo, dalla sua mentalità, e possono essere mutabili nel tempo. Non sono necessariamente correlati a qualla che ho chiamato 'la scintilla'. La carica, l'impulso istintuale della "scintilla" può infatti essere filtrato e condotto su altre vie dal razioncinio e dal buon senso.
Si può per esempio intraprendere la strada dell'hacking animati dalla voglia di entrare in un sistema e poi, dopo aver studiato sodo e aver superato vari ostacoli, accorgersi che gli strumenti acquisiti possono tornare utili per la propria professione (o per trovarne una).
E' praticamente impossibile fare una lista particolareggiata di tutit i possibili scopi, tuttavia ritengo sia possibile fare una grossa distinzione:
scopi COSTRUTTIVI e scopi DISTRUTTIVI.
Gli scopi distruttivi (quelli che forse più spesso si prefiggono i principianti) sono svariati e vanno dal mettere fuori uso un server e craccare i codici delle carte di credito a mettere la foro di Clinton in mutande sul sito della NASA...e chi più ne ha più ne metta.
Gli scopi costruttivi vanno dal puro divertimento (senza danneggiare nessuno) allo spiegare in maniera precisa il BUG del sistema in cui si è penetrati, all'utilizzo delle nozioni acquisite per il proprio lavoro o per creare iniziative utili (mailing lists, gruppi di discussione, server.....).
Parlando degli scopi di un buon hacker, non posso non esprimere la mia personale opinione.
Innanzitutto ritengo importante sottolineare che non è distruggendo che si dimostrano le proprie capacità e la propria padronanza del computer, poichè distruggere è facile, tutti sono capaci a farlo, specialmente in questi ultimi tempi in cui basta scaricarsi 40k di programma per mailbombing ed intasare la casella postale del malcapitato, e in cui quintali di software di attacco girano gratuitamente per la rete.
Una volta acquisite certe conoscenze, è facile anche essere costruttivi: basti pensare che ci sono tonnellate di software FREE per LINUX che aspettano di essere debuggati; e si pensi pure che aiutare lo sviluppo e la crescita di nuovi sistemi operativi è uno dei modi migliori per togliere il monopolio alle grandi industrie dell'informatica, che detengono un potere ampio e capillare nelle scelte delle società e dei governi.
E poi la rete è un ottimo luogo di incontro per persono che vogliono condividere gli stessi interessi e scambiarsi pareri ed informazioni.
Ritengo infine che la soddisfazione che si ricava dal costruire un progetto, mandarlo avanti, vederlo crescere e allargarsi, sia di gran lunga superiore al creare un virus che mandi in tilt i computer della NASA (anche se ammetto che tale idea è esaltante..).


Se, dunque, siete veramente interessati, cominciate a scaricarvi quintali di materiale (oppure chiedetemelo!) e studiatelo, chiedete, confrontate, cercate di capire.
L'hacking è una cosa seria per gente seria e valida.


Concludo con una citazione di un 'tizio' che aveva capito molte cose.... soprattutto riguardo all'uomo.


Siete buoni quando non siete che voi stessi.
Ma anche quando non siete in unità con voi stessi, voi non siete cattivi.
Poichè una casa divisa non è un covo di ladri, è solo una casa divisa.
[...]
Siete buoni quando vi sforzate di dare qualcosa che sia vostro.
E tuttavia non siete cattivi quando cercate un guadagno per voi.
Poichè quando cercate un guadagno non siete che una radice che s'avvinghia alla terra e succhia il suo seno.
[...]
Siete buoni quando camminate per la vostra meta, con passi fermi e arditi.
E tuttavia non siete cattivi se vi arrivate zoppicando.
Anche chi zoppica non cammina a ritroso.
[...]
Voi siete buoni in innumerevoli modi, e non siete cattivi quando non siete buoni.
Siete soltanto svogliati ed indolenti.
Purtroppo non può il cervo insegnare alla tertaruga ad esser veloce.

Nel vostro aspirare ad essere il gigante che è in voi sta la vostra bontà; e quell'aspirazione è in ognuno di voi.

Kahlil Gibran
Per consigli o altre riflessioni E-mail me


[Main Page] [Musica] [Links] [Hacking] [About Me] [Silenzi Project] [E-Mail]

Webmaster: Daniele Bailo