Skip to main content

🔍 Metodologia testów penetracyjnych

Testy penetracyjne to kontrolowane ataki symulujące działania rzeczywistych napastników w celu wykrycia luk w zabezpieczeniach. Proces pentestingu składa się z kilku kluczowych etapów oraz bazuje na uznanych standardach branżowych.

📌 Etapy testów penetracyjnych

1️⃣ Rozpoznanie (Reconnaissance)

Celem tego etapu jest zebranie jak największej ilości informacji o celu ataku. Może być ono pasywne (OSINT, Google Dorking) lub aktywne (skanowanie sieci, fingerprinting aplikacji).

Przykładowe techniki:

  • Google Dorking – wyszukiwanie wrażliwych informacji w Google
  • WHOIS Lookup – uzyskanie danych o domenie
  • Shodan – wyszukiwanie podatnych systemów
  • theHarvester – zbieranie e-maili i metadanych

Przykład użycia theHarvester:

theHarvester -d example.com -b google

2️⃣ Skanowanie (Scanning & Enumeration)

Po zebraniu informacji następuje analiza infrastruktury sieciowej i aplikacji w poszukiwaniu podatności.

Narzędzia:

  • Nmap – skanowanie portów i usług
  • Gobuster – fuzzing katalogów i plików
  • Nikto – skanowanie podatności serwerów WWW

Przykład skanowania Nmap:

nmap -A -p- example.com

3️⃣ Eksploatacja (Exploitation)

Na tym etapie wykorzystujemy znalezione podatności do przejęcia kontroli nad systemem.

Typowe ataki:

  • SQL Injection (sqlmap)
  • Cross-Site Scripting (XSS)
  • Remote Code Execution (RCE)
  • Brute-force haseł (Hydra)

Przykład ataku SQL Injection:

sqlmap -u "http://example.com/login.php?id=1" --dump

4️⃣ Eskalacja uprawnień (Privilege Escalation)

Po uzyskaniu dostępu do systemu atakujący dąży do przejęcia pełnej kontroli. Można to osiągnąć poprzez:

  • Eksploatację podatnych uprawnień użytkowników
  • Wykorzystanie błędnych konfiguracji systemu
  • Przejmowanie haseł i tokenów

Przykładowa eksploitacja SUID w Linuksie:

find / -perm -4000 -type f 2>/dev/null

5️⃣ Raportowanie (Reporting)

Każdy profesjonalny pentest kończy się raportem opisującym:

  • Znalezione podatności
  • Wykorzystane techniki
  • Zalecenia dotyczące poprawy bezpieczeństwa

Dobre raportowanie jest kluczowe dla zespołów bezpieczeństwa, które na podstawie analizy wdrażają poprawki.

Przykładowe narzędzia do generowania raportów:

  • Dradis – współpraca i raportowanie
  • Faraday – framework do pentestów
  • Metasploit Pro – automatyczne raporty

📚 Standardy w testach penetracyjnych

OWASP (Open Web Application Security Project)

OWASP to najbardziej znany standard testowania bezpieczeństwa aplikacji webowych. Lista OWASP Top 10 opisuje najczęściej wykorzystywane podatności, np.:

  • Injection (SQL, Command, LDAP)
  • Broken Authentication
  • Security Misconfiguration

OWASP oferuje także zestaw narzędzi, np. OWASP ZAP, do automatycznej analizy podatności.


PTES (Penetration Testing Execution Standard)

Jest to szczegółowa metodologia pentestingu, obejmująca:

  1. Rozpoznanie
  2. Analizę zagrożeń
  3. Wykorzystanie podatności
  4. Eskalację uprawnień
  5. Przechwycenie systemu
  6. Raportowanie

Więcej na: https://www.pentest-standard.org/


NIST SP 800-115

NIST to standard rządowy USA określający procedury testów penetracyjnych:

  • Planowanie testów
  • Zbieranie informacji
  • Ataki na systemy i aplikacje
  • Dokumentacja wyników

Dokumentacja dostępna: https://csrc.nist.gov/


Po opanowaniu metodologii pentestów możemy przejść do kolejnego kroku – rekonesansu i skanowania systemów. 🔍