Få data fra en kryptert stasjon

Få data fra en kryptert stasjon
Kryptering er den beste måten å sikre at ingen kan lese de private filene på harddisken din, selv i tilfelle de har fått tilgang til stasjonen din fysisk. Angriperen må oppgi krypteringspassordet, en nøkkelfrase eller den private nøkkelen for å få tilgang til innholdet i filene inne i den stasjonen. Kryptering konverterer filen til tilfeldig å se på meningsløse data som ikke kan nås uten å legge inn passfrasen. Kryptering betyr ikke at den kan beskytte stasjonen mot skadelig programvare, virus og ormer mens systemet kjører, det er bare at noen ikke kan få tak i innholdet på stasjonen uten å legge inn passordet.

La oss starte med en beskrivelse av noen krypterende programvare:

Veracrypt:

Veracrypt er en modifisert versjon av TrueCrypt, en berømt krypteringsprogramvare for åpen kildekode som kan brukes på både Windows og UNIX som operativsystemer. Det er et gratis og åpen kildekodeverktøy som gir full diskkryptering. For å sammenlignes med Truecrypt, legger VeraCrypt til noen nye og sikre krypteringsalgoer og formater for krypterte partisjoner. VeraCrypt gir kryptering med forskjellige krypteringsalgoritmer som AE -er, Serpent, TwoFish, Camellia, etc. Videre bruker den 30 ganger flere iterasjoner når du krypterer en partisjon sammenlignet med Truecrypt.

Bitlocker:

Bitlocker er en populær full-Disk-krypteringsprogramvare som bare er tilgjengelig for Windows. Den bruker AES-algoritmen med 128 eller 256-biters nøkler for kryptering. En viktig ting med Bitlocker er at hvis du lar datamaskinen slå på alle filene dine, vil være synlige. Windows Bitlocker er tilgjengelig for alle som bruker Windows Vista eller over versjonen av Windows. Gjennom Bitlocker kan en bruker bare kryptere hele stasjonen på en gang.

Start Bitlocker ved å skrive inn søkeområdet. En skjerm som dette vil vises

Klikk på Bitlocker foran ønsket partisjon.

Nå vil det be om passord. Skriv inn en sterk kombinasjon av bokstaver, tall og spesialtegn som passord, og du er god til å gå.

For å få tilgang til BitLocker -beskyttet stasjon på Linux, må du installere Dislocker ved å bruke følgende kommando:

ubuntu@ubuntu: ~ $ sudo apt install dislocker

Luks:

Luks (står for Linux Unified Key Setup) er et Linux-basert diskkrypteringsverktøy designet av Clemens Fruhwirth i 2004. Det tilbyr ikke så mange funksjoner sammenlignet med VeraCrypt, men det er fleksibelt ved bruk av krypteringsalgoritmer. Luks tilbyr bare ikke kompatibilitet mellom forskjellige programmer, men sikrer også passordstyring på en systematisk måte. Det brukes som en standard for harddiskkryptering i UNIX som operativsystemer.

For å få tilgang til Luks-krypterte stasjoner på Windows, kan du bruke LIBLECRYPT.

Filevault 2:

Filevault2 er Apples svar på Windows Bitlocker. Denne programvaren er bare tilgjengelig for Mac OS. For kryptering bruker den AES-XTS 128-biters krypteringsalgoritme, og den støtter bare symmetrisk nøkkelkryptering ved hjelp av et passord. En viktig lignende ting med Bitlocker og Filevault2 er at alle deres krypterte Drive -data er synlig til datasystemet er lagt ned.

Krypter en harddisk med VeraCrypt:

La oss ta en USB eller en harddisk og kryptere den med VeraCrypt, og så vil vi prøve å bryte krypteringen ved hjelp av Hashcat for å få tilgang til dataene våre.

Åpne VeraCrypt Du vil se en skjerm som dette:

Klikk på Opprett volum og velg Opprett et volum med partisjon.

Klikk Neste og velg ønsket partisjon fra gitte partisjoner.

Nå har vi to ting å velge mellom. Krypteringsalgoritme og hash -algoritme.

Velg noe annet hvis du har et spesielt krav eller la det være som standard, bør være nok.

Å klikke Neste vil bringe oss for å velge passord.

