Tutorial de testare a penetrației: Ce este PenTest?
⚡ Rezumat inteligent
Testarea de penetrare simulează un atac real împotriva unei aplicații, rețele sau sisteme, astfel încât echipele de securitate să poată localiza punctele slabe exploatabile, să își măsoare impactul asupra afacerii și să le închidă înainte ca un atacator extern să descopere aceleași breșe.

Ce este testarea de penetrare?
Testarea penetrării sau Testarea stiloului este un tip de Testarea securității utilizat pentru a descoperi vulnerabilități, amenințări și riscuri pe care un atacator le-ar putea exploata în aplicații software, rețele sau aplicații web. Scopul testării de penetrare este de a identifica și testa toate vulnerabilitățile de securitate posibile prezente în aplicația software. Testarea de penetrare este numită și Pen Test.
Diagrama de mai jos arată cum o vulnerabilitate necorectată într-o aplicație devine poarta prin care trece un atacator.
Vulnerabilitatea este riscul ca un atacator să poată perturba sau să obțină acces neautorizat la sistem sau la orice date conținute în acesta. Vulnerabilitățile sunt de obicei introduse accidental în timpul fazei de dezvoltare și implementare a software-ului. Vulnerabilitățile comune includ erori de proiectare, erori de configurare și erori de software. Analiza penetrării depinde de două mecanisme, și anume Evaluarea Vulnerabilității și Testarea Penetrării (VAPT).
Cele două jumătăți ale VAPT sunt adesea confundate. O evaluare a vulnerabilităților enumeră punctele slabe cunoscute la scară largă și se oprește aici, în timp ce un test de penetrare exploatează în siguranță o selecție a acestora pentru a demonstra impactul în lumea reală. Combinate, acestea separă descoperirile teoretice de cele care pun cu adevărat în pericol datele.
De ce testarea de penetrare?
Testarea de penetrare este esențială într-o întreprindere deoarece:
- Sectoarele financiare precum băncile, serviciile bancare de investiții și bursele de valori doresc ca datele lor să fie securizate, iar testele de penetrare sunt esențiale pentru a asigura securitatea.
- Dacă sistemul software a fost deja atacat prin hacking, organizația dorește să determine dacă există încă amenințări în sistem, pentru a evita viitoare atacuri cibernetice.
- Testarea proactivă a penetrării este cea mai bună protecție împotriva hackerilor
- Cadrele de conformitate așteaptă acest lucru. Cerința PCI DSS 11.4, de exemplu, solicită teste de penetrare interne și externe cel puțin anual și după orice modificare semnificativă.
Tipuri de testare de penetrare
Tipul de test de penetrare selectat depinde de obicei de domeniul de aplicare și de dorința organizației de a simula un atac din partea unui angajat sau a unui administrator de rețea (surse interne) sau din partea unor surse externe. Există trei tipuri de teste de penetrare, și acestea sunt:
În testarea de penetrare de tip „cutie neagră”, un tester nu are cunoștințe despre sistemele care urmează să fie testate. Testerul este responsabil pentru colectarea de informații despre rețeaua sau sistemul țintă.
În testele de penetrare de tip „white-box”, testerul primește de obicei informații complete despre rețeaua sau sistemele care urmează să fie testate, inclusiv schema adresei IP, codul sursă și detaliile sistemului de operare. Aceasta poate fi considerată o simulare a unui atac din partea oricărei surse interne, cum ar fi un angajat al organizației.
În testarea de penetrare de tip „grey-box”, un tester primește cunoștințe parțiale despre sistem. Poate fi considerat un atac din partea unui hacker extern care a obținut acces ilegal la documentele infrastructurii de rețea a unei organizații.
Tabelul de mai jos plasează cele trei unul lângă altul, astfel încât să puteți potrivi un tip de implicare cu amenințarea pe care doriți de fapt să o modelați.
| Aspect | Negru Box | Alb Box | Gri Box |
| Informațiile furnizate testerului | Nici unul | Complet: cod sursă, schemă IP, detalii sistem de operare | Parțial: acreditări sau documente limitate |
| Atacatorul simulat | Un străin fără acces | O persoană din interior sau un dezvoltator | Un outsider care și-a câștigat deja un punct de sprijin |
| Timpul petrecut în recunoaștere | Înalt | Scăzut | Moderat |
| Acoperire tipică a bazei de cod | Doar ceea ce este accesibil din exterior | Cel mai adânc, deoarece părțile interne sunt vizibile | Concentrat pe calea de atac expusă |
Cum se face testarea de penetrare
Următoarele activități trebuie efectuate pentru a executa un test de penetrare. Imaginea de mai jos prezintă pe scurt cele patru faze înainte de a fi descrisă fiecare pe rând.
Pasul 1) Faza de planificare
- Scopul și strategia misiunii sunt determinate
- Politicile și standardele de securitate existente sunt utilizate pentru definirea domeniului de aplicare
Pasul 2) Faza de descoperire
- Colectați cât mai multe informații posibil despre sistem, inclusiv date din sistem, nume de utilizator și chiar parole. Aceasta se numește și amprentare digitală.
- Scanați și sondați porturile
- Verificați vulnerabilitățile sistemului
Pasul 3) Faza de atac
- Găsiți exploatări pentru diverse vulnerabilități. Aveți nevoie de privilegiile de securitate necesare pentru a exploata sistemul.
Pasul 4) Faza de raportare
- Un raport trebuie să conțină constatări detaliate
- Riscurile vulnerabilităților descoperite și impactul acestora asupra afacerii
- Recomandări și soluții, dacă există
Sarcina principală în testarea penetrării este de a colecta informații despre sistem. Există două modalități de a colecta informații:
- Model „unu la unu” sau „unu la mai mulți” în raport cu gazda: Un tester execută tehnici într-un mod liniar fie împotriva unei gazde țintă, fie împotriva unui grup logic.ping a gazdelor țintă (de exemplu, o subrețea).
- Modelul „Mulți la unu” sau „Mulți la mulți”: Testerul utilizează mai multe gazde pentru a executa tehnici de colectare a informațiilor într-un mod aleatoriu, cu rată limitată și neliniar.
Exemple de instrumente de testare a penetrației
Există o mare varietate de instrumente utilizate în testarea penetrării, iar instrumente Pentest importante sunt:
1) Teramind
Teramind oferă o suită cuprinzătoare pentru prevenirea amenințărilor interne și monitorizarea angajaților. Îmbunătățește securitatea prin analiza comportamentului și prevenirea pierderii de date, asigurând conformitatea și optimizând procesele de afaceri. Platforma sa personalizabilă se potrivește diverselor nevoi organizaționale, oferind informații utile care se concentrează pe creșterea productivității și pe protejarea integrității datelor.
Caracteristici:
- Prevenirea amenințărilor interne: Detectează și previne acțiunile utilizatorilor care pot indica amenințări interne la adresa datelor.
- Optimizarea proceselor de afaceri: Utilizează analiza comportamentală bazată pe date pentru a redefini procesele operaționale.
- Productivitatea forței de muncă: Monitorizează productivitatea, securitatea și comportamentele de conformitate ale forței de muncă.
- Gestionarea conformității: Ajută la gestionarea conformității cu o soluție unică, scalabilă, potrivită pentru întreprinderi mici, întreprinderi și agenții guvernamentale.
- Criminalistică a incidentelor: Oferă dovezi pentru a îmbogăți răspunsul la incidente, investigațiile și informațiile despre amenințări.
- Prevenirea pierderii de date: Monitorizează și protejează împotriva potențialei pierderi de date sensibile.
- Monitorizarea angajaților: Oferă capacități de monitorizare a performanței și activităților angajaților.
- Analiză comportamentală: Analizează datele granulare despre comportamentul clienților în aplicații pentru informații.
- Setări de monitorizare personalizabile: Permite personalizarea setărilor de monitorizare pentru a se potrivi unor cazuri de utilizare specifice sau pentru a implementa reguli predefinite.
- Informații despre tabloul de bord: Oferă vizibilitate și informații utile asupra activităților forței de muncă prin intermediul unui tablou de bord cuprinzător.
- nmap – Acest instrument este folosit pentru scanarea porturilor, identificarea sistemului de operare, trace ruta și scanarea vulnerabilităților.
- Nessus – Acesta este un instrument tradițional de detectare a vulnerabilităților bazat pe rețea.
- Pass-The-Hash – Acest instrument este folosit în principal pentru spargerea parolelor.
Rolul și responsabilitățile testatorilor de penetrare
Sarcina unui tester de penetrare este:
- Colectați informațiile necesare de la organizație pentru a permite testele de penetrare
- Găsiți defecte care ar putea permite hackerilor să atace o mașină țintă
- Gândește și acționează ca niște hackeri adevărați, deși etic.
- Faceți lucrarea reproductibilă, astfel încât dezvoltatorilor să le fie ușor să o repare
- Stabiliți în prealabil data de începere și data de sfârșit a execuției testului
- Să își asume responsabilitatea pentru orice pierdere a sistemului sau a informațiilor în timpul testare software
- Păstrați confidențialitatea datelor și informațiilor
Testarea manuală a penetrării vs. testarea automată a penetrării
Majoritatea angajamentelor reale combină ambele abordări. Comparația de mai jos arată unde își merită fiecare locul.
| Testare manuală de penetrare | Testare automată a penetrării |
| Testarea manuală necesită profesioniști experți pentru a efectua testele | Instrumentele automate de testare oferă rapoarte clare cu profesioniști mai puțin experimentați |
| Testarea manuală necesită Excel și alte instrumente pentru track-o | Testarea automatizării are instrumente centralizate și standard |
| În Testarea manuală, rezultatele eșantionului variază de la test la test | În cazul testelor automate, rezultatele nu variază de la un test la altul |
| Curățarea memoriei ar trebui să fie ținută minte de utilizatori | Testarea automată va avea curățări complete. |
Dezavantajele testării de penetrare
Testarea de penetrare nu poate găsi toate vulnerabilitățile din sistem. Există limitări de timp, buget, domeniu de aplicare și abilitățile testerilor de penetrare.
Următoarele vor fi efectele secundare atunci când efectuăm teste de penetrare:
- Pierderea și corupția datelor
- Ora în jos
- Creșteți Costurile
Infograficul de mai jos prezintă aceleași compromisuri, alături de motivele pentru care organizațiile efectuează oricum testul.
Aceste limite sunt motivul pentru care un test de penetrare funcționează cel mai bine pe lângă o politică de securitate bine implementată, decât în locul uneia. Testerii ar trebui să acționeze ca hackeri reali, să verifice dacă codul este scris în siguranță și să repete exercițiul conform unui program documentat.




