Penetračné testovanie - metódy. Čo je penetračné testovanie? Komplexný penetračný test

  • 29.06.2020

Penetračné testovanie je kombináciou metód, ktoré berú do úvahy rôzne problémy systémov a testuje, analyzuje a poskytuje riešenia. Je založený na štruktúrovanom postupe, ktorý vykonáva krok za krokom penetračné testovanie. Nasleduje sedem fáz penetračného testovania:

Plánovanie a príprava

Plánovanie a príprava začína definovaním cieľov a zámerov penetračného testovania.

Klient a tester spoločne definujú ciele tak, aby obe strany mali rovnaké ciele a porozumenie. Všeobecné úlohy penetračného testovania sú:

  • Identifikovať slabé miesta a zlepšiť bezpečnosť technických systémov.
  • Zabezpečte IT bezpečnosť externou treťou stranou.
  • Zvýšiť bezpečnosť organizačnej / personálnej infraštruktúry.

Štúdium

Spravodajstvo zahŕňa analýzu predbežných informácií. Tester veľakrát okrem predbežných informácií, t. j. IP adresy alebo bloku IP adries, nemá veľa informácií. Tester začína analýzou dostupných informácií a v prípade potreby požiada používateľa o ďalšie informácie, ako sú popisy systému, sieťové plány atď. Tento krok predstavuje pasívny penetračný test. Jediným účelom je získať úplné a podrobné informácie o systémoch.

Otvorenie

V tomto bode penetračný tester pravdepodobne použije automatizované nástroje na skenovanie zraniteľných miest v cieľových aktívach. Tieto nástroje majú zvyčajne svoje vlastné databázy poskytujúce informácie o najnovších zraniteľnostiach. Tester však zistí

  • Zisťovanie siete- napríklad otváranie ďalších systémov, serverov a iných zariadení.
  • Host Discovery- určuje otvorené porty na týchto zariadeniach.
  • Servisný výsluch- polling porty na zistenie skutočných služieb, ktoré na nich bežia.

Analýza informácií a rizík

V tejto fáze tester analyzuje a vyhodnocuje informácie zozbierané pred testovacími fázami pre dynamický prienik do systému. Kvôli veľkému počtu systémov a veľkosti infraštruktúry to trvá dlho. Pri analýze berie tester do úvahy tieto prvky:

  • Špecifické ciele pre penetračný test.
  • Potenciálne riziká pre systém.
  • Odhadovaný čas potrebný na posúdenie potenciálnych bezpečnostných chýb pre následné aktívne penetračné testovanie.

Zo zoznamu identifikovaných systémov si však tester môže vybrať testovať len tie, ktoré obsahujú potenciálne zraniteľnosti.

Aktívne pokusy o inváziu

Toto je najdôležitejší krok a mal by sa robiť s náležitou starostlivosťou. Tento krok zahŕňa rozsah, v akom potenciálne zraniteľné miesta nájdené v kroku objavovania nesú skutočné riziká. Tento krok by sa mal vykonať, keď je potrebná kontrola potenciálnych zraniteľností. V prípade systémov, ktoré majú veľmi vysoké požiadavky na integritu, je potrebné pred vykonaním kritických postupov čistenia dôkladne zvážiť potenciálnu zraniteľnosť a riziko.

Záverečná analýza

V tomto kroku sa najprv zvažujú všetky dovtedy prijaté kroky (diskutované vyššie) a posúdenie zraniteľností, ktoré predstavujú potenciálne riziká. Okrem toho tester odporúča eliminovať zraniteľné miesta a riziká. V prvom rade musí tester zabezpečiť transparentnosť testov a objavené zraniteľnosti.

Príprava správy

Príprava správy by mala začať všeobecnými testovacími postupmi a následne analyzovať slabé miesta a riziká. Vysoké riziká a kritické zraniteľné miesta by mali byť uprednostňované, za ktorými by malo nasledovať nižšie poradie.

Pri dokumentovaní záverečnej správy je však potrebné zvážiť nasledujúce body:

  • Všeobecný prehľad penetračného testovania.
  • Podrobné informácie o každom kroku a informácie zhromaždené počas testu perom.
  • Podrobné informácie o všetkých objavených zraniteľnostiach a rizikách.
  • Podrobnosti o čistiacich a upevňovacích systémoch.
  • Návrhy pre budúcu bezpečnosť.

Posledných pár rokov bolo bohatých na udalosti, ktoré dramaticky zvýšili záujem verejnosti o tému hackerských útokov. Hackerský škandál systému Demokratickej strany USA, narušenie energetických systémov infraštruktúry ministerstva financií a ministerstva financií Ukrajiny, ransomvérové ​​vírusy, ktoré nielen šifrujú súbory, ale blokujú aj prevádzku priemyselných a zdravotníckych zariadení, MIRAL, a obrí botnet domácich zariadení, ktoré nechali bez komunikácie polovicu USA a Libérie, zloduchov, masívne vyvracajúce banky, ako vlkov bezbranných oviec... Dokonca aj SWIFT je napadnutý! Filmoví geekskí hackeri sa stali súčasťou reality miliárd ľudí.

Je celkom prirodzené, že podnikanie dnes primárne investuje zdroje do praktickej bezpečnosti, na rozdiel od formálnej implementácie regulačných požiadaviek s minimálnymi prostriedkami. A je tiež prirodzené, že si chce overiť, ako efektívne chráni vstavaný bezpečnostný systém pred sieťovými žralokmi.

Tentokrát sme sa rozhodli zamerať výlučne na praktické aspekty informačnej bezpečnosti (IS) súvisiace s počítačovými útokmi a priamou ochranou proti nim. Za hackovanie vykonávané „bielymi klobúkmi“, t.j. špecialistov, ktorí legálne napodobňujú počínanie votrelcov, sa používa termín „penetračné testovanie“ (penetračný test, pentest). Pod týmto pojmom sa skrýva niekoľko oblastí bezpečnostného výskumu naraz a každá z nich má svojich úzkych špecialistov. V článku pochopíme, čo je penetračný test, prečo je potrebný a kde je hranica medzi hackerským útokom a penetračným testovaním.

Pentest je v podstate jedným z typov auditu informačnej bezpečnosti. A to je jeho hlavný rozdiel od skutočného hacku. Hacker hľadá najkratšiu cestu na ovládanie systémov obete. Ak sa na obvode nájde diera, útočník sa zameria na zaistenie a rozvinutie útoku dovnútra. A pentester, ktorý dostal príkaz externe otestovať sieť, musí dôkladne preskúmať hostiteľa po hostiteľovi, aj keď už bolo nájdených veľa dier. Ak sú hostitelia rovnakého typu (napríklad 1000 rovnakých pracovných staníc), výskumník samozrejme môže urobiť kontrolnú vzorku, ale je neprijateľné preskočiť zásadne odlišné systémy. Pre zákazníka je to asi najjednoduchší spôsob, ako identifikovať nekvalitný pentest.

Pentest nenahrádza plnohodnotný audit IS. Vyznačuje sa úzko zameraným pohľadom na skúmané systémy. Pentest sa v podstate zaoberá dôsledkami, a nie príčinami nedostatkov informačnej bezpečnosti. Prečo to vôbec vykonávať? Keď priemysel uvoľní nový model vojenského vybavenia, inžinieri starostlivo vypočítajú vlastnosti brnenia, charakteristiky zbraní, ale pri vojenskom prijatí sa vybavenie stále presúva na cvičisko, strieľa sa naň, podkopáva atď. Experiment je kritériom pravdy. Pentest nám umožňuje pochopiť, či sú naše procesy informačnej bezpečnosti také dobré, ako si myslíme, či sú systémy ochrany spoľahlivé, či je konfigurácia na serveroch správna, či rozumieme ceste, ktorou sa skutočný hacker vyberie. Niekto by teda mohol nadobudnúť dojem, že pentest je potrebný pre spoločnosti, ktoré už do informačnej bezpečnosti veľa investovali. Teoreticky je to pravda, ale v praxi je to často úplne inak.

Prišiel som s nasledujúcim pentestovým vzorcom:

Prieskum je najzrejmejšou časťou penetračného testu. Ako vo filme: podivní chlapíci v mikinách v noci rozbíjajú IT obranu. V skutočnosti je všetko často prozaickejšie, ale tento obrázok umožňuje pentesterom nedodržiavať firemný dress code.

Správa zvyčajne nie je najobľúbenejšou časťou práce pre pentesterov, ale je kritická. Objednávateľ diela musí dostať podrobný popis všetkých úspešných aj neúspešných pokusov o prienik, jasný popis zraniteľností a hlavne odporúčania na ich odstránenie. Do poslednej časti je racionálne zapojiť špecializovaných špecialistov na informačnú bezpečnosť, pretože vedieť to rozbiť neznamená vedieť to správne a bezpečne opraviť v realite firemnej IT infraštruktúry.

