Searching...
Hrvatski
EnglishEnglish
EspañolSpanish
简体中文Chinese
FrançaisFrench
DeutschGerman
日本語Japanese
PortuguêsPortuguese
ItalianoItalian
한국어Korean
РусскийRussian
NederlandsDutch
العربيةArabic
PolskiPolish
हिन्दीHindi
Tiếng ViệtVietnamese
SvenskaSwedish
ΕλληνικάGreek
TürkçeTurkish
ไทยThai
ČeštinaCzech
RomânăRomanian
MagyarHungarian
УкраїнськаUkrainian
Bahasa IndonesiaIndonesian
DanskDanish
SuomiFinnish
БългарскиBulgarian
עבריתHebrew
NorskNorwegian
HrvatskiCroatian
CatalàCatalan
SlovenčinaSlovak
LietuviųLithuanian
SlovenščinaSlovenian
СрпскиSerbian
EestiEstonian
LatviešuLatvian
فارسیPersian
മലയാളംMalayalam
தமிழ்Tamil
اردوUrdu
Black Hat Python

Black Hat Python

Python Programming for Hackers and Pentesters
autor: Justin Seitz 2014 171 stranice
4.12
500+ ocjene
Slušaj
Try Full Access for 7 Days
Unlock listening & more!
Continue

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:

FAQ

What's "Black Hat Python: Python Programming for Hackers and Pentesters" about?

  • Focus on offensive security: The book delves into using Python for creating hacking tools, focusing on offensive security techniques.
  • Practical applications: It covers writing network sniffers, manipulating packets, and creating stealthy trojans, among other tasks.
  • Comprehensive guide: The book provides a step-by-step approach to building tools that can be used in real-world penetration testing scenarios.
  • Author's expertise: Written by Justin Seitz, known for his work in security analysis, the book leverages his extensive experience in the field.

Why should I read "Black Hat Python: Python Programming for Hackers and Pentesters"?

  • Learn from an expert: Justin Seitz is a seasoned security consultant, offering insights from his experience with Fortune 500 companies and law enforcement.
  • Hands-on approach: The book is practical, with exercises and examples that help readers apply what they learn immediately.
  • Expand your toolkit: It teaches how to create custom tools, which is invaluable for penetration testers and security professionals.
  • Stay updated: The book covers the latest techniques and tools, ensuring readers are equipped with current knowledge in cybersecurity.

What are the key takeaways of "Black Hat Python: Python Programming for Hackers and Pentesters"?

  • Python's versatility: Python is highlighted as a powerful language for security analysis and tool creation.
  • Custom tool development: Readers learn to write their own exploits and extend existing tools like Burp Suite.
  • Network and web hacking: The book covers essential skills for network sniffing, web application attacks, and privilege escalation.
  • Ethical hacking mindset: It emphasizes the importance of understanding both offensive and defensive security measures.

What are the best quotes from "Black Hat Python" and what do they mean?

  • "The difference between script kiddies and professionals is the difference between merely using other people’s tools and writing your own." This quote underscores the importance of creating custom tools to truly understand and master hacking techniques.
  • "When it comes to offensive security, your ability to create powerful tools on the fly is indispensable." It highlights the necessity of being adaptable and resourceful in cybersecurity.
  • "Learn how to extend the hacks and how to write your own exploits." This encourages readers to go beyond using existing tools and develop their own solutions.

How does "Black Hat Python" teach network sniffing and packet manipulation?

  • Raw sockets: The book explains how to use raw sockets to access low-level networking information, such as IP and ICMP headers.
  • Packet decoding: It covers decoding IP and ICMP packets to extract useful information like protocol types and IP addresses.
  • Practical examples: Readers are guided through creating a UDP host discovery tool and a simple sniffer to capture network traffic.
  • Cross-platform techniques: The book provides solutions for both Windows and Linux environments, ensuring broad applicability.

What is the role of Scapy in "Black Hat Python"?

  • Powerful library: Scapy is introduced as a versatile tool for packet manipulation and network analysis.
  • Sniffing and ARP poisoning: The book demonstrates using Scapy to sniff traffic and perform ARP cache poisoning attacks.
  • Image extraction: It includes a project on extracting images from HTTP traffic and performing facial detection using OpenCV.
  • Efficiency and flexibility: Scapy simplifies tasks that would otherwise require extensive coding, making it a valuable asset for hackers.

How does "Black Hat Python" approach web application hacking?

  • Web libraries: The book covers using libraries like urllib2, requests, and lxml for interacting with web services.
  • Brute-forcing techniques: It teaches how to brute-force directories, file locations, and HTML form authentication.
  • WordPress example: A specific example is provided for brute-forcing WordPress logins, highlighting common vulnerabilities.
  • Custom tooling: Readers learn to create tools for mapping web app installations and discovering hidden files and directories.

What is the significance of GitHub in "Black Hat Python"?

  • Command and control: GitHub is used as a platform for storing configuration information and exfiltrating data from victim systems.
  • Module management: The book explains how to host trojan modules on GitHub and dynamically import them into a trojan.
  • Encrypted communication: Using GitHub ensures encrypted communication over SSL, making it a stealthy option for attackers.
  • Practical implementation: Readers are guided through setting up a GitHub account and creating a trojan framework that leverages the platform.

How does "Black Hat Python" address privilege escalation on Windows?

  • Process monitoring: The book teaches how to use WMI to monitor process creation and identify high-privilege processes.
  • File monitoring: It covers using ReadDirectoryChangesW to track file changes and inject code into high-privilege processes.
  • Privilege analysis: Readers learn to analyze Windows token privileges to identify potential escalation opportunities.
  • Real-world examples: The book provides practical examples of exploiting insecure file handling and scheduled tasks.

What are the offensive forensics techniques discussed in "Black Hat Python"?

  • Volatility framework: The book introduces Volatility for memory forensics and analyzing VM snapshots.
  • User and process recon: It covers using Volatility to gather information about user behavior and running processes.
  • Custom plug-ins: Readers learn to write their own Volatility plug-ins to check for vulnerabilities like ASLR protection.
  • Practical applications: The techniques are applied to real-world scenarios, such as analyzing VM snapshots for vulnerabilities.

How does "Black Hat Python" teach exfiltration techniques?

  • Encryption methods: The book covers using PyCryptoDomeX for encrypting and decrypting files before exfiltration.
  • Multiple channels: It teaches exfiltration via email, file transfers, and web server posts, with both platform-independent and Windows-specific methods.
  • COM automation: Windows COM automation is used to exfiltrate data stealthily, leveraging trusted processes like Internet Explorer.
  • Comprehensive approach: The book provides a range of techniques to ensure successful data exfiltration in various network environments.

Recenzije

4.12 od 5
Prosječna ocjena od 500+ ocjene s Goodreads i Amazona.

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.

Your rating:
4.59
39 ocjene

O autoru

Justin Seitz iskusni je stručnjak za kibernetsku sigurnost i autor poznat po svojoj ekspertizi u programiranju u Pythonu i etičkom hakiranju. Autor je više knjiga na ovu temu, uključujući "Gray Hat Python" i "Black Hat Python", koje su postale popularni resursi u zajednici kibernetske sigurnosti. Seitzov stil pisanja hvaljen je zbog svoje jasnoće i praktičnog pristupa, čineći složene teme dostupnima čitateljima različitih razina iskustva. Njegov rad fokusira se na poučavanje čitatelja kako iskoristiti Python za testiranje sigurnosti, analizu zloćudnog softvera i penetracijsko testiranje. Seitzovi doprinosi oblikovali su područje ofenzivne sigurnosti i nastavljaju utjecati na buduće hakere i stručnjake za sigurnost.

Listen to Summary
0:00
-0:00
1x
Dan
Andrew
Michelle
Lauren
Select Speed
1.0×
+
200 words per minute
Home
Library
Get App
Create a free account to unlock:
Requests: Request new book summaries
Bookmarks: Save your favorite books
History: Revisit books later
Recommendations: Personalized for you
Ratings: Rate books & see your ratings
100,000+ readers
Try Full Access for 7 Days
Listen, bookmark, and more
Compare Features Free Pro
📖 Read Summaries
All summaries are free to read in 40 languages
🎧 Listen to Summaries
Listen to unlimited summaries in 40 languages
❤️ Unlimited Bookmarks
Free users are limited to 4
📜 Unlimited History
Free users are limited to 4
📥 Unlimited Downloads
Free users are limited to 1
Risk-Free Timeline
Today: Get Instant Access
Listen to full summaries of 73,530 books. That's 12,000+ hours of audio!
Day 4: Trial Reminder
We'll send you a notification that your trial is ending soon.
Day 7: Your subscription begins
You'll be charged on May 24,
cancel anytime before.
Consume 2.8x More Books
2.8x more books Listening Reading
Our users love us
100,000+ readers
"...I can 10x the number of books I can read..."
"...exceptionally accurate, engaging, and beautifully presented..."
"...better than any amazon review when I'm making a book-buying decision..."
Save 62%
Yearly
$119.88 $44.99/year
$3.75/mo
Monthly
$9.99/mo
Try Free & Unlock
7 days free, then $44.99/year. Cancel anytime.
Scanner
Find a barcode to scan

Settings
General
Widget
Loading...