Test de penetrare

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

În informatică , testul de penetrare (sau testul stiloului informal) este procesul operațional de analiză sau evaluare a securității unui sistem informatic sau a unei rețele .

Desfășurat pe mai multe etape din punctul de vedere al unui potențial atacator prin simularea atacului cibernetic al unui atacator, acesta constă în exploatarea vulnerabilităților detectate ajutând la determinarea dacă apărarea sistemului este suficientă sau dacă sunt prezente alte vulnerabilități, enumerând în acest caz care au apărat proba învinsă. Prin urmare, testul își propune să evidențieze punctele slabe ale platformei, oferind cel mai mare număr de informații despre vulnerabilitățile care au permis accesul neautorizat [1] [2] , oferind o estimare clară a capacităților de apărare și a nivelului de penetrare atins către:

  • vulnerabilități interne ale sistemului;
  • vulnerabilități externe sistemului;
  • siguranță fizică.

Toate problemele de securitate detectate sunt apoi prezentate clientului împreună cu o evaluare a impactului acestora asupra sistemului și în scenariul de afaceri corporativ, oferind, de asemenea, o soluție tehnică sau o atenuare propusă sau migrarea sistemului. [3]

Istorie

La mijlocul anilor 1960, apar noi probleme de securitate a datelor: popularitatea crescândă a sistemelor de partajare a timpului pe computer face resursele accesibile prin intermediul liniilor de comunicații. După cum explică cercetătorii Deborah Russell și GT Gangemi, „1960 a marcat chiar începutul erei securității cibernetice”. [4] În iunie 1965, de exemplu, mulți dintre cei mai importanți experți în securitate cibernetică din țară au ținut una dintre primele conferințe majore privind sistemele de securitate, System Development Corporation (SDC). În timpul conferinței, cineva a subliniat că un angajat SDC a reușit să submineze cu ușurință mai multe măsuri de securitate ale AN / FSQ-32 a SDC, un computer în stare solidă utilizat în armată. În speranța că studiile sistemelor de securitate se vor dovedi utile, participanții la conferință au solicitat în mod oficial pentru prima dată utilizarea penetrării computerului ca instrument pentru studierea sistemelor de securitate. [5]

La Conferința comună de informatică din primăvara anului 1967, mulți specialiști în informatică se reunesc din nou pentru a discuta despre securitatea sistemelor informatice. În timpul acestei conferințe, experții în securitate cibernetică Willis Ware , Harold Petersen, Rein Tern, Bernard Peters de la Agenția Națională de Securitate (NSA) și întreaga RAND Corporation folosesc termenul „penetrare” pentru a descrie un atac asupra unui sistem informatic. Într-un document, Ware a avertizat că este important să se încerce pătrunderea sistemelor informatice, referindu-se la sistemele militare de partajare a timpului. Colegii săi Petersen și Turn au împărtășit același concept, observând că sistemele de comunicații online „... sunt vulnerabile la amenințările de confidențialitate”. Bernard Peters de la NSA a menționat același punct, insistând că intrarea și ieșirea unui computer „... ar putea furniza cantități mari de informații în urma unei descoperiri”. În timpul conferinței, pătrunderea computerului este identificată în mod oficial ca o amenințare majoră pentru sistemele informatice online. [6]

Amenințarea pătrunderii computerelor a fost evidențiată într-un raport major organizat de Departamentul Apărării al SUA (DoD) la sfârșitul anului 1967. În esență, oficialii Departamentului Apărării s-au orientat către Willis Ware pentru a conduce un grup de lucru de experți din NSA. CIA , DoD , mediul academic și industria să evalueze în mod oficial securitatea sistemelor informaționale de partajare a timpului. Bazându-se pe multe documente prezentate la Conferința comună de computer din primăvara anului 1967, grupul de lucru a confirmat în mare măsură că pătrunderea computerului constituia o amenințare la adresa securității sistemului informatic. Raportul lui Ware a fost inițial clasificat, dar mulți dintre cei mai importanți experți cibernetici din țară au identificat studiul drept documentul definitiv privind securitatea cibernetică. [6] Jeffrey R. Yost, de la Institutul Charles Babbage, a descris cel mai recent raportul lui Ware drept „... de departe cel mai important și mai aprofundat studiu al problemelor tehnice și operaționale de securitate a computerului din timpul său”. [7] Într-adevăr, raportul Ware a reiterat amenințarea gravă reprezentată de pătrunderea computerului asupra noilor sisteme online de partajare a timpului.

Pentru a înțelege mai bine punctele slabe ale sistemului, guvernul federal și finanțatorii săi au început în curând să organizeze echipe de penetratori, cunoscuți sub numele de echipe de tigri , pentru a utiliza penetrarea computerelor ca test de securitate a sistemelor. ". [8]