A poslednou zložkou, pre ktorú sa často organizuje celý pentest, je šou. Takýto audit je z hľadiska prehľadnosti rádovo lepší ako ktorýkoľvek iný, najmä pre neprofesionálov. Vedeniu spoločnosti tak možno najlepšie formou prístupnou aj neodborníkom demonštrovať nedostatky informačnej bezpečnosti. Krátke (na niekoľkých stranách) Executive Summary so skenom pasu generálneho riaditeľa, titulnej strany dôvernej správy a zákazníckej základne môže byť užitočnejšie pre informačnú bezpečnosť v spoločnosti ako celá 200-stranová správa, ktorá nasleduje. Pentesty si preto často objednávajú firmy, kde sa informačná bezpečnosť doteraz veľmi nezaoberala a biznis, a častokrát aj IT, nechápe závažnosť existujúcich rizík.

Možnosti testu

Pentesty možno klasifikovať rôznymi spôsobmi. Zamerajme sa len na tie, ktoré majú praktickú hodnotu pri konfigurácii pentestu pre seba.

Cieľ útoku stanovený zákazníkom sa môže značne líšiť od pentestu k pentestu. „Stačí nás hacknúť“ zvyčajne znamená prevziať kontrolu nad IT infraštruktúrou (práva správcu domény, sieťové vybavenie), kompromitovať obchodné systémy a dôverné informácie. A sú tu úzko zacielené pentesty. Napríklad v rámci certifikácie bezpečnosti dát karty PCI DSS je cieľom každoročného povinného pentestu kompromitovať dáta na karte. Tu sa dá hneď v prvý deň práce úplne zachytiť sieť banky, no ak nepadne posledná bašta s tajnými údajmi, organizácia úspešne prejde testom.

Znalostný model systému určuje východiskovú polohu pentesteru. Od úplných informácií o systéme (Biely box) až po jeho úplnú absenciu (Black box). Často sa rozlišuje aj stredná možnosť (Grey box), keď napríklad pentester napodobňuje akcie neprivilegovaného používateľa, ktorý má nejaké údaje o systéme. Môže to byť obyčajný úradník, partnerská spoločnosť, klient s prístupom k osobnému účtu a pod. White box je skôr audit ako klasický pentest. Používa sa, keď je potrebné podrobne preštudovať zabezpečenie v úzkom priestore. Testuje sa napríklad nový zákaznícky portál. Výskumník má k dispozícii všetky informácie o systéme, často zdrojový kód. To pomáha detailne pochopiť systém, ale len ťažko napodobňuje skutočné útoky. Zákazníci Black Box Pentest chcú získať úplnú imitáciu hackerského útoku, ktorý nemá dôverné informácie o systéme.

Znalostný model sa silne prelína s konceptom modelu páchateľa. Kto na nás útočí: externý hacker, insider, administrátor? Rozdelenie je veľmi podmienené. Kompromitácia pracovnej stanice bežného používateľa alebo dodávateľa z technického hľadiska okamžite zmení externého hackera na interného votrelca.

Úroveň informovanosti špecialistov na informačnú bezpečnosť určuje, kto a do akej miery o práci vie. Často sa okrem vybavenia testuje aj personál, takže prácu koordinuje riaditeľ informačnej bezpečnosti či IT a správcovia veria, že bojujú so skutočnými hackermi, ak si, samozrejme, útok vôbec všimnú. Takéto kybernetické cvičenia umožňujú posúdiť nielen prítomnosť zraniteľností v systémoch, ale aj vyspelosť procesov informačnej bezpečnosti, úroveň interakcie medzi oddeleniami atď. Úplným opakom je napodobňovanie akcií útočníka za účelom výcviku ochranných systémov. V tomto prípade pentester pracuje na malej ploche a administrátori zaznamenávajú reakcie bezpečnostných nástrojov a IT systémov, upravujú nastavenia, pripravujú pravidlá pre SIEM atď. Napríklad sa simuluje situácia, keď hacker už prenikol do uzavretého segmentu. Ako zvýši svoje privilégiá v systémoch? Pentester postupne vypracuje všetky jemu známe útočné vektory pre čo najkompletnejšie školenie bezpečnostných systémov.

Typy útokov

Koľko pentesterov, toľko klasifikácií typov útokov. Nižšie uvediem klasifikáciu základných útokov, ktoré používame. Samozrejme, najkompletnejší pentest je útok všetkými možnými smermi. Ale obmedzenia rozpočtu, času, rozsahu a úloh pentestu vás nútia vybrať si.

Pentest externej infraštruktúry - analýza perimetra siete z internetu. Pentester sa snaží kompromitovať dostupné sieťové služby a ak je to možné, rozvinúť útok vo vnútri siete. Mnohí veria, že ide o napodobeninu skutočného útoku, ktorého cieľom je preniknúť zvonku do siete spoločnosti. V skutočnosti dnes útočníci v 80-90% prípadov prekonávajú sieťový perimeter pomocou metód sociálneho inžinierstva. Nie je potrebné preniknúť do múrov pevnosti, ak je pod nimi nádherný tunel. Často sú tu však diery. Nedávno sme napríklad realizovali práce pre veľkú leteckú továreň, v ktorej skener aj v štádiu automatickej analýzy zachytil heslo pre systém diaľkového ovládania pre automatizované systémy riadenia procesov. Nedbalosť zhotoviteľa, ktorý zabudol vypnúť vzdialený prístup, umožnila hackerovi rádovo zvýšiť tlak v potrubiach s technickými kvapalinami. So všetkými dôsledkami, doslova a do písmena.

Pentest je ako prehliadka u zubára: je lepšie ju robiť pravidelne, aby ste predišli problémom v počiatočných štádiách.

Tieň IT

K prienikom často dochádza pomocou systémov, ktoré nepatria do rámca IT. Všetky servery na perimetri boli aktualizované, ale zabudli na IP telefóniu alebo video monitorovací systém. A hacker je už vnútri. Pre takúto infraštruktúru, ktorá vypadla z pohľadu administrátorov, existuje špeciálny výraz – Shadow IT. Podľa Gartneru sa do roku 2020 až tretina všetkých hackingov bude odohrávať pomocou Shadow IT. Podľa nášho názoru je to celkom realistické hodnotenie.

Napríklad náš pentester jedného dňa našiel na dokonale chránenom perimetri banky neaktualizované systémy call centra, cez ktoré sa im podarilo za 2 dni úplne kompromitovať všetky hlavné bankové AS. Ukázalo sa, že za ne nie je zodpovedné IT oddelenie, ale telefonisti. V inom prípade bola vstupným bodom pre penetračný test sieť sekretárok na recepcii, úplne izolovaná od firemnej. Aké bolo prekvapenie objednávateľa diela, keď po pár dňoch pentester informoval o úplnom zachytení siete. Podarilo sa mu nabúrať do neaktualizovanej tlačiarne, nahrať do nej shell a získať prístup k VLAN na správu tlačiarne. Tým, že ich všetky skompromitoval, pentester získal prístup do všetkých kancelárskych segmentov spoločnosti.

Interný test penetrácie infraštruktúry napodobňuje činnosť zasväteného používateľa alebo infikovaného hostiteľa v rámci siete. Sieť by mala byť postavená tak, aby kompromitácia jednotlivých pracovných staníc alebo serverov neviedla k úplnému pádu obrany. V skutočnosti vo viac ako polovici prípadov z našej praxe neuplynie od práv „prístup k sieťovej zásuvke“ po „správcu domény“ viac ako jeden pracovný deň.

Sieť spoločnosti môže byť veľmi veľká, takže v niektorých prípadoch by mal zákazník jasne definovať ciele útoku pre pentester. Napríklad prístup k SAP a finančným dokumentom označeným ako „Dôverné“. To vám umožní stráviť čas pentestera racionálnejšie a simulovať skutočný hackerský útok vyrobený na mieru.

Webové zdroje predstavujú z pohľadu penetračného testovania samostatný svet s obrovskou množinou rôznych technológií a špecifických útokov. Je jasné, že web možno chápať ako čokoľvek, čo má prístup do siete. Tu máme na mysli rôzne webové stránky, portály a špecifické API dostupné z webu. Prax ukazuje, že v priemere firme zaberie analýza celého perimetra siete menej času ako jedna webová stránka, najmä ak sú tam nejaké interaktívne prvky, osobný účet atď. Tento smer zažíva skutočný boom, predovšetkým vďaka rozvoju elektronického podnikania bánk a masovému prístupu retailu na internet.

Hlavným výsledkom útoku na webový zdroj je zvyčajne kompromitácia údajov z DBMS a možnosť útoku na klientov (napríklad rôzne typy XSS sa nachádzajú na stránkach každej druhej banky). O niečo menej často kompromitácia webového servera umožňuje prienik do samotnej siete spoločnosti, ale často, ak sú hľadané údaje už kompromitované, nemusí to byť pre útočníka potrebné.

