Menu

TL;DR

approfondimento di /r/ItalyInformatica

Crackare password? Facciamolo!

Questo articolo sarà un po’ diverso dagli altri: oltre a parlarvi dell’argomento (Crackare password n.d.r.), voglio proporvi una piccola sfida.

Sappiamo che le password devono essere lunghe, devono essere complesse e solo una di queste due proprietà non basta: avere la stessa password per ogni sito web, sappiamo, non è cosa giusta. Tutte queste accortezze per cosa? Per non farsi rubare le password ovviamente: ma se volessi provarci? Vi è mai capitato di crackare password?

Inizio dicendo che a me la parola ”crackare” fa pensare a martellare e rompere: prendi una password e la smarmelli con un martello. Ora non è questo ciò che succede se ”cracki” una password, in realtà ciò che si fa è trovare il cosiddetto plaintext, cioè la password in chiaro corrispondente al suo hash, che è la password cifrata. Questo è solo uno dei metodi per riuscire nell’intento: ci sono altri modi, come il phishing, ma non pensiamoci più di tanto ora.

Per crackare una password si parte dall’avere il suo hash. Come lo otteniamo? Eh su questo siate fantasiosi voi, ho qualche asso nella manica ma andiamo avanti. Diciamo che abbiamo un hash: adesso potremmo provare qualche attacco. L’idea di base è capire quale algoritmo è stato usato per generare l’hash della password e poi usarlo noi stessi su combinazioni alfanumeriche. Perciò generiamo gli hash delle nostre combinazioni e semplicemente controlliamo se quello creato da noi è proprio l’hash della password. Quando, partendo da una qualche parola (anche solo dalla lettera a) e andando avanti a tentativi (generiamo hash, confrontiamo), stiamo utilizzando il cosiddetto attacco a forza bruta (brute force attack). Non è molto intelligente, non usa tecniche particolari e se la password è lunga e complessa potrebbe richiedere talmente tanto tempo che è del tutto inutile provarci: se sappiamo che la password deve essere per forza lunga al massimo 8 caratteri, ad esempio, oppure sono ammessi soltanto lettere e numeri, allora abbiamo modi per limitare il numero di combinazioni da provare e quindi limitire il tempo richiesto.

Un altro tipo di attacco a tentativi è quello col dizionario (dictionary attack). Un dizionario non è altro che una lista di combinazioni fattibili. Esempio: volete crackare la password di Facebook della vostra ragazza (siete persone corrette e rispettabili e non lo fareste mai giusto?). Aprite un file di testo e riga per riga mettete tutte le password che pensate potrebbero essere giuste. Ci scrivete nomi di parenti, date importanti, nomi uniti a date, cose preferite etc. Vi siete costruiti un piccolo dizionario ed eseguite l’attacco. Il dictionary attack, adesso, prende una ad una la combinazione di lettere e numeri che voi avete fornito e li prova come prima. Sembra simile al brute force attack, invece di provare tutte le combinazioni prova solo quelle che avete dato voi: se il dizionario possiede la password allora l’attacco la troverà in tempi molto brevi, altrimenti non funziona. Questo tipo di attacco nudo e crudo può essere sconfitto abbastanza facilmente: diciamo che siete certi che la password da crackare sia una parola italiana, allora potete usare come dizionario quello della lingua italiana (intendo proprio Treccani). Ma se il creatore della password l’ha scritto male la parola? Fallisce tutto! Di solito i vari software che offrono questo attacco in realtà implementano un ibrido: prendono una parola dal dizionario fornito e la testano. Non va? Allora provano delle varianti di quella parola, ci aggiungono pezzi cambiano lettere etc. (una sorta di unione di brute force attack e dictionary attack n.d.r.).

Questi di cui ho parlato sono nella categoria offline attacks perché non state cercando di entrare in qualche account tentando le password nella schermata di login, ma avete l’hash e ve ne state a casa a crackare senza che il sito vittima ne sappia qualcosa. Non ho parlato della tecnica del ”mettere il sale sulle password”, il quale è un bel problema per gli attaccanti offline casalinghi: magari sarà oggetto di un altro articolo. Adesso passiamo a crackare davvero.

Sfida

Vi fornisco sotto un file con 90 hash. Ci sono vari strumenti utilizzabili per smarmellare quegli hash, non è che dovete farlo a mano con carta e penna (o martello), tranquilli: personalmente ho usato John the Ripper (vi consiglio la versione della community: jumbo).

Per eseguire il più semplice degli attacchi vi basta scrivere in un terminale ”john password.txt”, assumendo che password.txt sia la lista degli hash da crackare. Basta questo e lui inizia “crackare”.
Se avete un dizionario allora fate: ”john -w=dizionario.txt password.txt”. Con w potete specificare un dizionario e john saprà cosa fare: potete anche specificare delle regole su come provare varianti delle parole e altro ancora, sta a chi è interessato ad imparare il tool scoprire queste cose.