Velg et sterkt passord med en kombinasjon av bokstaver, tall og spesialtegn i henhold til instruksjoner.

Klikking Neste vil be om et format. Klikk OK, og etter en kort periode blir stasjonen din kryptert.

Sprekker VeraCrypt -kryptering:

Nå for å knekke veracrypt -volumer med hashcat, må du gi hashcat de binære dataene som inneholder hash og krypteringsinfo. Det du trenger er de første 512 byte av veracrypt -volumet.

Boot -stasjoner krever å trekke 512 byte som ligger i den siste sektoren av det første sporet av stasjonen. 1 spor er 63 sektorer lang, så det vi trenger å gjøre er å hoppe over 31744 (62*512) byte og trekke ut de neste 512 byte der overskriften er lagret. For ikke-boot-stasjoner, må vi trekke ut de første 512 byte.

Vi vil gjøre dette ved å bruke DD på vår krypterte USB -stasjon som heter /Dev /SDB1 ved å bruke følgende kommando:

ubuntu@ubuntu: ~ $ sudo dd if =/dev/sdb1 av = binary_data bs = 512 count = 1
konv = NoError, synkroniseringsstatus = fremgang
  • if = Drive Name
  • av =fil der ekstraherte data vil bli lagret
  • BS =Blokkstørrelse (antall byte blir trukket)
  • konv = NoError, synkroniseringsstatus = Progress = Fortsett å gjøre arbeidet i tilfelle en feil

For oppstartsdriv vil vi bruke følgende kommando, vi må hoppe over de første 31744 byte:

ubuntu@ubuntu: ~ $ sudo dd if =/dev/sdb1 av = binary_data hopp = 31744 bs = 512 telling = 1
konv = NoError, synkroniseringsstatus = fremgang

I tilfelle, mens vi krypterer stasjonen hvis vi valgte en skjult partisjon, må vi hoppe over første 64K (65536) byte og bruke følgende kommando:

ubuntu@ubuntu: ~ $ sudo dd if =/dev/sdb1 av = binary_data hopp = 65536 bs = 512
Count = 1 Conv = NoError, Sync Status = Progress

Hashcat:

Hashcat er det kraftigste og raskeste verktøyet for gjenoppretting av passord der ute som støtter 5 angrepsmåter for mer enn 300 sterkt optimaliserte hashalgoritmer. Det er også kompatibelt med forskjellige typer grafiske prosesseringsenheter (GPUer) som kan formere seg til sprekkhastigheten. Hashcat er tilgjengelig for vinduer så vel som UNIX som operativsystemer.

Hashcat trenger 3 ting for å begynne å sprekke:

  1. m: Hash type
  2. en: angrepstype
  3. Binær datafil

La oss se på Hashcat -hjelp:

ubuntu@ubuntu: ~ $ hashcat -hjelp
- [Alternativer] -
Alternativer kort / lang | Type | Beskrivelse | Eksempel
=================================+=======+============ ==============================+====================== ===
-M,-Hash-type | Num | Hash-type, se referanser nedenfor | -M 1000
-A,-Attack-Mode | Num | Angrepsmodus, se referanser nedenfor | -a 3
-V, -Versjon | | Utskriftsversjon |
-H, -Hjelp | | Skriv ut hjelp |
--stille | | Undertrykke utgang |
--Hex-Charset | | Anta at charset er gitt i Hex |
--Hex-Salt | | Anta at salt er gitt i Hex |
--Hex-WordList | | Anta at ord i ordliste er gitt i Hex |
--kraft | | Ignorer advarsler |
--status | | Aktiver automatisk oppdatering av statusskjermen |
--Status-Timer | Num | Angir sekunder mellom statusskjermoppdateringer til x | -Status-Timer = 1
--stdin-timeout-abort | Num | Abort hvis det ikke er noen innspill fra stdin i x sekunder | -Stdin-Timeout-Abort = 300
--maskinlesbar | | Vis statusvisningen i et maskinlesbart format |
--Keep-Guessing | | Fortsett å gjette hasjen etter at den har blitt sprukket |
--Selvtest-deable | | Deaktiver selvtestfunksjonalitet ved oppstart |
--loopback | | Legg til nye sletter i induktkatalogen |
--Markov-HcStat2 | Fil | Spesifiser HCSTAT2 -fil som skal brukes | --Markov-HcStat2 = min.HCSTAT2
--Markov-deable | | Deaktiverer Markov-Chains, Emulates Classic Brute-Force |
--Markov-Classic | | Aktiverer klassiske Markov-kjeder, ingen per-posisjon |
-t,-Markov-terskel | Num | Terskel x Når skal du slutte å akseptere nye Markov-chains | -t 50
--Runtime | Num | Abort økt etter x sekunder med runtime | ---runtime = 10
--økt | Str | Definer spesifikt øktnavn | -Session = MySession
--Gjenopprett | | Gjenopprett økt fra -Session |
--Gjenopprettet-deable | | Ikke skriv gjenopprettingsfil |
--Gjenopprett-fil-bane | Fil | Spesifikk bane for å gjenopprette fil | -Restore-fil-bane = x.restaurere
-o, --outfile | Fil | Definer outfile for gjenvunnet hasj | -o outfile.tekst
--outfile-format | Num | Definer outfile-format x for gjenvunnet hasj | --outfile-format =
--Outfile-Autohex-Deable | | Deaktiver bruken av $ hex [] i utgangsletter |
--Outfile-Check-Timer | Num | Angir sekunder mellom outfile -sjekker til x | --outfile-check = 30
--Wordlist-Autohex-Deable | | Deaktiver konvertering av $ hex [] fra ordlisten |
-P, -Separator | Røye | Separator Char for hashlister og outfile | -p:
--stdout | | Ikke knekk en hasj, i stedet bare skriv kandidater |
--vis | | Sammenlign hashlist med potfile; Vis sprukne hasj |
--venstre | | Sammenlign hashlist med potfile; Vis ukrakkede hasj |
--Brukernavn | | Aktiver ignorering av brukernavn i Hashfile |
--Fjern | | Aktiver fjerning av hasj når de er sprukket |
--Fjern-Timer | Num | Oppdater input hash -fil hver x sekunder | -Fjern-timer = 30
--Potfile-deable | | Ikke skriv Potfile |
--Potfile-Path | Fil | Spesifikk vei til Potfile | --PotFile-Path = min.gryte
--koding-fra | Kode | Tvinge intern ordliste som koder fra x | -ENCODING-FROM = ISO-8859-15
--koding til | Kode | Tvinge intern ordliste som koder for x | -ENCODING-TO = UTF-32LE
--Debug-Mode | Num | Definerer feilsøkingsmodus (Hybrid bare ved å bruke regler) | --Debug-Mode = 4
--Debug-fil | Fil | Utgangsfil for feilsøkingsregler | --Debug-fil = bra.Logg
--induksjonsdir | Dir | Spesifiser induksjonskatalogen som skal brukes for loopback | --induksjon = induksjoner
--outfile-check-dir | Dir | Spesifiser Outfile -katalogen som skal overvåkes for sletter | --outfile-check-dir = x
--loggfil-deable | | Deaktiver logfilen |
--HCCAPX-Message-Pair | Num | Last bare meldingspar fra HCCAPX Matching X | --HCCAPX-Message-Pair = 2
--Nonce-feil-korreksjoner | Num | BF -størrelsesområdet for å erstatte APs nonce siste byte | -Ikke-feilkorrigeringer = 16
--Tastatur-layout-kartlegging | Fil | Kartleggingstabell for tastaturoppsett for spesielle hash-modes | --KeyB = tysk.HCKMAP
--Truecrypt-keyfiles | Fil | Keyfiles å bruke, atskilt med komma | -TRUECRYPT-KEYF = x.png
--veracrypt-keyfiles | Fil | Keyfiles å bruke, atskilt med komma | -VeraCrypt-Keyf = x.tekst
--Veracrypt-Pim | Num | Veracrypt Personal Iterations Multiplier | -VeraCrypt-Pim = 1000
-B, -Benchmark | | Kjør referanseindeks for utvalgte hash-modes |
--Benchmark-all | | Kjør målestokk for alle hash -modes (krever -b) |
--bare hastighet | | Returner forventet hastighet på angrepet, og avslutter deretter |
--bare fremdrift | | Returner ideell fremgang trinnstørrelse og tid til prosess |
-C,-Sement-size | Num | Setter størrelse i MB til hurtigbuffer fra WordFile til X | -C 32
--Bitmap-min | Num | Setter minimumsbiter som er tillatt for bitmaps til x | --bitmap-min = 24
--bitmap-max | Num | Setter maksimale biter som er tillatt for bitmaps til x | --bitmap-max = 24
--CPU-Affinity | Str | Låser til CPU -enheter, atskilt med komma | --CPU-affinitet = 1,2,3
--Eksempelhash | | Vis et eksempel hash for hver hash-modus |
-I, --Opencl-Info | | Vis info om oppdagede OpenCL -plattformer/enheter | -JEG
--OpenCL-plattformer | Str | OpenCL -plattformer å bruke, atskilt med komma | --Opencl-platforms = 2
-D,-Opencl-enheter | Str | OpenCL -enheter som skal brukes, atskilt med komma | -D 1
-D,-Opencl-device-typer | Str | OpenCL-enhetstyper som skal brukes, atskilt med komma | -D 1
--OpenCL-vektorbredde | Num | Overstyr OpenCL vektorbredde manuelt til x | --Opencl-Vector = 4
-O, --optimalisert-kernel-aktivering | | Aktiver optimaliserte kjerner (begrenser passordlengde) |
-W,-Workload-Profile | Num | Aktiver en spesifikk arbeidsmengdeprofil, se basseng nedenfor | -W 3
-n, --kernel-Accel | Num | Manuell arbeidsbelastning, sett ytre trinnstørrelse til x | -n 64
-u, --kernel-loops | Num | Manuell arbeidsbelastning, sett innerloop trinnstørrelse til x | -u 256
-T, --kernelt-tegninger | Num | Manuell arbeidsmengdeinnstilling, sett trådtelling til x | -T 64
-S, -Skip | Num | Hopp over x ord fra starten av | -S 1000000
-L, -Limit | Num | Begrens X -ord fra starten + hoppet over ord | -L 1000000
--KeySpace | | Vis KeySpace Base: Mod Values ​​and Quit |
-J,-Rule-venstre | Regel | Enkelt regel brukt på hvert ord fra venstre ordliste | -j 'C'
-K,-Regel-høyre | Regel | Enkelt regel brukt på hvert ord fra høyre ordliste | -k '^-'
-R,-Rules-fil | Fil | Flere regler anvendt på hvert ord fra Wordlists | -r regler/best64.regel
-G,-Generate-Rules | Num | Generere x tilfeldige regler | -g 10000
--generere-rules-func-min | Num | Force Min X -funksjoner per regel |
--generere-rules-func-max | Num | Force Max X -funksjoner per regel |
--generere-rules-seed | Num | Force RNG frø satt til x |
-1,--Custom-Charset1 | CS | Brukerdefinert charset ?1 | -1 ?l?d?u
-2,--Custom-Charset2 | CS | Brukerdefinert charset ?2 | -2 ?l?d?s
-3,--Custom-Charset3 | CS | Brukerdefinert charset ?3 |
-4,--Custom-Charset4 | CS | Brukerdefinert charset ?4 |
-I, -Increment | | Aktiver maskeøkningsmodus |
--Inkrement-min | Num | Startmaske øker på x | -Increment-min = 4
--Inkrement-Max | Num | Stoppmaske øker på x | -Increment-Max = 8
-S,-sakte-stans | | Aktiver tregere (men avanserte) kandidatgeneratorer |
--Hjerne-server | | Aktiver Brains Server |
-Z,-Brain-Client | | Aktiver hjerneklient, aktiverer -S |
--hjerneklientfunksjoner | Num | Definer hjerneklientfunksjoner, se nedenfor | -Brain-Client-funksjoner = 3
--hjerne-vert | Str | Brain Server Host (IP eller domene) | -Brain-host = 127.0.0.1
--hjerneport | Port | Brain Server Port | -Brain-Port = 13743
--Hjernepassord | Str | Brains Server Authentication Password | -Brain-Password = BZFHCVGUSJRQ
--hjerne-økt | Hex | Overstyrer automatisk beregnet hjerneøkt | -Brain-Session = 0x2AE611DB
--hjerne-session-whitelist | Hex | Tillat kun økte økter, atskilt med komma | -Brain-Session-Whitelist = 0x2AE611DB