Pri analýze webu je dôležité skontrolovať nielen technickú časť, ale aj samotnú logiku práce a implementáciu biznis funkcií. Doteraz môžete niekedy získať 99% zľavu v internetovom obchode alebo použiť bonusové body niekoho iného miernou úpravou riadku dotazu servera v paneli s adresou.

Útoky na webe je možné vykonávať aj v rámci siete, pretože na bezpečnosť vnútorných zdrojov sa väčšinou nemyslí, no v skutočnosti väčšina hackerov najskôr útočí na infraštruktúru, keďže je to najkratšia cesta k správcovi domény. Web je zachytený, keď nič iné nepomohlo alebo keď sa potrebujete dostať do izolovaných segmentov siete.

Rast záujmu o testovanie odolnosti voči DDoS bol obzvlášť viditeľný v posledných rokoch. Informácie o veľkých útokoch sa neustále objavujú v tlači, ale záležitosť sa neobmedzuje len na ne. V segmente online maloobchodu sú napríklad počas vrcholov predaja (pred sviatkami) útoky takmer nepretržité. Čo robiť s primitívnymi útokmi zameranými na vyčerpanie komunikačného kanála alebo zdrojov servera odosielaním obrovského množstva dát je vo všeobecnosti jasné. Zaujímavejšie je študovať odolnosť zdroja voči útokom na úrovni aplikácie. Dokonca aj jeden klient, ktorý zadá relatívne malý počet špecifických požiadaviek na webovú stránku, ju môže znížiť. Napríklad špecifické dopyty v poli vyhľadávania na stránke môžu úplne položiť back-end.

Sociálne inžinierstvo, t.j. používanie ľudskej nepozornosti, neopatrnosti alebo nedostatočného tréningu na hackovanie sa dnes stalo najpopulárnejším spôsobom prieniku do firemnej siete.

Okrem toho existuje názor, že z tohto šrotu neexistuje žiadny príjem. Tento výraz v sebe spája obrovské množstvo techník vrátane odosielania podvodných správ poštou, telefónom a osobnou komunikáciou na získanie prístupu k objektu alebo systémom, rozhadzovanie flash diskov so škodlivou prílohou v blízkosti kancelárie obete a mnoho ďalších.

Útoky na Wi-Fi sa mylne označujú ako interné penetračné testy. Ak váš smartfón nezachytí firemnú Wi-Fi mimo brány, nezaručuje to, že sa k nej útočníci nedostanú. Smerová anténa eBay v hodnote 100 dolárov nám umožnila pracovať z viac ako kilometra vzdialeného prístupového bodu. V rámci penetračného testu sa Wi-Fi nie vždy považuje za vstupný bod do siete. Častejšie sa používa na útoky na používateľov. Napríklad pentester zaparkuje pri vchode do podniku pred začiatkom pracovného dňa a nasadí sieť s rovnakým názvom (SSID) ako podniková Wi-Fi. Zariadenia v taškách a vreckách zamestnancov sa pokúšajú pripojiť k známej sieti a odovzdať v nej autentifikáciu ... doménové meno a heslo. Pentester potom použije tieto úniky na prístup k používateľskej pošte, serverom VPN atď.

Analýza mobilných aplikácií pre útočníka je zjednodušená tým, že sa dajú jednoducho stiahnuť z obchodu a podrobne preskúmať v sandboxe, pričom sa obnoví zdrojový kód. Pri bežných webových zdrojoch sa o takomto luxuse môže len snívať. Preto je tento vektor útoku dnes taký populárny. Mobilní klienti sú dnes už veľmi rozšírení nielen medzi bankami a retailom. Sú prepustení všetci za sebou a bezpečnosť je to posledné, na čo myslia.

Štúdium mobilnej aplikácie možno bežne rozdeliť do 3 komponentov: analýza obnoveného zdrojového kódu pre bezpečnostné diery, štúdium aplikácie v „sandboxe“ a analýza metód interakcie medzi aplikáciou a serverom (obsah balíky, API, zraniteľnosti samotného servera). Nedávno sme mali prípad, keď back-end API aplikácie mobilného bankovníctva fungovalo tak, že bolo možné vytvoriť balík, ktorý spôsobí prevod ľubovoľného množstva peňazí z akéhokoľvek bankového účtu na akýkoľvek iný účet. A toto nebola štúdia pred spustením aplikácie – tá sa vyrábala už dlho. Mnoho podvodných schém sa dnes realizuje aj pomocou mobilných aplikácií, keďže na boj proti podvodom sa zabúda ešte častejšie ako na informačnú bezpečnosť.

Nie je úplne správne považovať analýzu zdrojového kódu za pentest, najmä ak zákazník predkladá zdrojové kódy na analýzu v otvorenej forme. Ide skôr o audit zabezpečenia aplikácie v bielej skrinke. Táto práca sa však často vykonáva v spojení s penetračným testovaním, aby sa zabezpečila vyššia úroveň detekcie zraniteľnosti, takže ich tu stojí za zmienku. Pentest vám umožňuje potvrdiť alebo vyvrátiť nedostatky nájdené v analýze kódu (nakoniec, v konkrétnej infraštruktúre nie je možné skutočne využiť všetky bezpečnostné problémy). To výrazne znižuje počet falošných poplachov, s ktorými sa prehrešuje analýza kódu, najmä automatizovaná. Zároveň sa v dôsledku analýzy kódu často vyskytujú diery, o ktorých pentester neuhádol.

Podľa našich skúseností si najčastejšie objednávajú analýzu kódu mobilných aplikácií a webových služieb, keďže sú najviac náchylné na útoky.

Taký pentest ako prehliadka u zubára: je lepšie robiť to pravidelne, aby ste predišli problémom v počiatočných štádiách

Pentest limity

Hlavnými obmedzeniami, ktoré odlišujú pentest od skutočného útoku a sťažujú bielym klobúkom, sú trestný zákonník a etika. Pentester napríklad najčastejšie nemôže útočiť na partnerské systémy zákazníka, domáce počítače zamestnancov, infraštruktúru telekomunikačných operátorov, nepoužíva zastrašovanie, vyhrážky, vydieranie, podplácanie a iné veľmi účinné metódy zločincov v sociálnom inžinierstve. O to presvedčivejšie sú výsledky úspešného prieniku v rámci „čistého“ pentestu. Ak váš pentester v rámci práce poruší zákon, desaťkrát si rozmyslite, či takého človeka pustíte do svojich kľúčových systémov.

Konečne

Pentest, podobne ako fyzické vyšetrenie, väčšina noriem odporúča absolvovať aspoň raz ročne. Zároveň nie je zlé pravidelne meniť špecialistov, ktorí prácu vykonávajú, aby sa predišlo rozmazaniu pohľadu a posúdili bezpečnosť z rôznych uhlov pohľadu. Každý špecialista alebo tím totiž do určitej miery tvorí nejakú špecializáciu.

Pentest predstavuje pre bezpečnostný personál čas, náklady a stres, ale je ťažké nájsť vizuálnejší a realistickejší spôsob hodnotenia bezpečnosti IT infraštruktúry. V každom prípade je lepšie, ak dieru nájde zmluvný špecialista ako hacker. Koniec koncov, prvý často končí pre službu informačnej bezpečnosti pridelením ďalších finančných prostriedkov na bezpečnosť a druhý - hľadaním nového zamestnania.

Penetračné testovanie(jarg. pentest) - metóda hodnotenia bezpečnosti počítačových systémov alebo sietí pomocou simulácie útoku narušiteľa. Proces zahŕňa aktívnu analýzu systému z hľadiska potenciálnych zraniteľností, ktoré by mohli spôsobiť poruchu cieľového systému alebo spôsobiť úplné odmietnutie služby. Analýza sa vykonáva z pohľadu potenciálneho útočníka a môže zahŕňať aktívne využívanie slabých miest systému.

Objektmi testovania môžu byť jednak samostatné informačné systémy, napr.: CMS (systém na správu obsahu), CRM (systém riadenia vzťahov so zákazníkmi), internetový klient-banka, ako aj celá infraštruktúra ako celok: perimeter siete, bezdrôtové siete, interné resp. podnikovej siete, ako aj vonkajšieho perimetra.

Výzva na penetračné testovanie- hľadať všetky možné známe softvérové ​​zraniteľnosti (softvér), nedostatky v politike hesiel, nedostatky a jemnosti nastavení konfigurácie IS. Počas takéhoto testu tester zariadi pseudoútok na podnikovú sieť, zinscenuje akcie skutočných votrelcov alebo útok vykonaný škodlivým softvérom bez priamej účasti samotného testera. Účelom týchto testov je: identifikovať slabé miesta v ochrane podnikovej siete pred takýmito útokmi a eliminovať zraniteľnosti zistené pri pseudoútokoch.

Penetračné testovanie sa zvyčajne delí na BlackBox, WhiteBox a GreyBox:

čierna krabica- "čierna krabica". Špecialista má len verejne dostupné informácie o účele štúdie, jej sieti a parametroch. Táto možnosť sa čo najviac približuje skutočnej situácii. Ako počiatočné údaje na testovanie sa interpretovi poskytne iba názov spoločnosti alebo jej webovej stránky a interpret si bude musieť zistiť všetky ostatné informácie, ako sú IP adresy používané spoločnosťou, webové stránky, miesta výstupu. kancelárií a pobočiek spoločnosti na internet.

biela krabica- úplný opak BlackBoxu. V tomto prípade má špecialista k dispozícii maximum informácií, ktoré sú pre neho potrebné, až po administratívny prístup k akémukoľvek serveru. Táto metóda vám umožňuje získať čo najúplnejšiu štúdiu o zraniteľnosti objektu. S WhiteBoxom nebude musieť interpret tráviť čas zbieraním informácií, mapovaním siete a inými úkonmi pred začatím testovania a skráti si aj čas samotného testovania, pretože. niektoré kontroly sa jednoducho robiť nemusia. Výhodou tejto metódy je komplexnejší a integrovanejší prístup k štúdiu. Nevýhodou je, že sa menej približuje situácii skutočného útoku útočníka.

šedá krabica- Toto je stredná možnosť medzi WhiteBoxom a BlackBoxom, keď účinkujúci koná podľa možnosti BlackBox a pravidelne požaduje informácie o testovanom systéme, aby skrátil čas na výskum alebo efektívnejšie uplatnil svoje úsilie. Táto možnosť je najobľúbenejšia, pretože umožňuje testovanie bez toho, aby ste trávili príliš veľa času zhromažďovaním informácií a viac času na hľadanie zraniteľností, pričom táto možnosť zostáva dostatočne blízko skutočnej situácii útočníka.

1. VLASTNOSTI PRENIKANIA DO VZDIALENÉHO POČÍTAČOVÉHO SYSTÉMU.

Akékoľvek objektívne a úplné penetračné testovanie má množstvo funkcií a musí sa vykonávať s prihliadnutím na odporúčania a pravidlá.

Pravidlá a rámec pre informačné penetračné testovanie sú uvedené v metodikách OSSTMM a OWASP. Následne je možné získané údaje ľahko prispôsobiť na posúdenie zhody s akýmikoľvek priemyselnými štandardmi a „svetovými osvedčenými postupmi“, ako sú Cobit, normy série ISO/IEC 2700x, odporúčania CIS/SANS/NIST/atď a štandard PCI DSS.

Samotné technologické údaje nebudú postačovať na vykonanie takéhoto hodnotenia ako celku. Úplné posúdenie si vyžaduje rozhovory so zamestnancami rôznych oddelení hodnotenej spoločnosti, analýzu administratívnej dokumentácie, rôznych procesov informačných technológií (IT) a informačnej bezpečnosti (IS) a mnohé ďalšie.

Čo sa týka penetračného testovania v súlade s požiadavkami štandardu informačnej bezpečnosti v odvetví platobných kariet, veľmi sa nelíši od bežného testovania vykonávaného metódami OSSTMM a OWASP. Okrem toho štandard PCI DSS odporúča dodržiavať pravidlá OWASP pri vykonávaní pentestu (AsV) aj auditu (QSA).

Hlavné rozdiely medzi testovaním PCI DSS a penetračným testovaním v širšom zmysle slova sú nasledovné:

  • Norma neupravuje (a teda ani nevyžaduje) útoky pomocou sociálneho inžinierstva.
  • Všetky vykonané kontroly by mali čo najviac minimalizovať hrozbu odmietnutia služby (DoS). Priebežné testovanie by preto malo prebiehať metódou „šedej skrinky“ s povinným upozornením správcov príslušných systémov.
  • Hlavným účelom takéhoto testovania je pokus o implementáciu
    neoprávnený prístup k údajom platobnej karty (PAN, Meno držiteľa karty a pod.).

Metóda GrayBox vám umožňuje znížiť riziko odmietnutia služby pri vykonávaní takejto práce vo vzťahu k informačným zdrojom, ktoré fungujú 24 hodín denne, 7 dní v týždni.

Vo všeobecnosti musí penetračné testovanie PCI spĺňať nasledujúce kritériá:

  • Článok 11.1(b) – Analýza bezpečnosti bezdrôtovej siete
  • Odsek 11.2 – Skenovanie informačnej siete z hľadiska zraniteľností (AsV)
  • 11.3.1 - Vykonávanie kontrol na sieťovej vrstve (sieťová vrstva
    penetračné testy)
  • Článok 11.3.2 – Skúšky penetrácie aplikačnou vrstvou

Stanovenie hraníc štúdia. V prvom rade je potrebné identifikovať hranice penetračného testovania, určiť a dohodnúť postupnosť vykonávaných úkonov. V najlepšom prípade je možné získať mapu siete od oddelenia informačnej bezpečnosti, ktorá schematicky ukazuje, ako centrum spracovania interaguje s celkovou infraštruktúrou. V horšom prípade budete musieť komunikovať so správcom systému, ktorý pozná svoje nedostatky a získavanie komplexných údajov o informačnom systéme bude sťažené jeho neochotou zdieľať svoje IP údaje. Tak či onak, na vykonanie penetračného testu PCI DSS musíte získať minimálne nasledujúce informácie:

  • segmentácia siete (používateľská, technologická, DMZ, spracovanie atď.);
  • firewall na hraniciach podsiete (ACL/ITU);
  • použité webové aplikácie a DBMS (testovacie aj produktívne);
  • používané bezdrôtové siete;
  • akékoľvek bezpečnostné detaily, ktoré je potrebné vziať do úvahy v priebehu prieskumu (napríklad zablokovanie účtov pre N nesprávnych pokusov o overenie), funkcie infraštruktúry a všeobecné želania počas testovania.

2. FÁZY PRENIKNÉHO TESTOVANIA

Zvážte možné fázy penetračného testovania. V závislosti od dostupných informácií (BlackBox / WhiteBox / GreyBox) sa môže postupnosť akcií líšiť: zhromažďovanie údajov, skenovanie siete, hackovanie systému, malvér, sociálne inžinierstvo.

2.1 Zber údajov.

Zber údajov z otvorených zdrojov informácií. Otvorené zdroje sú zdroje informácií, ku ktorým sa pristupuje legálne, na zákonných základoch. Hľadanie potrebných informácií pomocou otvorených zdrojov si osvojili mnohé civilné a vojenské štruktúry pôsobiace v oblasti spravodajskej a priemyselnej špionáže.

Prístup k potrebným informáciám na internete je možné realizovať rôznymi spôsobmi. Môžu to byť kliknutia na hypertextové odkazy, vyhľadávanie v rôznych adresároch (webové stránky, blogy atď.), Môžete si prezerať výsledky vyhľadávania. Na určité účely sa to bez vyhľadávania v špecializovaných databázach nezaobíde.

Informácie môžu poskytovať aj interné adresy URL stránok, e-mailové adresy, telefónne čísla, faxy, server DNS, rozsah adries IP, informácie o smerovaní.

S rozvojom internetu sa služby WHOIS rozšírili. Whois (z anglického „kto je“ - „kto je“) je sieťový protokol založený na protokole TCP. Jeho hlavným účelom je získať informácie o „registrátorovi“ (vlastníkovi domény) a „registrátorovi“ (organizácii, ktorá doménu zaregistrovala), názvoch serverov DNS, dátume registrácie a dátume expirácie. Záznamy o IP adresách sú zoskupené do rozsahov (napríklad 8.8.8.0 – 8.8.8.255) a obsahujú informácie o organizácii, ktorej je tento rozsah delegovaný.

2.2 Sieťové skenovanie.

Sieťové skenovanie možno rozdeliť na komponenty:

1. Skenovanie rozsahu adries IP na určenie „živých“ hostiteľov

2. Skenovanie portov

3. Objavovanie služieb a ich verzií

4. Skenovaním zistite operačný systém

5. Skenovanie zraniteľností

1. Skenovanie rozsahu adries IP.

Základnou úlohou pri skúmaní akejkoľvek siete je zredukovať súbor rozsahov IP na zoznam aktívnych hostiteľov. Skenovanie každého portu každej IP adresy je pomalé a zbytočné. Záujem o výskum určitých hostiteľov je do značnej miery určený cieľmi skenovania. Úlohy administrátorov pri zisťovaní živých hostiteľov v sieti je možné vykonať pomocou jednoduchého ICMP pingu, zatiaľ čo ľudia testujúci schopnosť siete odolávať útokom zvonku musia používať rôzne sady pingov na obídenie firewallu.