Donald MacKenzie, un savant al istoriei securității cibernetice, subliniază că „RAND a făcut unele studii de penetrare (experimente pentru a se sustrage controalelor de securitate cibernetică) ale primelor sisteme de partajare a timpului în numele guvernului”. [9] Jeffrey R. Yost de la Institutul Charles Babbage, în lucrarea sa despre istoria securității cibernetice, recunoaște, de asemenea, că atât RAND Corporation, cât și SDC „au făcut unele dintre primele studii de penetrare încercând să se infiltreze în sistemele de partajare a timpului pentru a le testa vulnerabilitatea ". [10] În aproape toate aceste studii timpurii, echipele de tigri au reușit să se infiltreze în toate sistemele informatice vizate, deoarece apărările de partajare a timpului din țară erau slabe.

Acțiunile primelor echipe de tigru și eforturile RAND Corporation au demonstrat utilitatea testelor de penetrare ca instrument de evaluare a securității sistemului. La acea vreme, un analist RAND a menționat că testele „au demonstrat practicitatea penetrării sistemului ca instrument de evaluare a eficacității și adecvării apărării securității datelor”. În plus, un număr de analiști RAND au susținut că exercițiile de testare a penetrării au oferit mai multe beneficii care au fost suficiente pentru a justifica utilizarea lor. [11]

Poate că cel mai important expert în penetrarea computerelor în acești ani de început a fost James P. Anderson, care a lucrat pentru NSA, RAND și alte agenții guvernamentale pentru a studia securitatea sistemelor informatice. La începutul anului 1971, Forțele Aeriene ale SUA angajează compania privată a lui Anderson pentru a studia securitatea sistemului său de partajare a timpului la Pentagon. În studiul său, Anderson a subliniat o serie de factori importanți implicați în penetrarea computerului. Anderson a descris un atac general ca o succesiune din pașii următori:

  1. Găsirea unei vulnerabilități exploatabile
  2. Proiectează un atac în jurul său
  3. Testează atacul
  4. Preia o linie în uz
  5. Efectuați atacul
  6. Puterea de intrare pentru recuperarea informațiilor
William Broad

De-a lungul timpului, secvența Anderson a ajutat la îndrumarea multor alți experți în securitate care s-au bazat pe această tehnică pentru a evalua securitatea sistemelor de partajare a timpului. [11]

În anii următori, penetrarea computerului ca instrument de evaluare a securității a devenit mai rafinată și mai sofisticată. La începutul anilor 1980, reporterul William Broad a rezumat pe scurt eforturile continue ale echipelor de tigri pentru a evalua securitatea sistemului. După cum a raportat Broad, raportul finanțat de DoD al lui Ware „a arătat cum spionii se pot strecura în computere, fura sau copia fișiere și subversa dispozitivele care protejează în mod normal informațiile de top secret”. [12]

În timp ce aceste studii au sugerat că securitatea cibernetică în Statele Unite a fost o problemă majoră, cercetătorul Edward Hunt a făcut recent o reflecție mai amplă asupra studiului penetrării computerelor ca instrument de securitate. Hunt, într-o lucrare recentă despre istoria testelor de penetrare, sugerează că instituțiile americane de apărare „... au creat multe dintre instrumentele utilizate în războiul cibernetic modern”. [13]

Proceduri de analiză

Analiza se efectuează în raport cu un acord comercial / tehnic. Oricine desfășoară această activitate este numit tester de penetrare sau auditor și astăzi, de asemenea, cu numele mai modern hacker etic , deoarece încearcă să atace sistemul cu aceeași logică folosită de un hacker . Un grup de testeri de penetrare este numit și o echipă de tigri .

Procesele de testare a penetrării pot fi efectuate în moduri diferite. Diferența constă în cantitatea și calitatea informațiilor disponibile analiștilor despre sistemele analizate. Testele Black Box nu necesită cunoștințe prealabile despre infrastructura analizată, iar examinatorii trebuie să determine arhitectura și serviciile sistemelor înainte de a începe analiza.

În testele White Box , în schimb, sunt furnizate cunoștințe detaliate despre infrastructura care urmează să fie examinată, inclusiv deseori diagrame de rețea, cod sursă de aplicație și liste de adrese IP prezente în rețea. Există, de asemenea, variante ale acestor metodologii definibile pentru Cutia Gri . [14] Rezultatele testelor de penetrare pot evalua impactul unui atac și pot sugera contramăsuri pentru a reduce riscurile. [14]