Il file degli hash che vi do `e in questo formato: ”n:hash”, n è un id e hash è l’hash di una password: John the Ripper capisce da solo, grazie ai due punti, e quando scopre una password vi segnala a quale id è associata.

Provate a crackare queste 90 password: scaricate dizionari (la parola ”wordlist” è molto usata per riferirsi ai dizionari n.d.r.) e provateli o anche createne di vostri.

Fateci sapere con un commento come sta andando, quante ne avete trovate oppure quale tool state usando e come lo usate!

Buon divertimento e ”STACCAH STACCAHH”!

File password

Questo articolo è stato scritto solamente per scopo dimostrativo: sia l’autore che TL;DR si dissocia da qualsiasi uso fraudolento degli strumenti riportati nell’articolo.

Entrare nella community di Envato? Difficile ma si può!

Envato, con oltre 1 milione di utenti, è sicuramente uno dei più grandi market mondiali per quanto riguarda la vendita di contenuti multimediali quali temi per ogni cms, plugins, addons, audio, video, app totalmente modificabili dall’utente finale se acquistati. In envato troviamo themeforest, videohive, graphicriver, audiojungle, 3docean, photodune, codecanyon. Se vuoi guadagnare qualcosa dal tuo codice, Envato è quello che fa per te (o quasi). In questo articolo vorrei raccontare la mia breve esperienza su cosa e come ho fatto per farmi accettare un plugin WooCommerce in Envato.

(altro…)

Progetti FOSS, anche tu puoi contribuire

Parlo di una realtà, che si può toccare con mano, una realtà che tutti usiamo ma che a nessuno (o quasi) interessa. Una realtà che riguarda tutti noi, non solo gli addetti ai lavori. La toccate quando usate sul vostro smartphone, la percepite quando inviate una mail, la notate quando acquistate online. Sono tutti (o quasi) strumenti, metodi e servizi basati su tecnologie FOSS (Free (and) Open Source Software ndr).

(altro…)

Diritto alla riparazione: informazioni e consigli utili

Ci troviamo in un’epoca in cui il concetto di proprietà di un oggetto sta cambiando, in alcuni aspetti in maniera subdola e che non ci aspetteremmo: il “diritto alla riparazione” dei nostri dispositivi.
Siamo oggi circondati da telefoni, tablet, indossabili, portatili che ogni giorno diventano più sofisticati, compatti, costosi e delicati.
Quando acquistiamo uno di questi, la facilità o, al contrario, l’impossibilità di poter intervenire sugli elementi che li compongono per ripararli o migliorarli sono fattori che difficilmente consideriamo, ma a cui da consumatori dovremmo fare più attenzione, per diversi motivi.

(altro…)

Anti-DDoS Amazon Web Services Infrastructure

Con oltre un milione di clienti in 190 paesi, Amazon Web service è sicuramente una delle collezioni di servizi di cloud hosting più utilizzate. Nei clienti, troviamo aziende protagoniste nel mondo dell’informatica come Adobe, Vodafone e molte altre. “ Da grandi poteri derivano grandi responsabilità”, stessa frase vale se si offrono servizi che devono stare online 24 h su 24.

(altro…)

Clight, demone utente per linux scritto in C

Ciao a tutti, sono /u/nierro, di professione programmatore, fin da quando ho cominciato a programmare ho avuto la fissa per il C e per le utility linux, questo un po’ perché amo linux, e si sa, linux = C, e un po’ perché trovo il C di un’eleganza assoluta e adoro quanto poco tenda a celare facendoti sentire davvero padrone della macchina.
Ma arriviamo al dunque.

(altro…)

L’ascesa di Mastodon, il social network FOSS e decentralizzato

Per chi ha seguito l’ambiente FOSS nell’ultimo periodo, l’esistenza di Mastodon non è una novità. Scritto da @Gargron e compatibile con GNUSocial, Mastodon ha portato una ventata di modernità nel mondo dei social network decentralizzati, e si sta configurando come una potenziale alternativa a Twitter.

(altro…)

La stampa 3D in ambito consumer, vista da un appassionato

Originariamente, questo articolo doveva essere sul futuro della stampa 3d in ambito customer, e probabilmente lo sarà. Prima, però, ritengo necessario sfatare due miti a riguardo che molto, troppo spesso, vengono tirati in ballo.

(altro…)

TL;DR inizia così

Mi piacerebbe raccontare la storia di come TL;DR è nato: purtroppo non parliamo di una calda sera di mezza estate, non parliamo di un gruppo di amici che hanno avuto l’epifania sorseggiando una birra italiana, no. La storia è tutt’altro che romantica e molto più “virtuale”.

(altro…)