Testování Softwaru

Penetrační testování pro začátečníky

30. října 2021

Penetrační testování je testování počítačového systému, webové aplikace a sítě s cílem najít slabá místa zabezpečení, která by útočník mohl využít. Tento druh testování může být Automatizovaný nebo provést ručně. Proces zahrnuje shromažďování informací o cíli před testováním, identifikaci možných vstupních bodů, pokusy o virtuální nebo skutečné pronikání a hlášení výsledků.

Hlavním cílem perového testu je identifikovat slabá místa v bezpečnostní pozici organizace, stejně jako změřit přijetí bezpečnostní politiky, otestovat povědomí o bezpečnosti a určit, zda by organizace byla vystavena bezpečnostním katastrofám.

NA penetrační test také upozorňuje na slabé stránky společnosti bezpečnostní politiky.

Zprávy generované penetračním testem poskytují zpětnou vazbu. Zprávy pomáhají vývojářům aplikací vytvářet bezpečnější aplikace.

Obsah

Kroky k zahájení penetračního testování

Krok 1) Fáze plánování

  1. Stanoví se rozsah a strategie úkolu.
  2. Pro definování rozsahu se používají bezpečnostní zásady, standardy.

Krok 2) Fáze objevování.

  1. Sbírejte informace o systému, včetně dat v designu, uživatelských jmen a dokonce i hesel.
  2. Skenujte a sondujte do portů
  3. Zkontrolujte zranitelnost systému

Krok 3) Fáze útoku

  1. Najděte exploity pro různé slabiny. Nezískáte potřebná bezpečnostní oprávnění pro zneužití systému

Krok 4) Fáze hlášení

  1. Zpráva musí obsahovat podrobná zjištění.
  2. Zjištěná rizika slabých stránek a jejich dopad na podnikání.
  3. Doporučení a řešení.

Metody penetračního testování

Externí testování

Zaměřuje se na aktiva společnosti, která jsou viditelná na internetu, například e-mailové a doménové servery (DNS) a samotnou webovou aplikaci, web společnosti. Hlavním cílem je získat přístup a extrahovat cenná data.

Interní testování

Tester s přístupem k aplikaci za firewallem simuluje útok ze strany insidera. To nemusí nutně ovlivnit nepoctivého zaměstnance. Typickým scénářem může být zaměstnanec, kterému byly odcizeny přihlašovací údaje.

Slepé testování

Tester dostane pouze název podniku, na který se cílí. Nabízí bezpečnostním pracovníkům pohled na to, jak by skutečná aplikace probíhala.

Dvojitě slepé testování

Bezpečnostní personál o útoku neví. Před prolomením nebudou mít čas posílit svou obranu.

Cílené testování

Jak tester, tak bezpečnostní personál spolupracují a vzájemně se informují o svém pohybu. Jedná se o tréninkové cvičení, které poskytuje bezpečnostnímu týmu zpětnou vazbu v reálném čase z pohledu hackera.

KLADY

  • Testování umožňuje odvážný bezpečnostní přístup.
  • Umožňuje studium skutečných rizik a přesnou reprezentaci stavu zabezpečení IT infrastruktury společnosti v daném čase.
  • Pomáhá vyšetřovat narušení dat nebo průniky do sítě a odhalit jakékoli stopy vedoucí k úniku dat nebo krádeži duševního vlastnictví.
  • Umožňuje sběr informací o systému učit se a možná i narazit na nějaké interní zprávy o aktivních hackerech.
  • Dokáže najít neznámé i známé chyby a zneužít zranitelnosti zabezpečení, které lze identifikovat a opravit dříve, než budou mnohem efektivněji použity pomocí automatizovaných nástrojů.
  • Může potvrdit účinnost obranných mechanismů daleko nad rámec analýzy poskytované posouzením zranitelnosti při identifikaci slabých stránek.
  • Poskytuje možné způsoby, jak otestovat systém pomocí útoků, které jsou co nejblíže skutečným incidentům díky práci profesionálů, kteří myslí a útočí tak, jak by to udělala většina zlomyslných hackerů.