Procesele de analiză care se desfășoară într-un test de penetrare au timpi de acțiune diferiți în care se alternează fazele manuale și automate. Principalele informații despre arhitectura platformei și serviciile oferite sunt achiziționate inițial. Din analiza acestor date rezultă alegerea modului de realizare a următorului pas, constând într-o enumerare a principalelor erori și probleme. Software-ul automat combinat cu experiența manuală a analistului permite, prin urmare, să evidențieze toate vulnerabilitățile posibile, inclusiv cele mai recente și unele care încă nu sunt în domeniul public. Problemele întâmpinate sunt apoi verificate manual și sunt luate dovezile sau testele care certifică existența problemelor în sine.

Activitatea se încheie prin elaborarea rapoartelor constând în raportul de analiză sumară dedicat managementului sau rezumatului executiv , care conține analiza impactului riscului constatărilor și a calendarului pentru recuperarea sau atenuarea problemelor întâmpinate și raportul tehnic , conținând analiza detaliată a problemelor și soluția tehnică. Testul de penetrare trebuie efectuat pe sisteme expuse pe internet și, în orice caz, pe platforme sensibile conectate la rețele mari, înainte de a intra în funcțiune, pentru a avea un test practic al siguranței a ceea ce este expus.

Este important să înțelegem că probabilitatea ca un pen tester să poată găsi toate problemele de securitate este foarte mică. De exemplu: ieri a fost efectuat un test de penetrare care a evidențiat absența vulnerabilităților în sistem; astăzi Microsoft lansează un patch pentru a corecta unele erori de sistem care conțin o nouă vulnerabilitate a unor servere de mail care anterior erau considerate sigure; aceasta înseamnă că testul pen de ieri nu mai este valabil, deoarece, desigur, nu poate evidenția noua vulnerabilitate. Același exemplu poate fi aplicat oricăror modificări aduse sistemului. Menținerea unei rețele sigure necesită, prin urmare, o vigilență constantă.

Instrumente

O gamă largă de instrumente de testare stilou este disponibilă pentru evaluarea securității sistemului nostru, atât gratuit , cât și comercial.

Distribuții specializate ale sistemului de operare

Captură de ecran standard a Kali Linux

Mai multe distribuții ale sistemului de operare sunt orientate spre testarea penetrării. [15] Astfel de distribuții conțin de obicei un set de instrumente preconfigurate. Cu toate acestea, testerul de penetrare nu trebuie să caute fiecare instrument, deoarece acest lucru ar putea duce la complicații, cum ar fi erori de compilare, probleme de dependență sau erori de configurare. De asemenea, achiziționarea de instrumente suplimentare poate fi impracticabilă din punctul de vedere al testerului.

Unele dintre cele mai populare sisteme de operare orientate către testul stiloului sunt:

O serie de sisteme de operare includ vulnerabilități cunoscute ale sistemului sau ale aplicației și pot fi utilizate ca ținte. Astfel de sisteme îi ajută pe noii profesioniști în domeniul securității să experimenteze cele mai noi instrumente de securitate într-un mediu de laborator. Unele dintre acestea sunt:

Sigla Metasploit

Cadrele software Test de penetrare

Instrumente de testare automate

Procesul de testare a penetrării poate fi simplificat în două părți:

  1. Descoperiți vulnerabilitățile, care reprezintă o combinație de operațiuni valide care permit testerului să efectueze operațiuni nevalide
  2. Descriere nevalidă a operației

Vulnerabilitate

Operațiunile valide care permit testerului să efectueze o operație nevalidă includ comenzi SQL neevasate, rapoarte umane și funcții criptografice care sunt acum învechite. Este posibil ca o singură vulnerabilitate să nu fie suficientă pentru a permite o exploatare . Adesea este necesar să se utilizeze mai multe vulnerabilități cunoscute și să se modeleze sarcina utilă pentru a părea validă. Metasploit oferă o bibliotecă Ruby pentru cele mai frecvente sarcini și menține o bază de date cu exploatări cunoscute.

Fuzzing-ul este o tehnică foarte populară pentru descoperirea vulnerabilităților unui sistem. Scopul său este de a obține o eroare nesoluționată prin introducerea aleatorie. Testerul folosește intrări aleatorii pentru a accesa porțiuni de cod puțin folosite, deoarece cele mai frecvente sunt de obicei fără erori. Erorile sunt utile, deoarece fie expun informații suplimentare, cum ar fi blocarea serverului HTTP , fie sunt direct utilizabile, cum ar fi depășirea bufferului .