Úloha zisťovania hostiteľov sa niekedy označuje ako kontrola ping, ale je oveľa lepšia ako používanie bežných ICMP dotazov spojených so všadeprítomnými nástrojmi ping. Uprednostňuje sa skenovanie siete pomocou ľubovoľných kombinácií viacportových požiadaviek TCP SYN/ACK, UDP a ICMP. Účelom všetkých týchto požiadaviek je prijímať odpovede, ktoré naznačujú, že adresa IP je momentálne aktívna (používa ju hostiteľ alebo sieťové zariadenie). Vo väčšine sietí je v danom čase aktívnych iba malé percento adries IP. To platí najmä pre adresné priestory ako 10.0.0.0/8. Takéto siete majú 16 miliónov IP adries, no sú chvíle, keď ich používajú spoločnosti s nie viac ako tisíckou počítačov. Funkcia zisťovania hostiteľa dokáže nájsť tieto stroje v tomto obrovskom mori IP adries.

2. Skenovanie portov.

Existuje mnoho rôznych techník skenovania portov a pre konkrétnu úlohu sa vyberie tá vhodná (alebo kombinácia viacerých). Zvážte najpopulárnejšie techniky skenovania:

skenovanie TCP SYN
SYN je predvolený a najobľúbenejší typ skenovania. Dá sa rýchlo spustiť, dokáže skenovať tisíce portov za sekundu pri rýchlom pripojení a neprekážajú mu obmedzujúce firewally.

Rôzne typy skenovania UDP
Zatiaľ čo väčšina internetových služieb používa protokol TCP, široko používané sú aj služby UDP. Tri najpopulárnejšie sú DNS, SNMP a DHCP (pomocou portov 53, 161/162 a 67/68). Pretože Pretože skenovanie UDP je vo všeobecnosti pomalšie a zložitejšie ako TCP, mnohí odborníci na bezpečnosť tieto porty ignorujú. To je chyba, pretože existujú služby UDP, ktoré využívajú útočníci.

TCP NULL, FIN a Xmas Scan
Tieto tri typy skenovania používajú jemnú medzeru v TCP RFC na oddelenie otvorených a uzavretých portov.\

Skenovanie TCP ACK
Tento typ skenovania je veľmi odlišný od všetkých ostatných v tom, že nedokáže rozpoznať otvorený port. Používa sa na identifikáciu pravidiel brány firewall, či sú stavové alebo nie, a na určenie, ktoré porty filtrujú.

3. Objavovanie služieb a ich verzií.

Skenovanie vzdialeného systému môže odhaliť, že porty 25/tcp, 80/tcp a 53/udp sú otvorené. Pomocou informácií môžete zistiť, že tieto porty pravdepodobne zodpovedajú poštovému serveru (SMTP), webovému serveru (HTTP) a doménovému serveru (DNS). Tieto informácie sú zvyčajne správne, pretože prevažná väčšina služieb využívajúcich port TCP 25 sú v skutočnosti poštové servery. Nemali by ste sa však úplne spoliehať na tieto informácie. Ľudia môžu prevádzkovať služby pomocou neštandardných portov a aj to robia.

Po zistení portov TCP a/alebo UDP sú tieto porty identifikované, aby bolo možné určiť, ktoré aplikácie (služby) ich používajú. Pomocou databázy požiadaviek na volanie rôznych služieb a zodpovedajúcich výrazov na rozpoznávanie a analýzu odpovedí môžete určiť protokoly služby (napr. FTP, SSH, Telnet, HTTP), názov aplikácie (napr. ISC BIND, Apache httpd, Solaris telnetd) , číslo verzie, názov hostiteľa, typ zariadenia (napr. tlačiareň, router), rodina OS (napr. Windows, Linux) a niekedy aj rôzne detaily, ako napríklad či je možné sa pripojiť k X serveru, verzia protokolu SSH alebo používateľské meno.

4. Skenovaním zistite operačný systém.

OS na vzdialenom systéme je možné určiť na základe analýzy fungovania zásobníka TCP/IP. Séria TCP a UDP paketov je odoslaná vzdialenému hostiteľovi a prakticky každý bit v odpovedi je preskúmaný. Po vykonaní mnohých testov, ako je vzorkovanie TCP ISN, podpora možností TCP, vzorkovanie IP ID a analyzovanie trvania inicializačnej procedúry, sa výsledky porovnajú s databázou obsahujúcou známe sady typických výsledkov pre rôzne operačné systémy a ak sa nájdu zhody , možno urobiť záver o nainštalovanom OS.

5. Skenovanie zraniteľnosti.

Skenovanie zraniteľnosti je plne alebo čiastočne automatizovaný proces zhromažďovania informácií o dostupnosti sieťového uzla informačnej siete (osobné počítače, servery, telekomunikačné zariadenia), sieťových službách a aplikáciách používaných na tomto uzle a ich identifikácii, portoch používaných týmito službami. a aplikácií, s cieľom určiť existujúce alebo možné zraniteľnosti.

2.3 Hacknutie systému.

Úspešnosť implementácie jedného alebo druhého hackerského algoritmu v praxi do značnej miery závisí od architektúry a konfigurácie konkrétneho operačného systému, ktorý je predmetom tohto hackovania.

Existujú však prístupy, ktorým môže byť vystavený takmer každý operačný systém:

  1. Krádež hesla.
  2. Monitorovanie užívateľa v čase jeho zadávania hesla, ktoré dáva právo pracovať s operačným systémom.
  3. Získanie hesla zo súboru, v ktorom bolo toto heslo uložené používateľom.
  4. Hľadanie hesiel, ktoré si používatelia často zapisujú na papier.
  5. Krádež externého nosiča informácií o hesle (disketa alebo elektronický kľúč, v ktorom je uložené heslo používateľa pre vstup do operačného systému).
  6. Kompletný zoznam všetkých možných hesiel.
  7. Výber hesla na základe frekvencie výskytu symbolov a bigramov, pomocou osobných slovníkov a najčastejšie používaných hesiel.
  8. Skenovanie pevných diskov počítača.
  9. Odvoz odpadu.
  10. Prekročenie oprávnenia (pomocou chýb v softvéri alebo v administrácii operačného systému výskumník získa oprávnenie, ktoré presahuje oprávnenie, ktoré mu bolo udelené podľa aktuálnej bezpečnostnej politiky).
  11. Spustenie programu ako používateľa s potrebnými oprávneniami alebo ako systémový program (ovládač, služba, démon atď.).
  12. Nahradenie dynamicky načítanej knižnice používanej systémovými programami alebo zmena premenných prostredia, ktoré popisujú cestu k takýmto knižniciam.
  13. Úprava kódu alebo údajov bezpečnostného subsystému samotného operačného systému.
  14. Denial of service (účelom tohto útoku je čiastočné alebo úplné vypnutie operačného systému).
  15. Zachytenie zdrojov (riadený program zachytí všetky zdroje dostupné v operačnom systéme a potom vstúpi do nekonečnej slučky).
  16. Bombardovanie požiadaviek (riadený program neustále posiela požiadavky do operačného systému, ktorých odozva vyžaduje zapojenie značných počítačových zdrojov).
  17. Využívanie chýb v softvéri alebo administrácii.

2.4 Škodlivý softvér.

Malvér sa veľmi často používa na získanie prístupu k infikovanému systému. Zvyčajne ide o malvér s funkciou zadné dvere zverejnené na zdroji na zdieľanie súborov pod zámienkou legitímneho programu.

Škodlivý softvér je softvér, ktorý je vyvinutý s cieľom získať neoprávnený prístup k počítačovým výpočtovým zdrojom, ako aj k údajom v ňom uloženým. Takéto programy sú navrhnuté tak, aby poškodili vlastníka informácií alebo počítača kopírovaním, skresľovaním, vymazávaním alebo nahrádzaním informácií.

Trójske kone sú škodlivé programy, ktoré vykonávajú činnosti, ktoré nie sú autorizované používateľom. Takéto akcie môžu zahŕňať:

  1. Odstraňujú sa údaje
  2. Blokovanie údajov
  3. Zmeňte údaje
  4. Kopírovanie údajov
  5. Spomalenie počítačov a počítačových sietí.

Trójske kone sú klasifikované podľa typu akcií, ktoré vykonávajú na počítači.

  1. Zadné vrátka. Backdoor Trojan poskytuje útočníkom možnosť vzdialene ovládať infikované počítače. Takéto programy umožňujú autorovi vykonať na infikovanom počítači akúkoľvek akciu vrátane odosielania, prijímania, otvárania a odstraňovania súborov, zobrazovania údajov a reštartovania počítača. Backdoor trójske kone sa často používajú na zoskupenie skupiny počítačov obetí do siete botnetov alebo zombie na kriminálne účely.
  2. Zneužíva. Exploits sú programy s údajmi alebo kódom, ktoré využívajú zraniteľnosť v aplikáciách bežiacich na počítači.
  3. rootkity . Rootkity sú programy určené na skrytie určitých objektov alebo akcií v systéme. Ich hlavným účelom je často zabrániť antivírusovému softvéru v detekcii škodlivého softvéru, aby sa predĺžil čas spustenia týchto programov na infikovanom počítači.

2.5 Sociálne inžinierstvo.