NEVÝHODY

  • Je pochybné, že průnik test najde veškeré zabezpečení problémy nebo vyřeší všechny problémy při skenování slabých stránek a generování automatizované zprávy.
  • Testerovi zabere více času, než prozkoumá systém, aby identifikoval útok, než aby provedl hodnocení slabosti; významnější je rozsah testu. Jeho/její činy mohou také rušit obchodní aktivity, protože napodobují skutečný útok.
  • Je to náročné na pracovní sílu a může to představovat zvýšené náklady a jen málo organizací na to nemusí být schopno vyčlenit rozpočet. To platí, když je firma najatá, aby provedla úkol.
  • Dává to falešný pocit bezpečí. Ve většině případů je testování známé bezpečnostním týmům společností, které jsou připraveny hledat hrozby a jsou připraveny se bránit. Skutečné útoky jsou neohlášené a především nečekané.

Typy penetračních zkoušek

Níže jsou uvedeny základní typy penetračního testování:

    Testování penetrace bílé krabice Test penetrace do černé skříňky Test penetrace šedé krabice

Testování penetrace bílé krabice

Jedná se o komplexní testování, kdy je testeru poskytnuto mnoho informací o systémech a síti jako je zdrojový kód, schéma, detaily OS, IP adresa atd. Je považováno za simulaci útoku interního zdroje. Nazývá se také testování strukturální, skleněné krabice, čiré krabice a otevřené krabice.

White box penetrační testování zkoumá pokrytí kódu a provádí testování toku dat, testování cest, testování smyček.

KLADY

  • Zajišťuje, že byly použity nezávislé cesty modulu.
  • Poskytuje všechna logická rozhodnutí, která jsou ověřena spolu s jejich pravou a falešnou hodnotou.
  • Zjistí chyby a zkontroluje syntaxi.
  • Zjistí chyby návrhu, ke kterým dochází kvůli rozdílu mezi logickým tokem programu a skutečným prováděním.

NEVÝHODY

  • Útok postrádá realističnost.
  • Tester uvažuje jinak než neinformovaný útočník.

Test penetrace do černé skříňky

Při tomto testování nemá testující ponětí o systému, který bude testovat. Má zájem shromažďovat informace o síti nebo systému. Například u tohoto typu testování tester pouze ví, jaký by měl být očekávaný výstup, a neví, jaký bude výsledek. Nezkoumá žádné programovací kódy.

KLADY

  • Nevyžaduje žádné specifické znalosti programovacího jazyka.
  • Tester ověřuje rozpory ve stávajícím systému.
  • Test se obecně provádí z pohledu uživatele, nikoli návrháře.

NEVÝHODY

  • Testovací případy je obtížné navrhnout.
  • Neprovádí vše.

Test penetrace šedé krabice

Při penetračním testování Gray Box tester obvykle nabízí částečné nebo omezené informace o programu systému. Je to považováno za útok externího hackera, který získal nelegální přístup do sítě organizace.

KLADY

  • Tester nevyžaduje přístup ke zdrojovému kódu.
  • Mezi vývojářem a testerem je jasný rozdíl, takže je menší riziko osobních konfliktů.
  • Nemusíte nabízet interní informace o funkcích programu a dalších operacích.

NEVÝHODY

  • Testeři nemají přístup k zobrazení kódu.
  • Testování v šedém poli je nadbytečné, pokud vývojář aplikace provedl podobný testovací případ.
  • Testování šedého pole není ideální pro testování algoritmů.

Nástroje pro penetrační testování

Network Mapper (také známý jako NMAP)

Používá se k odhalování druhů slabin v síťovém prostředí podniku nebo korporace. Může být také použit pro účely auditu. NMAP přebírá pakety nezpracovaných dat, které jsou vytvořeny

  • Jaký druh hostitelů je dostupný v konkrétním síťovém kmenu nebo segmentu
  • Tito hostitelé poskytují informace o službách
  • Jakýkoli konkrétní hostitel používá verze a typy filtrů datových paketů/brány firewall

Můžete vytvořit mapu sítě a odtud poukázat na významné oblasti zranitelnosti, kterými může kybernetický útočník proniknout.

img 617dd209ddbd1

Wireshark