Hash -modus:

Vi vil se mer enn tusen hasjmodus her. Disse er av interesse nå.

137xy | Veracrypt | Full-Disk Encryption (FDE)
X | 1 = PBKDF2-HMAC-RIPEMD160 | Full-Disk Encryption (FDE)
X | 2 = PBKDF2-HMAC-SHA512 | Full-Disk Encryption (FDE)
X | 3 = PBKDF2-HMAC-Whirlpool | Full-Disk Encryption (FDE)
X | 4 = PBKDF2-HMAC-RIPEMD160 + BOOT-MODE | Full-Disk Encryption (FDE)
X | 5 = PBKDF2-HMAC-SHA256 | Full-Disk Encryption (FDE)
X | 6 = PBKDF2-HMAC-SHA256 + BOOT-MODE | Full-Disk Encryption (FDE)
X | 7 = PBKDF2-HMAC-Streebog-512 | Full-Disk Encryption (FDE)
Y | 1 = XTS 512 Bit Pure AES | Full-Disk Encryption (FDE)
Y | 1 = XTS 512 Bit Pure Serpent | Full-Disk Encryption (FDE)
Y | 1 = XTS 512 Bit Pure TwoFish | Full-Disk Encryption (FDE)
Y | 1 = XTS 512 Bit Pure Camellia | Full-Disk Encryption (FDE)
Y | 1 = XTS 512 Bit Pure Kuznechik | Full-Disk Encryption (FDE)
Y | 2 = XTS 1024 Bit Pure AES | Full-Disk Encryption (FDE)
Y | 2 = XTS 1024 Bit Pure Serpent | Full-Disk Encryption (FDE)
Y | 2 = XTS 1024 Bit Pure TwoFish | Full-Disk Encryption (FDE)
Y | 2 = XTS 1024 Bit Pure Camellia | Full-Disk Encryption (FDE)
Y | 2 = XTS 1024 Bit Pure Kuzyechik | Full-Disk Encryption (FDE)
Y | 2 = XTS 1024 Bit Cascaded Aes-Twofish | Full-Disk Encryption (FDE)
Y | 2 = XTS 1024 Bit Cascaded Camellia-Kuznechik | Full-Disk Encryption (FDE)
Y | 2 = XTS 1024 Bit Cascaded Camellia-Serpent | Full-Disk Encryption (FDE)
Y | 2 = XTS 1024 Bit Cascaded Kuznechik-Aes | Full-Disk Encryption (FDE)
Y | 2 = XTS 1024 Bit Cascaded Kuznechik-Twofish | Full-Disk Encryption (FDE)
Y | 2 = XTS 1024 Bit Cascaded Serpent-Aes | Full-Disk Encryption (FDE)
Y | 2 = XTS 1024 Bit Cascaded TwoFish-Serpent | Full-Disk Encryption (FDE)
Y | 3 = XTS 1536 Bit All | Full-Disk Encryption (FDE)
14600 | Luks | Full-Disk Encryption (FDE)
16700 | Filevault 2 | Full-Disk Encryption (FDE)
18300 | Apple File System (APFS) | Full-Disk Encryption (FDE)

