Mapování
Funkce, role, vstupní body a toky dat. Ujasníme si, co je pro vás nejcitlivější.
Zjistěte, zda může uživatel nebo útočník ve vaší webové aplikaci udělat víc, než smí. Test ručně ověří přihlášení, oprávnění a obchodní logiku a ke každému nálezu doloží dopad a doporučenou opravu.
Orientační pohled, nikoli měření: 3 hlavní oblast testu, 2 běžná součást, 1 kontext nebo podle rozsahu, 0 mimo běžný rozsah.
| Oblast | Úroveň |
|---|---|
| Autentizace a relace | hlavní zaměření |
| Autorizace a oprávnění | hlavní zaměření |
| Vstupy a injekce | hlavní zaměření |
| Obchodní logika | hlavní zaměření |
| Konfigurace a expozice | součást testu |
| Data a tajemství | součást testu |
Zaměřujeme se na to, kdo smí vidět jaká data a spouštět jaké funkce. Pracujeme ručně a s účty v rolích, které vaše aplikace skutečně používá. Nástroje nám pomáhají s mapováním, závažnost a zneužitelnost ale posuzujeme sami v kontextu vaší aplikace.
Před začátkem potvrdíme písemnou autorizaci a pravidla testu (Rules of Engagement): adresy a prostředí v rozsahu, testovací účty, časová okna, zakázané techniky a kontakty pro eskalaci. Doporučujeme testovací prostředí, které produkci věrně odpovídá. Produkci testujeme jen po výslovné dohodě.
Postup vychází z testovacích postupů OWASP WSTG. Pokud potřebujete pokrytí vztáhnout ke kontrolním požadavkům, můžeme ho dohodnout podle OWASP ASVS. Oba dokumenty používáme jako metodický rámec, nikoli jako certifikaci nebo záruku úplného pokrytí.
Funkce, role, vstupní body a toky dat. Ujasníme si, co je pro vás nejcitlivější.
Ověření slabin a jejich možného řetězení s minimálním zásahem do dat a provozu.
Kritické zjištění oznámíme podle dohodnutého postupu, nečeká na závěrečný report.
Kategorie odpovídají běžně známým třídám slabin, jak je shrnuje například OWASP Top 10. Seznam neříká, co u vás najdeme, ale kam se při testu díváme.
Přístup k cizím záznamům změnou identifikátoru, chybějící kontrola role na serveru, eskalace oprávnění.
Slabá obnova hesla, obejitelné vícefaktorové ověření, relace platné i po odhlášení.
SQL a jiné injekce, cross-site scripting, nebezpečné nahrávání souborů, server-side request forgery.
Přeskočení kroku procesu, opakované uplatnění výhody, souběh požadavků, obejití limitů.
Podrobná chybová hlášení, chybějící bezpečnostní hlavičky, vystavená správa nebo zastaralé komponenty.
Výsledky můžeme po předání projít s vašimi vývojáři. Retest opravených nálezů je součástí jen tehdy, pokud ho uvádí nabídka.
Pro návrh rozsahu stačí popis aplikace, počet rolí, hlavní procesy, technologie a termín. Pro samotný test potřebujeme přístup do dohodnutého prostředí, testovací účty pro každou roli a kontakt na technickou osobu.
Test je omezený časem, rozsahem a dodanými podklady. Snižuje nejistotu a pomáhá stanovit priority, ale nemůže prokázat, že aplikace neobsahuje žádné další chyby.
Ano, právě tam bývá většina podstatných otázek. Potřebujeme testovací účty pro každou dohodnutou roli, ideálně dva účty od každé, abychom mohli ověřit oddělení uživatelů.
Sken hledá potenciální známé slabiny podle vzorů. Ruční test ověřuje, co lze skutečně zneužít, a zkoumá oprávnění a obchodní logiku, které sken nerozpozná.
Jen po výslovné dohodě a s pravidly odpovídajícími provozu, například s omezenou intenzitou a vyloučenými operacemi. Často je vhodnější testovací prostředí s produkční konfigurací.
Pouze pokud ho obsahuje nabídka. Retest ověří původní nálezy po opravách v dohodnutém termínu a na dohodnuté verzi aplikace.
Nemusíte vědět, jestli potřebujete test, technologii nebo konzultaci. Podle popisu situace navrhneme vhodný další krok.