Penetration testing (Pentest)

28.10.2025 autor Marko Stojanović
penetration-testing

1. Šta je penetration testing?

Penetration testing (pentest) je kontrolisano, autorizovano simuliranje napada na računarski sistem, mrežu, aplikaciju ili uređaj s ciljem da se otkriju ranjivosti koje bi napadač mogao iskoristiti. Za razliku od automatizovanih skenera, pentest uključuje ljudsku analizu, kreativno eksploatisanje i procenu rizika.

Cilj: otkriti realne sigurnosne probleme pre nego što ih iskoriste napadači i dati preporuke za njihovo uklanjanje.


2. Vrste pentestiranja prema obimu i znanju

  • Black-box: tester nema informacije o cilju (simulira spoljašnjeg napadača).
  • White-box: tester ima potpune informacije (kod, arhitektura, nalogi) — detaljan test.
  • Gray-box: delimične informacije (npr. validan nalog) — često najrealniji spoj efikasnosti i opsega.

Prema cilju:

  • Mrežni pentest (infrastruktura, serveri, firewalle)
  • Web aplikacioni pentest (OWASP Top 10: XSS, SQLi, CSRF…)
  • Wireless/bezžični pentest
  • IoT pentest
  • Cloud pentest (AWS, Azure, GCP — po politikama provajdera)
  • Social engineering (phishing, pretexting) — zahteva izričitu saglasnost
  • Physical pentest (ulazak u objekat, pristup hardveru)

3. Metodologije i standardi (kratko)

Popularne metodologije koje definišu korake i preporuke:

  • OWASP Testing Guide (za web aplikacije)
  • PTES (Penetration Testing Execution Standard)
  • NIST SP 800-115 (tehnički vodič za testiranje)
  • OSSTMM (Operational Security Security Testing Methodology Manual)

(Ove metodologije daju strukturu; u praksi se mešaju prema ciljevima i vremenu.)


4. Tipične faze pentesta (korak-po-korak)

1) Planiranje i priprema

  • Definisanje ciljeva, opsega i izuzetaka (scope & exclusions).
  • Potpisivanje Rules of Engagement (ROE) i ugovora.
  • Dogovor o vremenu testiranja i kontaktima za hitne slučajeve.
  • Dobijanje pismenog dopuštenja — ključno za legalnost.

2) Rekognoscencija (reconnaissance)

  • Passive recon: pregled javno dostupnih informacija (WHOIS, DNS, javni servisi, social media).
  • Active recon: skeniranje portova, identifikacija servisa.
    Alati/tehnike: whois, nslookup, Google dorking, Shodan, Nmap.

3) Skeniranje i mapiranje ranjivosti

  • Identifikacija otvorenih portova, verzija softvera.
  • Automatski skeneri ranjivosti (Nessus, OpenVAS) + ručna verifikacija.
  • Mapping aplikacione logike (za web: URL mapiranje, API endpointi).

4) Enumeracija i prikupljanje informacija

  • Pribavljanje korisničkih/servisnih informacija: baza korisnika, shareovi, konfiguracije.
  • Za web: cookie analysis, session management, parameter discovery.

5) Eksploatacija

  • Iskorišćavanje ranjivosti da se ostvari pristup (npr. SQLi → dohvat podataka, RCE).
  • Korišćenje alata poput Metasploit, sqlmap, Burp Suite Pro (manualni payloadi često potrebni).
  • Pažljivo — pratiti uticaj na proizvodne sisteme (izbegavati DoS).

6) Post-exploitation (procena uticaja)

  • Podizanje privilegija, lateralno kretanje, ekstrakcija osetljivih podataka.
  • Procena koliko daleko napadač može da ode i koje su posledice.
  • Prikupljanje dokaza (logovi, snimci) za izveštaj.

7) Čišćenje i povratak u početno stanje

  • Uklanjanje alata, naloga ili backdoora koje je tester ostavio.
  • Obavezno vraćanje sistema u bezbedno stanje i potvrda sa timom.

8) Izveštavanje

  • Detaljan tehnički izveštaj + rezime za menadžment.
  • Prioritizovane preporuke za sanaciju (quick wins i dugoročne mere).
  • Preporuka za retest nakon sanacije.

5. Alati (uobičajeni primeri)

  • Network/Discovery: Nmap, Masscan
  • Vulnerability scanning: Nessus, OpenVAS
  • Exploitation: Metasploit, Cobalt Strike (komercijalno)
  • Web testing: Burp Suite, OWASP ZAP, sqlmap, Nikto
  • Password attacks: Hydra, John the Ripper, Hashcat
  • Wireless: Aircrack-ng, Kismet
  • Packet analysis: Wireshark, tcpdump
  • Post-exploit: Mimikatz (Windows), Empire
  • Reporting: Dradis, Serpico

(Napomena: korišćenje nekih alata može biti ilegalno bez dozvole.)