Angrepsmodus:

# | Modus
===+======
0 | Rett
1 | Kombinasjon
3 | Ren styrke
6 | Hybrid ordliste + maske
7 | Hybridmaske + ordliste

Vi har alle tre ting Hashcat -behov, la oss få det til ved å bruke følgende kommando:

ubuntu@ubuntu: ~ $ sudo hashcat -a 0 -m 13722 binary_data wordlist.TXT -Force
Hashcat (v5.1.0) Starter ..
Hashes: 1 fordøyelser; 1 unike fordøyelser, 1 unike salter
Bitmaps: 16 biter, 65536 oppføringer, 0x0000ffff maske, 262144 byte, 5/13 roterer
Regler: 1
Gjeldende optimalisatorer:
* Null-byte
* Enkelthash
* Single-Salt
* Slow-Hash-Simd-Loop
* Bruker-64-bit
Minimum passordlengde støttet av kjernen: 0
Maksimal passordlengde støttet av kjernen: 64
* Enhet nr. 1: build_opts '-cl-std = cl1.2 -i opencl -i/usr/share/hashcat/opencl -d
Local_mem_type = 2 -d Vendor_id = 64 -d cuda_arch = 0 -d amd_rocm = 0 -d vect_size = 4 -d
Enhet_type = 2
-D dgst_r0 = 0 -d dgst_r1 = 1 -d dgst_r2 = 2 -d dgst_r3 = 3 -d dgst_elem = 16 -d
KERN_TYPE = 6222 -D _UNROLL '
[Logging clang-alternativer] "/usr/bin/ld" "--h-ramme-hdr" "-m" "ELF_X86_64" "-skort"
"-o" "/root/.Cache/POCL/Ukassa/TempFile-70-00-EB-2C-AA.så "" -l/usr/lib/gcc/x86_64
-Linux-GNU/9 "" -L/USR/LIB/GCC/X86_64-LINUX-GNU/9/…/…/…/x86_64-LINUX-GNU ”
"-L/usr/lib/gcc/x86_64-linux-gnu/9/…/…/…/…/lib64" "-l/lib/x86_64-linux-gNu"
"-L/lib/…/lib64" "-l/usr/lib/x86_64-linux-gnu" "-l/usr/lib/.../lib64"
"-L/usr/lib/x86_64-Linux-GNU/…/…/lib64" "-l/usr/lib/gcc/x86_64-linux-GNU/9/
…/…/… "" -L/usr/lib/llvm-6.0/bin/…/lib "" -l/lib "" -l/usr/lib "
"/rot/.Cache/POCL/Ukassert/TempFile-B1-44-3F-F1-67.så.o "" -lm "
Ordbok cache hit:
* Filnavn ...: Wordlist.tekst
* Passord.: 600000
* Byte ...: 6000000
* KeySpace ...: 600000
[Logging Clang Options] "/usr/bin/ld" "--h-ramme-hdr" "-m" "-l/usr/lib/llvm-6.0/bin/…/lib "
"-L/lib" "-l/usr/lib" "/root/.Cache/POCL/Ukassa/TempFile-E2-BA-DB-1F-BA.så.o "" -lm "" -lm "
"-lgcc" "-som trengte" "-lgcc_s" "-ingen-som-nødvendig" "-lc" "-lgcc" "-som-behov" "-lgcc_s"
"-Ingen-som-behov"

