Ključne točke
1. Umjetnost ofenzivne forenzike: Okretanje situacije
Mreža je i uvijek će biti najprivlačnija arena za hakere.
Preokretanje scenarija. Ofenzivna forenzika uključuje korištenje forenzičkih tehnika ne za obranu, već za napad. Riječ je o razumijevanju načina na koji forenzički alati i istražitelji rade kako bi se bolje izbjeglo otkrivanje i održao pristup. Ovaj pristup omogućava napadačima da anticipiraju reakcije i prilagode svoje akcije.
Razumijevanje neprijatelja. Proučavanjem forenzičkih metodologija, procedura odgovora na incidente i uobičajenih sigurnosnih alata, napadači mogu identificirati ranjivosti u istraživačkom procesu. Ovo znanje može se iskoristiti za stvaranje učinkovitijih i neprimjetnijih napada. Na primjer:
- Poznavanje artefakata koji se obično analiziraju može pomoći napadačima da izbjegnu ostavljanje tih tragova.
- Razumijevanje kako radi forenzika memorije može pomoći napadačima da kreiraju shellcode koji izbjegava otkrivanje.
Proaktivno izbjegavanje. Ofenzivna forenzika ne odnosi se samo na reagiranje na istrage, već i na proaktivno oblikovanje digitalnog okruženja kako bi se otežale istrage. To može uključivati:
- Postavljanje lažnih dokaza kako bi se zavarali istražitelji
- Manipuliranje zapisima kako bi se prikrila aktivnost
- Korištenje enkripcije za zaštitu osjetljivih podataka
2. Keylogging: Klasična tehnika za moderne prijetnje
Bezbroj puta tijekom penetracijskih testova, mi (autori) smo trebali izraditi TCP klijent za testiranje usluga, slanje beskorisnih podataka, fuzzing ili obavljanje raznih drugih zadataka.
Zahvaćanje osjetljivih informacija. Keylogging ostaje izuzetno učinkovita metoda za prikupljanje vjerodajnica, razgovora i drugih osjetljivih podataka. Snimanjem pritisaka tipki, napadači mogu dobiti pristup računima, sustavima i mrežama.
PyWinHook za keylogging na Windowsima:
- Iskorištava nativnu Windows funkciju SetWindowsHookEx za hvatanje događaja s tipkovnice.
- Pruža informacije o aktivnom prozoru i procesu povezanom s svakim pritiskom tipke.
- Omogućava hvatanje i ASCII znakova i posebnih tipki.
Iznad osnovnih pritisaka tipki. Moderni keyloggeri također mogu hvatati podatke s međuspremnika, pružajući pristup lozinkama, brojevima kreditnih kartica i drugim osjetljivim informacijama koje korisnici kopiraju i lijepe. Ovo proširuje opseg potencijalnih curenja podataka.
3. Snimke zaslona: Hvatanje vizualne inteligencije
Programeri imaju niz alata trećih strana za izradu umreženih poslužitelja i klijenata u Pythonu, ali osnovni modul za sve te alate je socket.
Vizualna potvrda. Snimke zaslona pružaju vizualnu potvrdu aktivnosti korisnika, hvatajući slike, video okvire i druge osjetljive podatke koji možda nisu dostupni drugim sredstvima. Ovo može biti posebno korisno za prikupljanje dokaza o specifičnim radnjama ili ponašanjima.
PyWin32 za hvatanje snimaka zaslona:
- Koristi Windows Graphics Device Interface (GDI) za hvatanje cijelog zaslona.
- Pruža način za hvatanje slika, video okvira ili drugih osjetljivih podataka.
- Može se koristiti za praćenje aktivnosti korisnika i prikupljanje informacija.
Iznad jednostavnih snimaka zaslona. Napredne tehnike snimanja zaslona mogu uključivati:
- Hvatanje snimaka zaslona u redovitim intervalima kako bi se stvorila vremenska linija aktivnosti korisnika.
- Aktiviranje snimaka zaslona na temelju specifičnih događaja, poput otvaranja određenih aplikacija.
- Korištenje optičkog prepoznavanja znakova (OCR) za izdvajanje teksta iz snimaka zaslona.
4. Izvršavanje shellcode-a: Udaljena injekcija koda
Mreža je i uvijek će biti najprivlačnija arena za hakere.
Izravno izvršavanje koda. Izvršavanje shellcode-a omogućava napadačima da injektiraju i pokreću proizvoljni kod na ciljanom sustavu bez dodirivanja datotečnog sustava. Ovo se može koristiti za uspostavljanje povratne ljuske, implementaciju dodatnog zloćudnog softvera ili obavljanje drugih zlonamjernih aktivnosti.
ctypes za izvršavanje shellcode-a:
- Koristi ctypes modul za alociranje memorije, kopiranje shellcode-a u memoriju i stvaranje pokazivača funkcije na shellcode.
- Omogućava izvršavanje sirovog shellcode-a bez pisanja na disk.
- Može se koristiti za zaobilaženje sigurnosnih mjera koje se oslanjaju na skeniranje datoteka.
Iznad osnovnog shellcode-a. Napredne tehnike shellcode-a mogu uključivati:
- Korištenje koda neovisnog o poziciji (PIC) kako bi se osiguralo da shellcode može raditi na bilo kojoj adresi u memoriji.
- Enkripciju shellcode-a kako bi se izbjeglo otkrivanje.
- Korištenje višestepenog shellcode-a za preuzimanje i izvršavanje većih paketa.
5. Otkrivanje sandboxa: Izbjegavanje automatske analize
Možda ćete ga koristiti za prosljeđivanje prometa kako biste se prebacivali s hosta na host, ili kada procjenjujete softver temeljen na mreži.
Izbjegavanje automatskih obrana. Otkrivanje sandboxa uključuje identificiranje i izbjegavanje automatskih analitičkih okruženja koja koriste antivirusni softver i istraživači sigurnosti. Otkrivanjem sandbox okruženja, napadači mogu spriječiti analizu i otkrivanje svog zloćudnog softvera.
Tehnike za otkrivanje sandboxa:
- Praćenje korisničkog unosa: Provjera aktivnosti tipkovnice i miša.
- Otkrivanje artefakata virtualnih mašina: Traženje specifičnih datoteka, ključeva registra ili procesa povezanih s virtualnim mašinama.
- Analiza vremena rada sustava: Usporedba vremena rada sustava s posljednjim korisničkim unosom.
Iznad osnovnog otkrivanja. Napredne tehnike otkrivanja sandboxa mogu uključivati:
- Korištenje napada temeljenih na vremenu za otkrivanje okruženja virtualnih mašina.
- Provjeru prisutnosti specifičnih sigurnosnih alata ili procesa.
- Analizu hardverske konfiguracije sustava.
6. Enkripcija: Osiguranje exfiltriranih podataka
Više puta sam naišao na poslužitelje koji nemaju instaliran netcat, ali imaju Python.
Zaštita osjetljivih informacija. Enkripcija je ključna za zaštitu osjetljivih podataka tijekom exfiltracije. Enkripcijom podataka prije nego što napuste ciljani sustav, napadači mogu spriječiti neovlašteni pristup informacijama čak i ako su presretnute.
PyCryptodomeX za enkripciju:
- Pruža razne algoritme enkripcije, uključujući AES i RSA.
- Omogućava stvaranje hibridnih sustava enkripcije koji kombiniraju brzinu simetrične enkripcije s sigurnošću asimetrične enkripcije.
- Može se koristiti za enkripciju datoteka, mrežnog prometa ili drugih osjetljivih podataka.
Iznad osnovne enkripcije. Napredne tehnike enkripcije mogu uključivati:
- Korištenje steganografije za skrivanje enkriptiranjih podataka unutar slika ili drugih datoteka.
- Korištenje višestrukih slojeva enkripcije za povećanje sigurnosti.
- Korištenje prolaznih ključeva kako bi se osiguralo da podaci ne mogu biti dekriptirani čak i ako su ključevi napadača kompromitirani.
7. Metode exfiltracije: Uklapanje kako bi se izašlo
Mreža je i uvijek će biti najprivlačnija arena za hakere.
Neprimjetnost i izbjegavanje. Odabir prave metode exfiltracije ključan je za izbjegavanje otkrivanja. Napadači moraju uzeti u obzir sigurnosni položaj ciljne mreže i odabrati metodu koja se uklapa u normalan promet.
Uobičajene metode exfiltracije:
- E-mail: Slanje enkriptiranjih podataka kao privitaka ili unutar tijela e-mailova.
- Prijenos datoteka: Korištenje FTP-a ili drugih protokola za prijenos datoteka za učitavanje enkriptiranjih podataka na udaljeni poslužitelj.
- Web poslužitelj: Objavljivanje enkriptiranjih podataka na web poslužitelju koristeći HTTP ili HTTPS.
Iznad osnovne exfiltracije. Napredne tehnike exfiltracije mogu uključivati:
- Korištenje steganografije za skrivanje enkriptiranjih podataka unutar slika ili drugih datoteka.
- Korištenje tajnih kanala za prijenos podataka putem naizgled bezopasnih protokola.
- Korištenje distribuirane exfiltracije za širenje podataka na više odredišta.
Zadnje ažurirano:
Recenzije
Black Hat Python dobiva mješovite kritike. Mnogi hvale njegove praktične primjere i uvide u korištenje Pythona za hakiranje i testiranje penetracije. Čitatelji cijene praktičan pristup i jasna objašnjenja složenih koncepata. Ipak, neki kritiziraju korištenje zastarjelih verzija Pythona i oslanjanje na sadržaj specifičan za Windows. Knjiga se preporučuje onima koji već imaju iskustva s Pythonom, ali može biti izazovna za početnike. Sve u svemu, smatra se vrijednim resursom za buduće etičke hakere i stručnjake za sigurnost, unatoč nekim ograničenjima.
Similar Books




