RAJECKÝ, M. Nástroj pro automatizované penetrační testování webových serverů [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2023.
Kvalita odevzdané práce reflektuje průběh jejího řešení. Realizační výstup se pohybuje na hranici obhajitelnosti, textová část je zpracována lépe. Pozitivně hodnotím zpracování textové části v angličtině. Výstup však neodpovídá původní představě ani proběhlým konzultacím k návrhu.
Kritérium | Známka | Body | Slovní hodnocení |
---|---|---|---|
Informace k zadání | Jedná se o průměrně náročnou implementační práci, jejíž cílem bylo vytvořit platformu, která integruje funkčnost existujících nástrojů pro penetrační testování a umožňuje jejich automatizované hromadné použití. Práce byla motivována požadavky NÚKIBu, se kterým v úvodu práce proběhlo i několik konzultací. Realizační výstup práce sice technicky splňuje všechny body zadání, nicméně je realizuje jen v minimální kvalitě. Reálně jde pouze o velmi jednoduchý integrační skript. Nejsou zapracovány požadavky, která se dohodly v rámci návrhu. Výsledek tak není použitelný tak, jak bylo původně plánováno. Textová část naplňuje v základní míře požadavky na ni kladené. | ||
Práce s literaturou | Student si literaturu dohledával samostatně i na základě konzultací. Použitá literatura je relevantní. | ||
Aktivita během řešení, konzultace, komunikace | Student se mnou pravidelně komunikoval pouze během prvního půlroku. Dále se ozval až v průběhu dubna s tím, že jeho progres byl velmi malý a dále pak pár dní před odevzdáním. Práci jsem tak neměl možnost dostatečně ovlivnit. | ||
Aktivita při dokončování | Práce byla dokončována na poslední chvíli. Neměl jsem tak možnost ji dostatečně konzultovat. Reálně se tak pouze řešilo, jak dosáhnout alespoň minimálního splnění zadání. | ||
Publikační činnost, ocenění | Student se s návrhovou částí zúčastnil Excel@FIT. |
Pri vypracovaní práce sa študent podrobne zoznámil s danou problematikou a získané znalosti sú kvalitne prezentované v teoretickej časti práce. Tie ale neboli dostatočne využité pri návrhu a implementácii výsledného nástroja, ktorý je jednoduchý a neprináša značné výhody prípadným užívateľom. Prínosy jednoznačne nepotvrdzuje ani následná experimentácia. Existuje mnoho intuitívnych spôsobov, ktoré by dané riešenie vylepšili, tie ale v rámci práce zapracované nie sú.
Kritérium | Známka | Body | Slovní hodnocení |
---|---|---|---|
Náročnost zadání | Pre úspešné splnenie zadania sa musel študent zoznámiť s problematikou zabezpečenia webových serverov a štandardizovanými metódami penetračného testovania. Získané znalosti bolo nutné prakticky aplikovať pri návrhu a implementácii nástroja využiteľného pre automatizovanú bezpečnostnú analýzu webových serverov. | ||
Rozsah splnění požadavků zadání | Všetky body zadania boli principiálne splnené. Študent podrobne rozoberá problematiku penetračného testovania a výskytu bezpečnostných zraniteľností. Následne prezentuje vhodne vybrané nástroje, ktoré sú k penetračnému testovaniu využiteľné. Navrhnuté riešenie spomenuté nástroje integruje a je využiteľné pre penetračné testovanie, forma realizácie ale nie je dostatočná. Vyhodnotenie nástroja bolo realizované v simulovanom prostredí a zahŕňa i uživateľské testovanie, primárne ale prezentuje výstupy nástroja a nedostatočne zhodnocuje jeho prínos a funkčné nedostatky. V technickej dokumentácii chýba rozšírený abstrakt. | ||
Rozsah technické zprávy | |||
Prezentační úroveň technické zprávy | 70 | Práca je napísaná zrozumiteľne a jednotlivé kapitoly na seba logicky nadväzujú. V úvode práce študent obecne rozoberá problematiku sietí z pohľadu jednotlivých vrstiev, využitie obranných mechaniznov pre zabezpečenie komunikácie a uvádza príklady typických zraniteľností. Následne je podrobne popísaná problematika penetračného testovania, jednotlivé prístupy, metodológie a relevantné štandardy. Vybrané názvy sekcií mali mať zvolený vhodnejší názov, než napr. "Penetration testing explained". Výhrady mám ku kapitole 4, ktorá uvádza existujúce nástroje využiteľné pri penetračnom testovaní. Kapitola by mala byť vhodnejšie štruktúrovaná, jednotlivým nástrojom by mal byť v texte venovaný väčší priestor a chýba dostatočné zhodnotenie ich nedostatkov, prípadne vzájomné porovnanie. Vybrané prvky z kapitoly 6 o implementácii mali byť zohľadnené už pri návrhu. Kapitola 7 popisujúca testovanie obsahuje veľa obrázkov prezentujúcich jednotlivé výstupy, vyššia pozornosť mala byť venovaná vyhodnoteniu nástroja a diskusii o získaných poznatkoch. | |
Formální úprava technické zprávy | 65 | Práca je napísaná v anglickom jazyku. Po jazykovej stránke je všeobecne na vyššej úrovni, predovšetkým v úvodnej teoretickej časti dokumentácie. Práca ale obsahuje viaceré gramatické chyby a preklepy, napr. slovo "Resut" a "Defnese mechanisms" ako názov sekcie. Práca by benefitovala z vyššej jednotnosti, napr. medzier u citačných odkazov, ktoré sú taktiež v texte často nevhodne zalomené. Vhodnejšie zalomenie bolo možné využiť i pri zoznamoch či samotnom texte, napr. koniec zoznamu na str. 33. V texte sa nachádza nesprávne využitie formátu úvodzoviek pre anglický text. V niektorých prípadoch nie sú vety správne zakončené. | |
Práce s literaturou | 70 | Rozsah a škálu využitých zdrojov považujem za dostatočnú pre diplomovú prácu. Viaceré zdroje nie sú uvedené správnym formátom normy. V iných zdrojoch sú názvy spoločností formátované ako mená autorov, napr. "Corporation, M.". Pri viacerých odkazoch v texte chýbajú vysadené čísla zdrojov, odkazy majú teda formát "[?]". Vo vybraných častiach textu nie je evidentné, odkiaľ študent čerpal informácie, napr. v paragrafe "Issues associated with complex penetration testing frameworks". | |
Realizační výstup | 50 | Výsledný nástroj je implementovaný predovšetkým v jazyku Python. Pre každý integrovaný nástroj je vytvorený samostatný parser jeho výstupu, jednotlivé nástroje sú následne spúšťané na základe konfiguračného súboru cez nástroj Docker. Služba zobrazuje vyparsované dáta z behu jednotlivých nástrojov. Vytvorené riešenie nie je dostatočne komplexné. Služba neobsahuje následnú analýzu získaných dát, integráciu s externými službami a databázami pre dodatočné informácie k výstupu. Chýba unifikované rozhranie pre dáta z rôznych nástrojov alebo vyznačenie rozdielov v ich výstupoch, prípadne aspoň grafické uživateľské rozhranie. Pre integráciu nového nástroja a rozšírenie služby je nutné implementovať samostatný parser, so službami sa nepracuje na abstraktnejšej úrovni. Testovanie je zamerané na prezentáciu výstupu, nedostatočne zhodnocuje výsledky z pohľadu použiteľnosti a prínosu pre penetračného testera, podobne tak užívateľské testovanie. | |
Využitelnost výsledků | Vytvorené riešenie neprináša značnú výhodu proti manuálnemu spúšťaniu integrovaných nástrojov, pokiaľ je s nimi užívateľ oboznámený. |
eVSKP id 140493