Na to, aby malvér skončil na napadnutej IP, sa využíva sociálne inžinierstvo. Sociálne inžinierstvo je metóda neoprávneného prístupu k informačným zdrojom na základe charakteristík ľudskej psychológie. Hlavným cieľom sociálnych inžinierov je získať prístup k zabezpečeným systémom s cieľom ukradnúť informácie, heslá, údaje o kreditných kartách atď. Objektom útoku nie je stroj, ale jeho operátor. Preto sú všetky metódy a techniky sociálneho inžinierstva založené na využívaní slabých stránok ľudského faktora.

Existuje niekoľko bežných techník a typov útokov, ktoré sociálni inžinieri používajú. Ale spoločným znakom všetkých týchto metód je zavádzanie, s cieľom prinútiť človeka vykonať nejaký úkon, ktorý mu neprospieva a je pre sociálneho inžiniera nevyhnutný. Na dosiahnutie požadovaného výsledku sociálny inžinier používa množstvo rôznych taktík: vydávanie sa za inú osobu, odvádzanie pozornosti, vynucovanie si psychického stresu atď. Konečné ciele klamania môžu byť tiež veľmi rôznorodé.

Techniky sociálneho inžinierstva:

  • Predbežné testovanie. Pretexting je súbor akcií realizovaných podľa určitého vopred pripraveného scenára (zámienky).
  • Phishing. Phishing (anglicky phishing, od fishing – fishing, fishing) je druh internetového podvodu, ktorého účelom je získať prístup k dôverným užívateľským údajom – prihlasovacím menám a heslám. Účelom phishingu je nezákonné získanie dôverných informácií.
  • Niečo za niečo. Quid pro quo (lat. Niečo za niečo- „to za to“) – v angličtine sa tento výraz zvyčajne používa vo význame „quid pro quo“. Často sa sociálny inžinier predstaví ako zamestnanec technickej podpory, ktorý hlási technické problémy na pracovisku zamestnanca a ponúka pomoc pri ich odstraňovaní.

Štúdia Programu informačnej bezpečnosti z roku 2003 ukázala, že 90 % kancelárskych pracovníkov je ochotných prezradiť dôverné informácie, ako napríklad heslá, za nejakú láskavosť alebo odmenu.

  • Trójsky kôň. Trójsky kôň je škodlivý program, ktorý používajú hackeri na zhromažďovanie, ničenie alebo úpravu informácií, narušenie počítača alebo používanie používateľských zdrojov na vlastné účely. Táto technika často využíva cieľovú zvedavosť, iné emócie lásky.

Organizácia pseudoútoku.

Na organizáciu pseudoútoku na počítačový systém používame softvérové ​​nástroje Súprava nástrojov sociálneho inžinierstva(SET) a Metasploit rámec(MFS). Tieto nástroje sú štandardne zahrnuté v distribúcii Backtrack 5, navrhnutý na testovanie možnosti hackovania systému a siete. Používame aj dva virtuálne stroje s operačnými systémami ako:Windows7 a zadná stopa 5.

generácia zadných vrátok. Pomocou SET vytvoríme backdoor s reverzným TCP a MFS vytvoríme handler (handler) na spracovanie paketov z vytvoreného backdooru, ktorý bude udržiavať komunikačný kanál medzi potenciálnym útočníkom a systémom, na ktorom sa backdoor spustí.

Všetky akcie sa vykonávajú v režime konzoly na OS Backtrack 5. Vytvorenie užitočného zaťaženia sa dosiahne pomocou pomôcky SET, str. Vytvorte a užitočné zaťaženie a lister

Vytvorenie užitočného zaťaženia s reverzným TCP (na vytvorenie spätnej väzby) sa vykonáva výberom položky 2 Windows obráteneTCP merač a potom bod 16 Backdoored Spustiteľný súbor. Táto operácia dokončí vytvorenie zadného vrátka. Keď ho vytvoríte, zadáte aj číslo portu, cez ktorý bude prebiehať spätná väzba. V priečinku / pentest/ zneužíva/ SET msf.exe sa vygeneruje na základe možností, ktoré sme vybrali.

Využite nastavenie. Exploit je navrhnutý tak, aby prijímal TCP požiadavky z vytvoreného backdooru. Jeho konfigurácia sa vykonáva spustením MFS a výberom obsluhy exploitu (poslucháča): použite exploit/multi/handler.

V dôsledku toho sa MFS prepne do kontextu obsluhy exploitu. Ďalšou úlohou je nakonfigurovať užitočné zaťaženie pre tento exploit. Keďže zadné vrátka sú orientované (vytvorené) pomocou Revers_TCP Meterpretor, informácie sa vymieňajú cez pripojenie TCP: nastaviť/ užitočné zaťaženie okná/ merač/ spiatočky_ TCP. Okrem toho je potrebné v možnostiach špecifikovať Local Host (ip-adresa potenciálneho útočníka).

Spustenie handlera vedie do kontextu meterpretor, kde budú zastúpené relácie, ku ktorým sa môžete pripojiť. Relácia sa objaví po spustení backdoor na vzdialenom stroji, čo sa v niektorých prípadoch v praxi dosahuje prostredníctvom sociálneho inžinierstva.

Na simuláciu tohto procesu sa zadné vrátka spustia na druhom virtuálnom počítači. Potom bude relácia k tomuto systému dostupná v meterpretore, to znamená, že naše zadné vrátka poskytujú komunikačný kanál a my získame kontrolu nad infikovaným počítačom.

Penetračné testovanie je metóda hodnotenia bezpečnosti firemnej IT infraštruktúry prostredníctvom autorizovanej simulácie útokov narušiteľov.

Zistite si cenu testovania

×

Vyplňte formulár spätnej väzby, bude vám zaslaný dotazník na určenie ceny služby

Zachovanie dôverných informácií a dobré meno spoločnosti závisí od toho, ako spoľahlivo je IT infraštruktúra chránená pred narušiteľmi. Preto je také dôležité v praxi overiť jeho bezpečnosť. Často aj tá najlepšia súprava ochrany môže mať nesprávne konfiguračné nastavenia, čo vedie k zraniteľnostiam a zvýšeniu pravdepodobnosti implementácie hrozieb.

Práce penetračných testov sú zamerané na:

Získanie nezávislého a komplexného hodnotenia súčasnej úrovne bezpečnosti.

Získanie nezávislého hodnotenia informovanosti zamestnancov v otázkach informačnej bezpečnosti.

V priebehu práce sa vykonáva analýza vonkajšej a vnútornej bezpečnosti a testovanie metódami sociálneho inžinierstva.

Úlohy, ktoré je potrebné vyriešiť počas bezpečnostnej analýzy:

  • Identifikácia slabých miest informačnej bezpečnosti a spôsoby ich zneužitia.
  • Kontrola možnosti prieniku z externých sietí do lokálnej siete.
  • Vypracovanie odporúčaní na zlepšenie úrovne bezpečnosti odstránením zistených zraniteľností.

Ak akcie (napríklad využitie niektorých zraniteľností) môžu viesť k zlyhaniu prevádzky študovaných zdrojov, potom sa tieto práce vykonávajú až po dodatočnom schválení. V prípade potreby, v závislosti od zvoleného pracovného scenára, sa po testovaní vykonajú práce na elimináciu negatívneho vplyvu na zdroje.

Ak sa počas bezpečnostnej analýzy rozhodne, že identifikované zraniteľnosti je potrebné okamžite odstrániť, prijmú sa tieto opatrenia:

  • oprava výsledkov využívania zraniteľnosti (vo forme snímok obrazovky, zaznamenávania akcií špecialistov, protokolov systému atď.)
  • určiť potrebu a dohodnúť sa na spôsoboch odstránenia zraniteľnosti
  • odstránenie zraniteľnosti

Etapy testovania

Pri vykonávaní bezpečnostnej analýzy sa používajú univerzálne skenery zraniteľností na detekciu zraniteľností v aplikáciách, OS a sieťovej infraštruktúre, ako aj v špecializovanom softvéri. Práce na penetračnom testovaní sa vykonávajú v troch etapách a zahŕňajú tieto etapy:

Fáza 1 – analýza externej bezpečnosti:

  • Vypracovanie plánu na vykonanie analýzy vonkajšej bezpečnosti a jeho odsúhlasenie s pracovnou skupinou

2. fáza – analýza vnútornej bezpečnosti:

Práce sa vykonávajú u zákazníka.

  • Vypracovanie plánu analýzy vnútornej bezpečnosti a jej koordinácia s pracovnou skupinou
  • Analýza výsledkov, príprava správy a jej schválenie pracovnou skupinou

3. fáza – testovanie sociálneho inžinierstva:

Práce sa vykonávajú na diaľku pomocou externých sietí na prenos dát (internet).

  • Vypracovanie plánu testovania pomocou metód sociálneho inžinierstva a jeho koordinácia s pracovnou skupinou
  • Analýza výsledkov, príprava správy a jej schválenie pracovnou skupinou