Tento nástroj je skutečný analyzátor datových paketů a síťový protokol, který analyzuje bezpečnost slabiny provozu v reálném čase. Informace a data lze shromažďovat z:

  • Bluetooth
  • IEEE 802.11
  • IPsec
  • Token Ring
  • Frame Relay
  • Kerberos
  • SNMPv3
  • SSL/TLS
  • WEP
  • Jakákoli připojení založená na Ethernetu
img 617dd20a27ffd

W3AF

The vývojáři softwaru vytvořit tuto sadu a hlavním cílem je najít a využít jakékoli bezpečnostní slabiny přítomné ve webových aplikacích. Skládá se z mnoha nástrojů, které mohou odstranit hrozby, jako jsou:

  • Předstírání uživatelského agenta
  • Vlastní záhlaví požadavků
  • DNS Otrava mezipaměti
img 617dd20aa10c4

Nejlepší společnosti pro penetrační testování

Sciencesoft

Je poskytovatelem služeb kybernetické bezpečnosti a společností zabývající se vývojem softwaru. Pomáhá jejich klientům působícím v bankovnictví, zdravotnictví, výrobě a dalších průmyslových odvětvích navrhovat a implementovat nejvhodnější obranu pro jejich IT prostředí.

img 617dd20ae7785

netsparker

je přesný automatický skener, který identifikuje zranitelnosti v webové aplikace a webová rozhraní API . Jedinečně ověřuje zranitelnosti a dokazuje, že jsou skutečné a ne falešně pozitivní.

Je k dispozici jako okenní software a online služba.

img 617dd20b464c0

Indusface BYL

Poskytuje manuální penetrační testování spojené s automatizovaným skenerem slabých stránek webových aplikací, který detekuje a hlásí slabá místa na základě OWASP top 10.

Společnost se nachází v Indii s dalšími pobočkami v Bombaji, Bengaluru, Vadodara, Dillí a San Franciscu a služby využívá více než 1100 zákazníků ve více než 25 zemích po celém světě.

img 617dd20c1f727

Vetřelec

Je to a společnost zabývající se kybernetickou bezpečností která svým klientům poskytuje automatizované řešení SaaS. Výkonný skenovací nástroj je navržen tak, aby poskytoval vysoce použitelné výsledky a pomáhal zaneprázdněným týmům soustředit se na to, co je skutečně důležité.

Intruder používá stejný engine jako velké banky, takže si můžete užívat vysoce kvalitní bezpečnostní kontroly bez složitosti. Narušitel také nabízí službu hybridního penetračního testování, která zahrnuje manuální testy, které pomáhají identifikovat problémy, které přesahují možnosti automatického skenování.

penetrační testování

Nejčastější dotazy

Jak často bychom měli provádět penetrační test?

Závisí to na různých faktorech, které je třeba zvážit při zvážení frekvence provádění penetračních testů. Následují věci, které byste měli mít na paměti
Jak často se mění prostředí: Testy jsou často načasovány na změny, protože se blíží stavu připravenosti k výrobě.
Jak velké je prostředí: Rozsáhlejší nastavení se testují ve fázích, aby se vyrovnalo testovací úsilí a zatížení kladené na zem.

Jaké jsou typické náklady na penetrační test?

Náklady na penetrační testování se značně liší.
Pro stanovení ceny testu pera se používá několik faktorů, včetně. Před provedením jakéhokoli penetračního testu je nezbytné mít podrobnou schůzku o rozsahu, aby bylo možné jasně porozumět potřebám a vypracovat prohlášení o práci. V ideálním případě musí být penetrační test proveden za fixní poplatek, aby se eliminovaly jakékoli neplánované výdaje. Uvedený poplatek by měl zahrnovat veškerou práci a požadované testovací nástroje.

Co lze očekávat od procesu penetračního testování?

Penetrační testování je disciplinovaný proces. Testovací společnost by měla všechny zainteresované strany dobře informovat v každé kritické fázi procesu. Jako společnost hledající služby penetračního testování byste měli mít na paměti:
Plánovaný, zdokumentovaný a komunikovaný přístup, abyste věděli, co se děje a kdy.
Měl by být dodržován disciplinovaný, opakovatelný přístup.
Systém musí být přizpůsoben tak, aby vyhovoval prostředí podniku.
Definovaný iniciační proces, proces plánování, koordinované testování a proces dodání ve spolupráci s cílem zajistit přesné výsledky a jasné pochopení nápravy.