Bezpečnost webových aplikací: rychlé seznámení s OWASP
Útoky na webové aplikace jsou stále častější, především kvůli zvyšujícímu se počtu uživatelů internetu a dále snadné dostupnosti nástrojů a návodů jak tyto útoky provádět.
V této souvislosti nemůžeme nezmínit projekt OWASP (The Open Web Application Security Project). Pokud na stránky projektu OWASP zavítáte poprvé, zcela jistě se na nich nebudete vůbec orientovat a vědět čím začít. Cílem tohoto příspěvku je tuto situaci alespoň trochu napravit, neboť na stránkách projektu se nachází velice cenné informace.
Na stránkách projektu OWASP se dozvíte, jaké jsou nejčastější typy útoků a jakých zranitelností v aplikacích tyto útoky využívají a hlavně jak tyto zranitelnost detekovat, jak je odstranit a vůbec jak aplikace vyvíjet, aby tyto zranitelnosti neobsahovaly. Kromě dokumentace zde najdete i potřebné nástroje. Projekty OWASP je možné rozdělit na dokumenty, příručky a nástroje, jejichž cílem je poskytnout návody a nástroje, které:
- umožní vývoj bezpečných aplikací ( OWASP Development Guide Project, OWASP Secure Coding Practices – Quick Reference Guide, OWASP Enterprise Security API (ESAPI) Project a jiné),
- usnadní odhalení bezpečnostních chyb a zranitelností (OWASP Application Security Verification Standard Project (ASVS), OWASP Testing Project, OWASP Code Review Project, OWASP WebScarab Project a jiné)
- se týkající celého životního cyklu aplikací ( OWASP Legal Project, OWASP WebGoat a jiné).
Na stránkách OWASP lze nalézt několik projektů, z nichž nejdůležitější je asi OWASP Development Guide Project, který radí vývojářům, jak vyvíjet bezpečné aplikace. Najdeme zde konkrétní ukázky kódu pro .NET, JAVA nebo PHP. Samotná příručka má buď podobu HTML stránek, nebo je dostupná jako PDF soubor o rozsahu několika set stran.
Bez ohledu na použité prostředí a jazyk se mohou vývojáři s požadavky na bezpečnost rychle seznámit prostřednictvím OWASP Secure Coding Practices – Quick Reference Guide. Ta na několika málo stranách uvádí seznam bezpečnostních doporučení z těchto oblastí: validace dat na vstupu a na výstupu, autentizace, správa hesel, správa sezení, řízení přístupu, šifrování, ošetření chyb, logování, ochrana dat, komunikační bezpečnost, databázová bezpečnost, konfigurace systému, správa souborů a paměti.
Pro účely testování byl vytvořen OWASP Application Security Verification Standard Project, který definuje seznam kontrol, které by měly být provedeny. V zásadě transformuje doporučení uvedená v OWASP Secure Coding Practices – Quick Reference Guide do seznamu kontrol, kdy každé kontrole je přiděleno číslo a každá kontrola začíná slovy: „Ověřte, že …“
Přičemž požadovaná kontrola může být provedena již během kódování podle OWASP Code Review Project nebo později podle OWASP Testing Project, přičemž obě tyto příručky již obsahují konkrétní návod, který popisuje použité nástroje a uvádí způsob provedení dané kontroly na konkrétních příkladech.
OWASP Application Security Verification Standard Project (ASVS) přináší komplexní pohledu na kontrolu bezpečnosti samotné aplikace (zahrnuje například hloubkovou analýzu zdrojového kódu), OWASP Testing Project zase více pokrývá „blackbox“ a „greybox“ penetrační testování z pohledu uživatelů aplikace.
Poměrně novým projektem OWASP, který by též neměl ujít vaší pozornosti, je OWASP Mobile Security Project, který reflektuje celoplošné a masivní rozšíření mobilních aplikací a jejich zranitelnosti.
Vysvětlením a popsáním všech pojmů, typů útoků, a zranitelností se zabývá OWASP Application Security Desk Reference Project, ve stejnojmenné příručce, je to takový výkladový slovník s příklady a nejrozsáhlejší OWASP publikace.
V neposlední řadě musíme také zmínit OWASP Legal Project, jehož cílem je navrhnout text dodatku ke smlouvě, který by vývojáře zavazoval k tomu, že bude vyvíjet podle OWASP a bude provádět příslušné kontroly a testy a případně že do svého kódu implementuje i odpovídající API.
V dalších dílech našeho seriálu o bezpečnosti webových aplikací se podíváme na nejčastější chyby, kterých se vývojáři bez ohledu na to v čem programují, a na jaké platformě jejich aplikace běží, dopouštějí. Pokud vás zajímá, jakými zranitelnostmi webové aplikace nejčastěji trpí, navštivte už teď stránky projektu OWASP Top Ten Project.
Poznámka: Tento příspěvek vznikl ve spolupráci s Pavlem Luptákem ze společnosti Nethemba, který vede profesionální tým vykonávající penetrační testy a detailní audity webových a mobilních aplikací.
Štítky: OWASP
K článku “Bezpečnost webových aplikací: rychlé seznámení s OWASP” se zde nenachází žádný komentář - buďte první.
Diskuse na tomto webu je moderována. Pod článkem budou zobrazovány jen takové komentáře, které nebudou sloužit k propagaci konkrétní firmy, produktu nebo služby. V případě, že chcete, aby z těchto stránek vedl odkaz na váš web, kontaktujte nás, známe efektivnější způsoby propagace.