6. Primene / gde se koristi pentest

  • Procena sigurnosti web aplikacija i API-ja.
  • Testiranje mrežne infrastrukture i servera.
  • Procena sigurnosti cloud okruženja i konfiguracija.
  • Testiranje IoT uređaja i embedded sistema.
  • Procena fizičke sigurnosti i ljudskog faktora (social engineering).
  • Provera usklađenosti sa standardima (PCI-DSS, ISO27001, GDPR zahtevi).

7. Kako izgleda praktičan plan pentesta (primer)

  1. Opseg: web aplikacija app.example.com, API api.example.com, dva Linux servera (IP-ovi), baza podataka na unutrašnjoj mreži.
  2. Tip testa: Gray-box — pristup testnom nalogu.
  3. Vremenski okvir: 5 radnih dana (snimanje rada i normalno radno vreme).
  4. Dozvole: pisani ROE i kontakt za incidente.
  5. Ciljevi:
    • Otkriti OWASP Top 10 ranjivosti.
    • Procena autentikacije i autorizacije.
    • Testiranje enkripcije i session managementa.
  6. Metodologija: OWASP + ručna eksploracija.
  7. Rezultati: Tehnički izveštaj + executive summary + PoC (proof-of-concept) kod/koraci.

8. Struktura izveštaja — šta uključiti

  • Naslovna strana: klijent, datum, opseg.
  • Executive summary: kratko za menadžment — glavni rizici i prioriteti.
  • Metodologija i opseg: kako je test rađen.
  • Detaljni nalazi:
    • Ranjivost, opis, koraci za reprodukciju (PoC), težina/rizik, preporuka.
  • Tehnički dokazi: logovi, screenshot-ovi, payload output.
  • Preporuke za mitigaciju: kratkoročne i dugoročne.
  • Plan retesta: nakon izvršenih popravki.
  • Appendix: alati, serije komandi, kontakt osobe.

Za ocenu rizika često se koristi CVSS skala + poslovni uticaj (visok/srednji/niski).


9. Pravne i etičke napomene

  • Pentest mora biti autorizovan pismeno. Bez dozvole — ilegalno.
  • Social engineering i physical pentest zahtevaju eksplicitne odredbe u ROE.
  • Test treba da minimizuje prekide u radu — dogovor o vremenu i rollback plan.
  • Čuvanje i rukovanje osetljivim podacima — privatnost i usklađenost (npr. GDPR).

10. Najčešće greške i saveti

  • Nejasan opseg — dovodi do nesporazuma i rizika.
  • Reliance samo na automatske skenereručna provera je neophodna.
  • Nedostatak komunikacije sa klijentom tokom kritičnih faza.
  • Nerealan rok za kompletnu proveru svih sistema.
  • Zaboravljanje post-exploit analize — pokazuje stvarni uticaj problema.

11. Primer kratkih preporuka za brzo popravljanje (quick wins)

  • Ažurirati softver i patchovati poznate ranjivosti.
  • Onemogućiti nepotrebne servise i portove.
  • Implementirati strong password politike i 2FA gde je moguće.
  • Postaviti WAF (web application firewall) za web aplikacije.
  • Omogućiti enkripciju za prenos i skladištenje podataka (TLS, at-rest).
  • Logovanje i monitoring — brzo otkrivanje incidenata.

Zaključak

Penetration testing je ključni element moderne bezbednosne strategije: ne samo da identifikuje tehničke ranjivosti, već i osvetljava stvarni poslovni rizik koji te ranjivosti predstavljaju. Dobro izveden pentest kombinuje metodologiju, ručno istraživanje i odgovorno izveštavanje kako bi organizacijama pružio prioritizovane, konkretne preporuke za sanaciju. Ključ uspeha leži u jasnom opsegu, pismenoj dozvoli, odgovornom izvođenju (minimizacija uticaja na sisteme) i praćenju — odnosno retestu nakon implementacije popravki. Ulaganje u redovne pentestove i integrisanje nalaza u proces održavanja i razvoja značajno smanjuje šanse da stvarni napadači iskoriste ranjivosti i pomaže organizacijama da održe poverenje korisnika i usklađenost sa standardima.

Najnovije vesti

IT dokumentacija – osiguranje kontinuiteta i sigurnost poslovanja

06.11.2025
it dokumenacija
Uloga IT Dokumentacije: Osiguravanje Kontinuiteta Poslovanja U IT okruženju, efikasan prenos znanja je esencijalan. IT Dokumentacija je formalni zapis o konfiguraciji, strukturi i procedurama sistema.…

Šta je IT Održavanje: Funkcija, Prednosti i Standardi

04.11.2025
StaJeIT
Uvod u IT održavanje Da bi Vaši informacioni sistemi radili pouzdano, efikasno i sigurno, bitno je redovno IT održavanje. Glavni cilj je da se problemi…

Saznajte kako redovni softverski update štiti vaš IT sistem

31.10.2025
Update
U digitalnoj eri, sigurnost IT sistema predstavlja prioritet za svaku organizaciju. Jedan od najefikasnijih načina da zaštitite svoje poslovanje jeste redovno ažuriranje softvera. Iako se…