Vykonávanie externej bezpečnostnej analýzy

Účelom tejto fázy práce je otestovať schopnosť útočníka vykonať neoprávnený prístup k zdrojom a dôverným informáciám.

Bezpečnostná analýza sa vykonáva podľa modelu „čiernej skrinky“ (chýbajúci autorizovaný prístup, počiatočné údaje o konfigurácii a použitých nástrojoch informačnej bezpečnosti).

V rámci analýzy vonkajšej bezpečnosti sa vykonávajú tieto typy prác:

  • zber verejne dostupných informácií o externých zdrojoch dostupných z externých dátových sietí
  • hľadať zraniteľné miesta v zdrojoch a ich komponentoch infraštruktúry pomocou bezpečnostných skenerov a špecializovaného softvéru
  • cross site scripting
  • falšovanie požiadaviek medzi stránkami
  • otvorené presmerovanie
  • nesprávne spracovanie chýb, ktoré poskytuje dodatočné informácie o skúmanom systéme

Vykonávanie internej bezpečnostnej analýzy

Účelom tejto etapy práce je otestovať schopnosť útočníka vykonať neoprávnený prístup (ďalej len UA) k zdrojom a dôverným informáciám.

Bezpečnostná analýza sa vykonáva podľa modelu „šedej skrinky“ (s poskytovaním autorizovaného prístupu do systémov).

V rámci analýzy vnútornej bezpečnosti sa vykonávajú tieto typy prác:

  • zber údajov o infraštruktúre (sieťové služby, operačné systémy a aplikačný softvér externých zdrojov), identifikácia slabín pomocou špecializovaného softvéru a univerzálnych bezpečnostných skenerov
  • vyhľadávanie zraniteľností zdrojov Zákazníka a komponentov ich infraštruktúry pomocou bezpečnostných skenerov a špecializovaného softvéru
  • zneužitie identifikovaných zraniteľností pomocou špecializovaného softvéru a manuálne na určenie relevantnosti identifikovaných zraniteľností a možnosť získať neoprávnený prístup k komponentom softvérového produktu a dôverným informáciám