Binary_data: Tokyo2002

Økt ...: hashcat
Status ...: Sprukket
Hash.Type ...: VeraCrypt PBKDF2-HMAC-SHA512 + XTS 1024 BIT
Hash.Mål…: binary_data
Tid.Startet…: Tor 11 juni 20:38:17 2020 (11 sek)
Tid.Estimert…: Thu 11 juni 20:38:28 2020 (0 sek)
Gjett.Base ...: fil (ordliste.tekst)
Gjett.Kø ...: 1/1 (100.00%)
Hastighet.#1…: 0 H/S (0.57ms) @ Accel: 32 løkker: 32 THR: 1 VEC: 4
Gjenopprettet…: 1/1 (100.00%) fordøyelser, 1/1 (100.00%) salter
Fremgang ...: 600000/60000 (100.00%)
Avvist…: 0/60000 (0.00%)
Restaurere.Poeng…: 0/60000 (0.00%)
Restaurere.Under.#1…: Salt: 0 Forsterker: 0-1 iterasjon: 499968-499999
Kandidater.#1…: Mango 23232 -> WrongPassword23

Vi har passordet Tokyo2002.

Krypter en kjøretur med Luks:

La oss se på hvordan du krypterer en USB ved hjelp av Luks -kryptering:

Først av alt installer CryptSetup-LUKS-pakken ved å bruke følgende kommando:

ubuntu@ubuntu: ~ $ sudo apt install cryptsetup-luks

Bruk nå følgende kommando for å sette opp ønsket partisjon for kryptering:

ubuntu@ubuntu: ~ $ cryptsetup -y -v luksformat /dev /xdc

XDC er partisjonsnavnet. Hvis du ikke vet at partisjonsnavnet bruker "Fdisk -L".

Lag nå en logisk enhetsmapperenhet montert for å kryptere Luks-partisjonen ved hjelp av:

ubuntu@ubuntu: ~ $ cryptsetup luksopen /dev /xdc

Det vil be om en passordfrase. Skriv inn en sterk kombinasjon av bokstaver, tall og spesialtegn som passord, og du er god til å gå.

Sprekker Luks -kryptering:

Nå for å knekke Luks -volumer med hashcat, må du mate hashcat med en riktig binær datafil. Vi kan trekke ut disse dataene ved å bruke følgende kommando:

ubuntu@ubuntu: ~ $ sudo dd if =/dev/sdb1 av = header.Luks BS = 512 telling = 4097
konv = NoError, synkroniseringsstatus = fremgang

Dette vil lage en 2MB -fil som inneholder alle dataene Hashcat -behovene for sprekker.

Hashcat:

La oss se på hashcat -syntaks:

ubuntu@ubuntu: ~ $ sudo hashcat -a -m

Nå har vi den binære filen og ordlisten, men vi kjenner ikke angrepstype og typeofencryption. For denne informasjonen vil vi se på Hashcat -hjelp.

Vi fant ut begge:

typeofencryption:

14600 | Luks | Full-Disk Encryption (FDE)
16700 | Filevault 2 | Full-Disk Encryption (FDE)
18300 | Apple File System (APFS) | Full-Disk Encryption (FDE)

angrepstype:

# | Modus
===+======
0 | Rett
1 | Kombinasjon
3 | Ren styrke

Der vi går, vil vi begynne å sprekke ved å skrive følgende kommando:

ubuntu@ubuntu: ~ $ sudo hashcat -a 0 -m 14600 header.Luks ordliste.tekst
Hashcat (v5.1.0) Starter ..
Enhet nr. 1: build_opts '-cl-std = cl1.2 -i opencl -i/usr/share/hashcat/opencl -d
Local_mem_type = 2 -d Vendor_id = 64 -d cuda_arch = 0 -d amd_rocm = 0 -d vect_size = 4 -d
Enhet_type = 2 -d dgst_r0 = 0 -d dgst_r1 = 1 -d dgst_r2 = 2 -d dgst_r3 = 3 -d dgst_elem = 16
-D KERN_TYPE = 6222 -D _UNROLL '
[Logging clang-alternativer] "/usr/bin/ld" "--h-ramme-hdr" "-m" "ELF_X86_64" "-skort"
"-o" "/root/.Cache/POCL/Ukassa/TempFile-70-00-EB-2C-AA.så"
"-L/usr/lib/gcc/x86_64-linux-gnu/9" "-l/usr/lib/gcc/x86_64-linux-GNU/9/…/…/…//..
X86_64-Linux-GNU "" -l/usr/lib/gcc/x86_64-linux-gnu/9/…/…/…/…/lib64 "" -l/lib/
X86_64-Linux-GNU "" -l/lib/.../lib64 "" -l/usr/lib/x86_64-linux-gnu "" -l/usr/lib/...//////////..
lib64 "" -l/usr/lib/x86_64-linux-gnu/…/…/lib64 "" -l/usr/lib/gcc/x86_64-linux-gnu/9/
…/…/… "" -L/usr/lib/llvm-6.0/bin/…/lib "" -l/lib "" -l/usr/lib ""/root/.cache/pocl/
UNCACED/TEMPFILE-B1-44-3F-F1-67.så.o "" -lm "
Ordbok cache hit:
* Filnavn ...: Wordlist.tekst
* Passord.: 50
* Byte ...: 500
* KeySpace ...: 50
[Logging Clang Options] "/usr/bin/ld" "--h-ramme-hdr" "-m"
"-L/usr/lib/llvm-6.0/bin/…/lib "" -l/lib "" -l/usr/lib ""/root/.cache/pocl/
UNCACHED/TEMPFILE-E2-BA-DB-1F-BA.så.o "" -lm "" -lm "" -lgcc ""-som-behov "
"-lgcc_s" "-ingen-som-nødvendig" "-lc" "-lgcc" "-som-nødvendig" "-lgcc_s" "-ingen-som-behov"

Overskrift.Luks: Tokyo2002

Økt ...: hashcat
Status ...: Sprukket
Hash.Type ...: Luks
Hash.Mål…: header.Luks
Tid.Startet…: Tor 11 juni 20:38:17 2020 (11 sek)
Tid.Estimert…: Thu 11 juni 20:38:28 2020 (0 sek)
Gjett.Base ...: fil (ordliste.tekst)
Gjett.Kø ...: 1/1 (100.00%)
Hastighet.#1…: 0 H/S (0.57ms) @ Accel: 32 løkker: 32 THR: 1 VEC: 4
Gjenopprettet…: 1/1 (100.00%) fordøyelser, 1/1 (100.00%) salter
Fremgang ...: 50/50 (100.00%)
Avvist…: 0/50 (0.00%)
Restaurere.Punkt…: 0/50 (0.00%)
Restaurere.Under.#1…: Salt: 0 Forsterker: 0-1 iterasjon: 499968-499999
Kandidater.#1…: Mango 23232 -> WrongPassword23

