Linux- og Unix-baserede operativsystemer har været kernen i områderne informationssikkerhed, netværkssikkerhed, kryptografi osv. De kommer med en bred vifte af værktøjer beregnet til cybersikkerhedsformål.
Lad os tage et kig på tre sådanne værktøjer: Aircrack-ng, Jack The Ripper og Radare2.
Aircrack-ng Suite
Aircrack-ng-pakken er måske det mest udbredte sæt af WiFi-netværkssniffing og adgangskodefangstværktøjer. Det er beregnet til at knække IEEE 802.11 protokol trådløse netværksadgangskoder, som for det meste er beskyttet af Wifi Protected Access (WPA) eller Wifi Protected Access 2 (WPA2) standarder og autentificeret af Pre-Shared Key (PSK) godkendelsesmetode.
Det tilbyder separate programmer til at overvåge status for netværksenheder, fange pakker og dumpe i filer, knække adgangskoder osv.
Bemærk, at cracking WPA/WPA2 ved hjælp af krypto-algoritmer er blevet fundet af forskere som næsten umuligt. Derfor er måden at knække WPA/WPA2 med programmer som aircrack-ng på Brute Force og kræver en ordbog med adgangskoder for at knække det. Det betyder, at den kun kan knække adgangskoden, hvis adgangskoden er et ordbogsord.
Du kan nemt installere Aircrack-ng på dit system ved hjælp af installationsscriptet fra packagecloud.io. Åbn terminalen, og kør følgende kommandoer baseret på din Linux OS-type.
På Debian-baserede distributioner, kør følgende kommando:
curl -s //packagecloud.io/install/repositories/aircrack-ng/release/script.deb.sh | sudo bash
For Red-hat Package Manager (RPM), kør følgende kommando:
curl -s //packagecloud.io/install/repositories/aircrack-ng/release/script.rpm.sh | sudo bash
Lad os nu prøve at knække adgangskoden til et lokalt Wi-Fi-netværk ved hjælp af Aircrack-ng.
Kør først kommandoen iwconfig
for at finde navnet på dit trådløse netværksinterface.
iwconfig
Her, wlp2s0
er navnet på min trådløse grænseflade. ESSID, dvs. netværksnavnet er "tmp", som er navnet på det Wifi-netværk, jeg er tilsluttet.
Vi vil bruge luftmon-ng
kommando for at starte en netværksmonitorgrænseflade på wlp2s0
.
sudo airmon-ng start wlp2s0
Kig efter linjen i slutningen for at finde skærmtilstandsgrænsefladen. I eksemplet ovenfor er det man0
. Vi begynder nu at fange netværkspakker ved at køre airodump-ng
på man0
.
sudo airodump-ng mon0 -w log
Den viser en skærm over netværkspakker fanget fra forskellige netværk. Det -w log
del er til at gemme netværkspakkerne i logfiler. Præfikset for logfilerne vil være den del, der er angivet efter -w, i dette tilfælde 'log'.
For at programmet kan fange hash-nøglen til adgangssætningen, skal et WPA-håndtryk finde sted på netværket, dvs. en bruger skal forsøge at oprette forbindelse til det. Brugeren kan selv afbryde sin Wifi og oprette forbindelse til den igen. I øverste højre hjørne nu, giver den besked om, at et WPA-håndtryk er blevet fanget.
Tryk nu på Ctrl + C
at afslutte lossepladsen. Du kan se de genererede logfiler i den aktuelle mappe.
Næste og sidste trin er at køre aircrack-ng med en ordbog for at se, hvilket ord der matcher den opsnappede hash-nøgle fra håndtrykket.
aircrack-ng log-01.cap -w tmpdict.txt
Her log-01.cap er logfilen genereret af airodump-ng
kommando og tmpdict.txt er ordbogsfilen. Adskillige store ordbøger er tilgængelige online, som kan downloades og bruges her.
For at vælge et målnetværk skal du indtaste indeksnummeret for netværket fra listen over netværk vist på skærmen.
Hvis en nøgle matches fra i ordbogen, stopper den og viser følgende meddelelse.
Det er indlysende, at i tilfælde af større ordbogsfiler, vil programmet tage længere tid at køre, da det tjekker for hver post i ordbogen.
Som nævnt før kan adgangskoden kun knækkes, hvis den findes i ordbogsfilen. WPA-sikkerheden er stærk nok til, at brug af enhver kryptoalgoritme ikke vil muliggøre krakning af adgangskode. Derfor er det en god praksis at have en stærk lang adgangskode med flere specialtegn på din Wifi-enhed, så enhver form for adgangskodeknækaktivitet aldrig lykkes.
John The Ripper
John the Ripper er et værktøj, der bruges til at knække svage Unix-adgangskoder. Det er et meget nemt at bruge værktøj, der påberåbes på adgangskodefiler. Den kører i tre tilstande.
Enkelt tilstand
Kontrollerer alle GECOS-felter for adgangskode, dvs. kontroller for adgangskode i brugerkontooplysninger; brugernavn, fornavn, efternavn osv.
sudo john --single /etc/shadow
Ordlistetilstand
Kontrollerer adgangskoden med hver post fra en ordlistefil (ordbog).
sudo john --wordlist=passlist.txt /etc/shadow
Her er adgangskoden til brugeren "bruger3" "admin". John var i stand til at knække det, fordi sætningen 'admin' var til stede i passlist.txt-filen.
Inkrementel tilstand
Tjek alle mulige kombinationer for et konfigureret område. Som standard tager den hensyn til alle tegn i ASCII-tegnsæt og alle længder fra 0 til 13. Det er overflødigt at sige, at afhængigt af det konfigurerede område, kan denne tilstand tage enorm lang tid at køre.
Konfigurationen for dette kan ændres i /etc/john/john.conf
fil.
sudo john --incremental /etc/shadow
Radare 2
Radare2 (alias r2) er et reverse engineering-værktøj til Linux. Den kan adskille, fejlsøge en eksekverbar binær fil med en enorm liste over muligheder for at manipulere data under kørsel.
Lad os se, hvordan man adskiller et meget lille C-program ved hjælp af r2. Bemærk, at en grundlæggende forståelse af assemblersprog er nødvendig for at bruge værktøjet.
Først skal du oprette et lille C-program i enten vim eller en hvilken som helst editor efter eget valg.
/*test.c*/ #include int main() { int i = 0; printf("%d\n", i); returner 0; }
Som du kan se, er alt, hvad dette program gør, at gemme cifferet 0 i en variabel og få adgang til variablen for at udskrive den.
Vi skal nu kompilere programmet.
gcc test.c -o test
En eksekverbar fil oprettes i den aktuelle mappe med navnet 'test'. Kør den for at se output '0'.
./prøve
Lad os installere r2 nu. Pakkenavnet i Ubuntu og lignende distributioner er radare2.
sudo apt installer radare2
Bemærk: For ældre Ubuntu-versioner (version 14.04 og derunder), skal du bruge apt-get
skal bruges i stedet for passende
.
Vi starter nu kommandoprompten r2 med vores eksekverbare fil, 'test'.
r2 test
Indtast for at få liste over underkommandoer ?
. For eksempel. for at få liste over underkommandoer til kommando -en
, gå ind en?
en?
Vi kører underkommandoen aa
, som vil analysere den komplette binære fil. Det vil ikke udsende noget. Men efter at have analyseret det binære, kan vi bruge p?
underkommandoer for at adskille koden.
Dernæst går vi til vigtigste
programmets funktion. Hvert eksekverbart C-program har vigtigste
fungere som udgangspunkt.
s vigtigste
Du kan se, at præfikset for prompt har ændret den aktuelle hukommelsesadresse, dvs. programmet søges nu til funktionsadressen vigtigste
.
Dernæst bruger vi underkommandoen pdf
, som vil udskrive adskillelsen af en funktion. Vi kalder det med sym.main
, som er navnet på hovedfunktionen i assemblersprog.
pdf sym.main
Som vi kan se på skærmbilledet ovenfor, har vi den komplette demontering af vores C-program. Vi kan nu analysere, hvad programmet laver ved at læse forsamlingen.
For eksempel, mov dword [rbp-0x4], 0x0
er tildeling af en værdi (0) til en hukommelsesplacering rbp – base pointer, 0x4 — Hukommelsesstørrelse påkrævet for et heltal.
Vi har ring til sym.imp.printf
, som udskriver indholdet af registeret eax
, dvs. værdien 0.
Der er mange flere muligheder for at manipulere og fejlfinde et programs flow i r2. Du kan prøve andre muligheder, som er vist med ?
kommando. For at gemme enhver log- eller adskillelsesoutput til en fil, kan du pipe outputtet som nedenfor:
pdf hoved > hoved.s
Dette var oversigten over nogle af de mest udbredte hackingværktøjer i Linux. Hvis du fandt denne side nyttig, så sørg for at dele den på dine foretrukne online-fællesskaber.