Imaginați-vă un site care are 100 de casete de text. Unii vor fi vulnerabili la injecția SQL prin utilizarea anumitor șiruri. Trimiterea continuă a șirurilor aleatorii va găsi mai devreme sau mai târziu o gaură de securitate. Eroarea este evidentă prezentându-se ca o pagină HTML incorectă din cauza unei erori SQL. În acest caz, numai casetele de text sunt utilizate ca intrare . Cu toate acestea, sistemele software au de obicei multe tipuri de intrări, precum cookie-uri , fluxul unui fișier încărcat sau canale RPC. Pot apărea erori la toate aceste tipuri de intrări. Scopul este să obțineți mai întâi o eroare nesoluționată și apoi să înțelegeți defectul pe baza testului care a dus la eșec. Testatorul proiectează un instrument automat pentru a-și testa cunoștințele despre defect până când le înțelege pe deplin. Mai târziu, devine evident cum se creează sarcina utilă pentru ca sistemul victimei să fie executat. Dacă această cale nu este viabilă, se poate spera că o altă eroare produsă de fuzzer va produce mai multe fructe. Utilizarea unui fuzzer economisește timp, astfel încât să nu trebuie să verificați porțiunile de cod în care este puțin probabil să găsiți vulnerabilități .

Încărcătură utilă

Funcționarea nevalidă sau încărcarea utilă în terminologia Metasploit poate duce la controlul de la distanță al mouse-ului, anunțuri pop-up, furt de parole sau multe altele. Unele companii mențin baze de date mari de exploatări cunoscute și oferă produse care testează automat sistemele pentru vulnerabilități:

Standarde și certificări profesionale

Ca parte a testului de penetrare, este posibil să se obțină certificări emise de organisme responsabile de garantarea caracteristicilor tehnice și de fiabilitate necesare ale operatorilor, precum și furnizarea unei metodologii care face testul în sine replicabil, evaluabil și măsurabil în timp:

Comitetul de revizuire a certificării de asigurare a informațiilor (IACRB) oferă o certificare a testerului de penetrare cunoscut sub numele de Tester de penetrare certificat (CPT). CPT solicită candidatului să promoveze un examen tradițional cu alegere multiplă și un examen practic care solicită candidatului să efectueze un test pen pe un server. [19]

Notă

  1. ^ (RO) Ghidul de pregătire CISSP® și CAPCM: Platinum Edition, John Wiley & Sons, ISBN 978-0-470-00792-1 .
    "Un test de penetrare poate determina modul în care reacționează un sistem la un atac, dacă pot fi încălcate sau nu apărările unui sistem și ce informații pot fi obținute din sistem" .
  2. ^ (EN) Kevin M. Henry, Penetration Testing: Protecting Networks and Systems, IT Governance Ltd, ISBN 978-1-84928-371-7 .
    „Testarea penetrării este simularea unui atac asupra unui sistem, rețea, echipament sau altă instalație, cu scopul de a demonstra cât de vulnerabil ar fi acel sistem sau„ țintă ”la un atac real.” .
  3. ^ (EN) Testarea penetrării: evaluarea securității dvs. generale înainte ca atacatorii să facă (PDF) pe sans.org, SANS . Adus la 10 decembrie 2016 .
  4. ^ Russell și Gangemi, Sr. (1991), p. 27
  5. ^ Hunt (2012), pp. 7-8
  6. ^ a b Hunt (2012), p. 8
  7. ^ Yost (2007), p. 602
  8. ^ Russell și Gangemi, Sr. (1991), p. 29
  9. ^ MacKenzie (2001), p. 156
  10. ^ Yost (2007), pp. 601-602
  11. ^ a b Hunt (2012), p. 9
  12. ^ Broad, William J. (25 septembrie 1983). „Securitatea computerelor îi îngrijorează pe experții militari”, New York Times
  13. ^ Hunt (2012), p. 5
  14. ^ A b (EN) Writing in Penetration Testing Report (PDF) on sans.org, SANS , 6 aprilie 2010. Accesat la 10 decembrie 2016.
  15. ^ (EN) Jeremy Faircloth, 1, Penetration Tester's Open Source Toolkit, Ediția a treia, A treia, Elsevier , 2011, ISBN 1-59749-627-8 .
  16. ^ (EN) Pentoo , pe pentoo.ch. Adus la 10 decembrie 2016 .
  17. ^ (EN) Concepte de testare a penetrării Kali, ISBN 978-1-78216-316-9 .
    „Creatorii BackTrack au lansat o nouă distribuție avansată Penetration Testing Linux numită Kali Linux” .
  18. ^ (EN) Concepte de testare a penetrării Kali, ISBN 978-1-78216-316-9 .
    „Kali Linux este conceput pentru a urma fluxul unui angajament de serviciu de testare a penetrării” .
  19. ^ (EN) Tester de penetrare certificat (CPT) , pe iacertification.org, IACRB. Adus la 10 decembrie 2016 .

Bibliografie

Elemente conexe

Controlul autorității LCCN ( EN ) sh2011003137
Securitate IT Portal de securitate cibernetică : accesați intrările Wikipedia care se ocupă de securitatea cibernetică