Proces skenovania zraniteľností kontroluje okrem iného prítomnosť nasledujúcich hlavných typov zraniteľností:

  • vstrekovanie útržkov kódu (napr. vstrekovanie príkazov SQL, vstrekovanie príkazov operačného systému
  • neisto implementované postupy overovania a správy relácií
  • cross site scripting
  • chyby riadenia prístupu (napríklad priame odkazy na objekty s citlivými informáciami, chyby zabezpečenia pri prechode cez adresár)
  • nezabezpečená konfigurácia softvéru (napr. povolenie výpisu adresárov)
  • sprístupnenie dôverných informácií (napríklad poskytnutie osobných údajov používateľovi iným používateľom)
  • chyby obmedzujúce prístup používateľa k určitým funkciám
  • falšovanie požiadaviek medzi stránkami
  • nesprávne spracovanie chýb, ktoré poskytuje dodatočné informácie o skúmanom systéme
  • používanie OS a softvéru so známymi zraniteľnosťami
  • otvorené presmerovanie
  • spracovanie externých XML entít
  • nesprávne spracovanie chýb, ktoré poskytuje dodatočné informácie o skúmanom systéme
  • pomocou jednoduchých hesiel na autentifikáciu

Vykonávanie testovania sociálneho inžinierstva

Účelom tejto etapy práce je posúdiť informovanosť zamestnancov zákazníka v problematike IS.

V rámci testovania sociálneho inžinierstva sa útoky na zamestnancov zákazníkov vykonávajú podľa nasledujúcich scenárov:

  • Phishing – útok sa uskutočňuje prostredníctvom e-mailu. Príklad útoku: Zamestnancovi je v mene firmy zaslaný odkaz s „novou a veľmi užitočnou službou“ pre jeho prácu. List obsahuje popis služby a ako presne má konkrétnemu zamestnancovi pomôcť v jeho práci. Taktiež je v liste žiadosť o kontrolu funkčnosti a či všetko funguje správne. Práca je zameraná na skutočnosť, že zamestnanec išiel do tejto služby a pokúsil sa zaregistrovať pomocou poverení domény.
  • Trójsky kôň - útok sa vykonáva prostredníctvom e-mailu. Príklad útoku: Zamestnancovi je zaslaný spustiteľný súbor, pričom obsah listu môže byť odlišný v závislosti od pozície zamestnanca: zmluva pre manažéra, zoznam chýb pre programátora a pod. zamerané na zabezpečenie toho, aby zamestnanec spustil program na lokálnom počítači, a opraví skutočnosť, že takýto program spustil.
  • Útok telefonicky - útok sa uskutočňuje prostredníctvom telefonátu. Práca je zameraná na získanie dôvery v zamestnanca tým, že príde s hodnoverným krycím príbehom a potom sa objavia dôverné informácie alebo poverenia zamestnanca. Príklad legendy: „Nový zamestnanec tech. podpora robí prvú úlohu nasadenia služby a musíte skontrolovať, či funguje správne. Požiadajte zamestnanca o pomoc: prihláste sa samostatne alebo povedzte svoje používateľské meno a heslo.

Analýza výsledkov

Výsledkom práce je správa obsahujúca nasledujúce informácie.

Penetračné testovanie je jednou z techník na identifikáciu oblastí systému, ktoré sú zraniteľné voči narušeniu a narušeniu integrity a platnosti zo strany neoprávnených a zlomyseľných používateľov alebo subjektov. Proces penetračného testovania zahŕňa zámerné, autorizované útoky na systém, ktorý dokáže identifikovať jeho najslabšie oblasti a medzery v ochrane pred prienikmi tretích strán, a tým zlepšiť bezpečnostné atribúty.

Túto techniku ​​možno použiť aj ako doplnok k iným metódam overovania na vyhodnotenie účinnosti balíka ochrany systému proti rôznym typom neočakávaných škodlivých útokov.

Aké sú príčiny systémových zraniteľností?

Bezpečnostné medzery sa objavujú v rôznych fázach procesu a závisia od mnohých faktorov:

    • konštrukčná chyba (napríklad chyby v dizajne - jeden z najdôležitejších faktorov pri výskyte bezpečnostných medzier);
    • nesprávna konfigurácia a nesprávna konfigurácia súvisiaceho hardvéru a softvéru;
    • problémy so sieťovým pripojením (zabezpečené pripojenie eliminuje možnosť škodlivých útokov, zatiaľ čo nezabezpečená sieť poskytuje hackerom bránu na napadnutie systému);
    • ľudská chyba (chyba spôsobená úmyselne alebo neúmyselne jednotlivcom alebo tímom pri navrhovaní, zavádzaní a údržbe systému alebo siete);
    • chyba v komunikácii (nesprávny alebo zjavný prenos dôverných údajov a informácií medzi tímami alebo jednotlivcami);
    • nadmerná zložitosť systému (je ľahké ovládať bezpečnostný mechanizmus jednoduchej sieťovej infraštruktúry, ale je ťažké sledovať úniky alebo akúkoľvek zákernú činnosť v zložitých systémoch);
    • nedostatok školení (nedostatok vedomostí a riadneho školenia v otázkach bezpečnosti medzi internými zamestnancami aj tými, ktorí pracujú mimo organizačnej štruktúry).

Aký je rozdiel medzi penetračným testovaním a hodnotením zraniteľnosti?

Obe tieto techniky majú rovnaký cieľ – zaistiť bezpečnosť softvérového produktu, ale majú odlišné pracovné postupy.

Penetračné testovanie je testovanie v reálnom čase ručne alebo pomocou automatizačných nástrojov; systém a jeho pridružené komponenty sú vystavené simulovaným škodlivým útokom s cieľom odhaliť bezpečnostné chyby.

Hodnotenie zraniteľnosti zahŕňa preskúmanie a analýzu systému pomocou testovacích nástrojov na identifikáciu bezpečnostných dier pre niekoľko vzorov škodlivých útokov. Táto technika identifikuje slabé miesta, ktoré môžu hackerom poskytnúť príležitosť ohroziť systém. Okrem toho proces hodnotenia zraniteľnosti zabezpečuje rôzne nápravné opatrenia zamerané na odstránenie zistených nedostatkov.

Hodnotenie zraniteľnosti sa riadi vopred stanoveným a stanoveným postupom, pričom penetračné testovanie má jediný cieľ – zničenie systému bez ohľadu na prijaté prístupy.

Na čo slúži penetračné testovanie?

Ako už bolo spomenuté, bezpečnostné medzery poskytujú príležitosť pre neoprávneného používateľa alebo nečestnú entitu zaútočiť na systém, čo ovplyvňuje jeho integritu a dôvernosť. Penetračné testovanie softvérových produktov tak pomáha zbaviť sa týchto zraniteľností a urobiť systém dostatočne kompetentným na ochranu pred očakávanými a dokonca neočakávanými škodlivými hrozbami a útokmi.

Pozrime sa podrobnejšie na výsledky aplikácie tejto techniky. Takže penetračné testovanie poskytuje:

    • Spôsob, ako identifikovať slabé a zraniteľné oblasti systému skôr, ako ich uvidí hacker. Časté a komplexné aktualizácie systému môžu ovplyvniť súvisiaci hardvér a softvér, čo vedie k bezpečnostným problémom, preto je vhodné kontrolovať všetky tieto aktualizácie.
    • Schopnosť posúdiť existujúci bezpečnostný mechanizmus systému. To umožňuje vývojárom posúdiť ich bezpečnostné kompetencie a zachovať úroveň bezpečnostných štandardov zavedených v systéme. Okrem slabých miest systému sa tiež odporúča, aby obchodné a technické tímy s pomocou obchodných a technických tímov posúdili rôzne obchodné riziká a problémy vrátane akýchkoľvek kompromisov s autorizovanými a dôvernými údajmi organizácie. Pomáha organizácii štruktúrovať a uprednostňovať, zmierňovať alebo eliminovať rôzne obchodné riziká a problémy.
    • V neposlednom rade nástroj na identifikáciu a splnenie určitých základných bezpečnostných štandardov, noriem a praktík.

Ako vykonať penetračné testovanie?

Systémové penetračné testovanie je možné vykonať pomocou ktoréhokoľvek z nasledujúcich prístupov:

1. Manuálne penetračné testovanie
Na vykonanie manuálneho penetračného testovania softvérového produktu sa používa konzistentný štandardný prístup, ktorý zahŕňa nasledujúce kroky:

    • Plánovanie penetračného testovania. Táto etapa zahŕňa zber požiadaviek, definovanie rozsahu, stratégií a cieľov penetračného testovania v súlade s bezpečnostnými predpismi. Okrem toho môže obsahovať hodnotenie a zoznam oblastí, ktoré sa majú testovať, typy plánovaných testov a iné súvisiace testy.
    • Spravodajská služba. Zhromažďovanie a analýza najpodrobnejších informácií o systéme a súvisiacich bezpečnostných atribútoch, užitočných pre cielenie a útoky na každý blok, pre efektívne a efektívne systémové penetračné testovanie systému. Existujú dve formy zberu a analýzy informácií o cieľovom systéme: pasívny a aktívny prieskum (v prvom prípade sa neočakáva priama interakcia so systémom).
    • Analýza zraniteľnosti. Počas tejto fázy testeri identifikujú a objavia zraniteľné oblasti systému, ktoré budú neskôr použité na vstup a útok pomocou penetračných testov.
    • Vykorisťovanie. Aktuálne penetračné testovanie systému vrátane interných a externých útokov. Externé útoky sú simulované útoky z vonkajšieho sveta, ktoré dominujú mimo hraníc systému/sieť (napríklad získanie neoprávneného prístupu k systémovým funkciám a údajom súvisiacim s aplikáciami a servermi, ktoré sú pred verejnosťou). Interné útoky začínajú po prieniku autorizovaných subjektov do systému alebo siete a sú zamerané na rôzne akcie (pri dosiahnutí kompromisu s integritou a pravdivosťou systému), ktoré môžu úmyselne alebo neúmyselne ohroziť systém.
    • Po vykorisťovaní.Ďalším krokom je analýza každého útoku na systém, aby sa vyhodnotil jeho účel a účel, ako aj jeho potenciálny vplyv na systém a obchodné procesy.
    • Nahlasovanie. Hlásenie v skutočnosti zahŕňa dokumentačnú prácu o činnostiach vykonaných vo všetkých uvedených fázach. Okrem toho dokáže popísať rôzne riziká, identifikované problémy, zraniteľné miesta (využívané alebo nevyužívané) a navrhované riešenia na nápravu nedostatkov.

2. Automatické penetračné testovanie

Tento užitočný a efektívny prístup k penetračnému testovaniu zahŕňa použitie špecializovaných nástrojov. Automatizované testovanie je spoľahlivé, pohodlné, veľmi rýchle a ľahko analyzovateľné. Kontrolné nástroje sú účinné pri presnom zisťovaní bezpečnostných chýb prítomných v systéme v krátkom časovom období, ako aj pri vytváraní „krištáľovo čistých“ správ.

Aby sme vymenovali len niektoré z populárnych a široko používaných nástrojov na penetračné testovanie:

Mnoho nástrojov na automatizované testovanie možno nájsť v hotových zostavách Linuxu (Kali Linux, Mantra OS).

Ak chcete pracovať na konkrétnom projekte, budete si musieť vybrať nástroj, ktorý spĺňa množstvo požiadaviek a kritérií:

    • jednoduchosť nasadenia, používania a údržby;
    • poskytovanie jednoduchého a rýchleho skenovania systému;
    • schopnosť automatizovať proces kontroly identifikovaných zraniteľností;
    • dostupnosť kontroly predtým objavených zraniteľností;
    • schopnosť vytvárať jednoduché a podrobné správy o zraniteľnosti.

3. Kombinácia manuálneho a automatického penetračného testovania
Tento prístup možno považovať za optimálny, pretože kombinuje výhody prvých dvoch možností a poskytuje operatívnu kontrolu prostredníctvom spoľahlivého a presného prieniku do softvérového produktu.

Typy penetračných testov

Penetračné testy, v závislosti od použitých prvkov a objektov, možno rozdeliť do nasledujúcich typov:

    • Sociálne inžinierstvo. Testovanie s pripojením „ľudskej populácie“, ktorá dokáže jednoznačne identifikovať a prijímať dôverné údaje a iné informácie prostredníctvom internetu alebo telefónu (do tejto skupiny môžu patriť zamestnanci organizácie alebo akékoľvek iné oprávnené osoby prítomné v sieti organizácie).
    • Webová aplikácia. Používa sa na detekciu bezpečnostných dier a iných problémov vo viacerých variantoch webových aplikácií a služieb hostovaných na strane klienta alebo servera.
    • Sieťová služba. Network Penetration Testing na identifikáciu a zistenie možnosti prístupu hackerov alebo akejkoľvek neoprávnenej entity.
    • Klientska časť. Ako už názov napovedá, tento test sa používa na testovanie aplikácií nainštalovaných na klientskej stránke/aplikácii.
    • Vzdialené pripojenie. Testovanie vpn alebo podobnej entity, ktorá môže poskytnúť prístup k pripojenému systému.
    • Bezdrôtové siete. Test je určený pre bezdrôtové aplikácie a služby vrátane ich rôznych komponentov a funkcií (smerovače, filtrovanie paketov, šifrovanie, dešifrovanie atď.).

Penetračné testovanie možno klasifikovať aj na základe použitých testovacích prístupov:

    • Biela krabica. S týmto prístupom bude mať tester plný prístup k hlbokým znalostiam o fungovaní a hlavných atribútoch systému. Toto testovanie je veľmi efektívne, pretože pochopenie každého aspektu systému je veľmi užitočné pri vykonávaní rozsiahleho penetračného testovania.
    • Čierna krabica. Testerom sa na vykonávanie penetračného testovania poskytujú iba informácie na vysokej úrovni (napríklad adresa URL alebo adresa IP organizácie). Špecialista sa môže cítiť ako hacker, ktorý nevie nič o systéme/sieti. Ide o veľmi časovo náročný prístup, pretože tester potrebuje značné množstvo času na preštudovanie vlastností a detailov systému; okrem toho je vysoká pravdepodobnosť vynechania niektorých oblastí pre nedostatok času a informácií.
    • Šedá krabica. Tester dostáva obmedzené informácie (napríklad znalosti o algoritme, architektúre, vnútorných stavoch) na simuláciu vonkajšieho útoku na systém.

Obmedzenia penetračného testovania.

Penetračné testovanie má niekoľko obmedzení:

    • nedostatok času a vysoké náklady na testovanie;
    • obmedzený rozsah testovania na základe požiadaviek počas daného časového obdobia (čo môže viesť k ignorovaniu iných dôležitých oblastí);
    • možnosť zničenia systému alebo straty systému v poruchovom stave v dôsledku penetračného testu;
    • zraniteľnosť údajov (strata, poškodenie alebo poškodenie).

záver:

Hackeri, vyzbrojení pokročilou technológiou a širokou škálou zdrojov a nástrojov, sa často vlámu do systému alebo siete s úmyslom poškodiť reputáciu a aktíva spoločnosti. Penetračné testovanie, viac ako iné typy testovania, možno považovať za nástroj na identifikáciu rôznych bezpečnostných medzier, ktorý pomáha eliminovať potenciálne hrozby pre systém ako celok.

Na záver uvádzame niekoľko užitočných odkazov.
Projekt Awesome Penetration Testing neustále aktualizuje nástroje, články, knihy o penetračných testoch.

Normy:

certifikácia: