Code review
Code review je metodické prozkoumávání zdrojového kódu aplikace s cílem identifikovat bezpečnostní rizika, vyplývající z programátorských chyb, nedodržování standardů či úmyslně zanesených backdoorů. Zaměřuje se především na identifikaci zranitelností v kontrolních strukturách, validaci uživatelských vstupů, zpracování chybových stavů, práci se soubory či vstupními parametry funkcí
Účel
Cílem bezpečnostního posouzení kódu (code review) je identifikovat a vyloučit programátorské chyby, které by mohli vést ke zranitelnosti výsledné aplikace.
Typickým místem, kde se nachází chyby ohrožující aplikace je validace a zpracování uživatelských vstupů a chybějící obranné mechanismy proti známým typům útoků (brute-force, CSRF, DoS apod.).
Postup
Code review zahrnuje několik kroků, např.:
Automatizovaná statická analýza kódu pomocí nástroje SonarQube s cílem identifikovat problematická místa v kódu, potenciálně ukazující na chyby.
Po prvotním „automatizovaném“ ohledání kódu přistupujeme k manuální revizi kódu s cílem vyloučit veškerá false-positive zjištění nástroje a naopak potvrdit skutečně závažné nedostatky.
Speciální pozornost (bez ohledu na výsledky SonarQube) vždy věnujeme ošetření všech předpokládaných uživatelských vstupů posuzované aplikace, kdy posuzujeme nejen to, zda aplikační kontroly vstupů jsou naprogramovány správně, ale i to, zda nechybí kontroly proti známým typům útoků (např. CSRF, XSS). Zde posuzujeme mimo jiné možnost obrany proti podvrženým uživatelským vstupům.
Využíváme své jedinečné know-how, získané v průběhu desetiletí práce pentesterů, kteří mají zažité nesčetné množství i velmi neobvyklých útoků (např. pomocí různé časové prodlevy u podobné konstrukce dotazu), na které může být aplikace citlivá.
Naše unikátní know-how neobsahuje žádný automatizovaný nástroj, proto jsme schopni upozornit i na problémy, které automatické nástroje nedetekují.
Všechny závěry spolu s navrhovanými úpravami kódu jsou uvedeny v závěrečné zprávě.
Další služby
Kromě Code review poskytujeme našim klientům také mnoho jiných služeb, například penetrační testy – viz Penetrační testování – přehled.