Vi har passordet Tokyo2002.

Tilpassede ordlister som bruker knase:

Å lage en ordliste på en måte du ønsker er en god ferdighet å ha i beltet. Det hjelper mye i brute force og ordboksangrep. Et av verktøyene som kan brukes til å lage en tilpasset ordliste er knase.

ubuntu@ubuntu: ~ $ crunch
Bruk: knase [alternativer]
  • min: Minimum lengde
  • maks: maksimal lengde
  • Alternativer: Ulike alternativer vi finner på mannens side

Alternativer:

b Maks størrelse
c: antall linjer
d: Begrens antall dupliserte tegn
e: STOPP INCase en viss streng når når
f: Bruk charset.LST -fil å generere fra
Jeg: inverter ordre
O: Utgang til fil spesifisert
r: Fortsett en tidligere økt
s: Spesifiser strengen med hvilken ordliste vil begynne
t: Sett mønster ved hjelp av @,%^ (små bokstaver, store bokstaver, tall, spesialtegn samtidig)
z: komprimere utgangsfilen

La oss anta at vi må generere en ordliste med minimumstegn 6 og maksimale tegn 8, vi vil bruke følgende kommando og lagre utdataene til utdata.tekst:

ubuntu@ubuntu: ~ $ crunch 6 8 -o output.tekst

Crunch vil nå generere følgende datamengde: 1945860473024 byte

1855717 MB
1812 GB
1 TB
0 Pb

Crunch vil nå generere følgende antall linjer: 217167790528

La oss anta et annet scenario der vi vet at målets bursdag er 2002, og han bruker vanligvis et passord på 9 tegn som slutter med bursdagen hans. Vi vil bruke følgende kommando for å generere en ordliste som samsvarer med alle disse egenskapene og lagrer den i en fil som heter Wordlist.tekst.

ubuntu@ubuntu: ~ $ crunch 9 9 -t @@@@@ 2002 -o Wordlist.tekst

Crunch vil nå generere følgende datamengde: 118813760 byte

113 MB
0 GB
0 tb0 pb

Crunch vil nå generere følgende antall linjer: 11881376

Crunch: 100% fullført generasjonsutgang

ubuntu@ubuntu: ~ $ ls -la wordlist.tekst
-RW-RW-RW- 1 Azad Azad 118813760 13. juni 14:43 Wordlist.tekst

Å vite hvordan du skaper de riktige ordlistene for oppgaven din, er en ferdighet som kan spare ens mye tid i ordbokangrep.

Konklusjon:

Hvis du prøver å velge mellom krypteringsprogramvare, vil ikke noen krypteringsprogramvare som VeraCrypt ikke la noen åpne stasjonene dine uten å legge inn et passord selv om den ondsinnede personen er logget inn, mens du bruker litt programvare som BitLocker for Windows og Filevault2 for Apple lager alt Filene dine er synlige hvis brukeren er logget inn. Å kryptere stasjonene dine er en god ting, men å bruke svake, gjentatte eller gjettbare passord for dem vil gjøre dem enkle å knekke. Nesten hver krypteringstype kan bli sprukket, avhengig av passordlengde og kompleksitet. Sprekker kryptering av stasjoner ved hjelp av en tilpasset ordliste vil spare en mye tid og vil hjelpe deg med å gjøre oppgaven effektivt. Å lage gode ordlister er en kunst, mange verktøy er tilgjengelige som knase, cewl osv. Som vil hjelpe deg å gjøre det. Så er det noen veldig gode verktøy der ute som Hashcat, JohnTheripper som kan bryte enhver form for kryptering hvis de blir utstyrt med riktig binærfil og riktig ordliste. Sammenlignet med John, kan Hashcat benytte seg av GPUer og er mye raskere med en hastighet på 882 C/S over John som har en hastighet på 54.8 C/S.