Přístupnostní navigace
E-application
Search Search Close
Master's Thesis
Author of thesis: Ing. Michal Findra
Acad. year: 2023/2024
Supervisor: Ing. Jiří Pavela
Reviewer: doc. Mgr. Kamil Malinka, Ph.D.
The work focuses on the problem of automated security analysis of container images in a distributed environment. It describes present vulnerabilities in these environments and tools that deal with the analysis of container images that serve as a template for deploying a specific container. The process involves acquiring an environment description and subsequently processing it into a format meaningful for Vulntron tool developed as part of this thesis. Vulntron automates this process, performs a security analysis of individual components of the container image, and generates a report in a visually and technically processable format. The thesis also includes practical integration in form of Vulntron deployment into various types of development processes within the Red Hat company.
Vulntron, Container image, Container security, Security analysis, Grype, Syft, SBOM, Vulnerability detection, CI-CD
Date of defence
17.06.2024
Result of the defence
Defended (thesis was successfully defended)
Grading
B
Process of defence
Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných, např. ohledně případné zranitelnosti realizovaného řešení, význam grafu paměťové náročnosti ukázaného v prezentaci či možností grafické vizualizace více měření a z něho plynoucí analýzy . Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm B - velmi dobře.
Topics for thesis defence
Language of thesis
English
Faculty
Fakulta informačních technologií
Department
Department of Intelligent Systems
Study programme
Information Technology and Artificial Intelligence (MITAI)
Specialization
Cybersecurity (NSEC)
Composition of Committee
doc. Dr. Ing. Petr Hanáček (předseda) doc. Ing. Michal Bidlo, Ph.D. (člen) doc. Mgr. Adam Rogalewicz, Ph.D. (člen) doc. Ing. Petr Matoušek, Ph.D., M.A. (člen) doc. Mgr. Kamil Malinka, Ph.D. (člen) Ing. Vladimír Veselý, Ph.D. (člen)
Supervisor’s reportIng. Jiří Pavela
Jedná se o velmi zdařile vypracované zadání s realizačním výstupem, který bude nasazený v praxi v rámci Red Hat OpenShift platformy. Student byl v průběhu řešení práce velmi aktivní a motivovaný, což potvrdil i technický konzultant za Red Hat, Gábor Burges, jehož vyjádření přikládám v originálním znění níže.
„Michal wrote a Golang app that gathers vulnerabilities of running apps on Openshift clusters and generates vulnerability reports and SBOMs of all the components present on the cluster.
He also connected it to DefectDojo for frontend, and implemented several improvements and integrations. This has been a painpoint for the platform security team for several years, but this work has never been prioritized. Having this is a great boon, as it automates a lot of manual work and testing, implements desired vulnerability scanners and databases, and simplifies visualization and integration into existing workflows. This app will be used in all of our clusters, and passively used by all 45 teams within our organization (~500 people), but thanks to the easy portability, it’s easily adoptable by other organizations. It also alleviates a lot of churn for the security teams, and inspires trust towards the larger product security. So even more people will benefit from it than just the direct users.
Michal did a great job, was very flexible in the planning, listened and asked for feedback, and promptly implemented the changes requested. The app is working great, and Michal added extra features that we planned for future iterations. The code is clean, and easily readable. The documentation is clear, and well done, I had no trouble trying it out in a test environment.
The tool is already in use in our development environment, and we already proposed and received managerial approval for production implementation. It will be the standard tool for us in the future.“
Jedná se spíše o průměrně obtížné zadání vytvořené ve spolupráci s firmou Red Hat. Obtížnost spočívala především v nutnosti nastudovat a integrovat větší množství existujících technologií používaných ve firmě Red Hat do výsledného nástroje Vulntron, případně s nástroji komunikovat přes jimi definované rozhraní.
Práce byla dokončena s dostatečnou rezervou. V průběhu posledního týdne a půl už student jen zapracovával poznámky a zpětnou vazbu.
Nástroj není pro veřejnost dostupný ve formě open-source.
Student byl schopen si samostatně vyhledávat a studovat relevantní literaturu.
Student byl velmi motivovaný, aktivní a samostatný hned od počátku řešení práce. Jedná se o zadání ve spolupráci s firmou Red Hat a student tak ohledně technických záležitostí komunikoval převážně se svým technickým konzultantem. Nicméně i tak mě pravidelně informoval o dosaženém postupu a plánoval konzultace s ukázkami současného stavu řešení práce.
Grade proposed by supervisor: A
Reviewer’s reportdoc. Mgr. Kamil Malinka, Ph.D.
Myslím si, že práce by se měla více orientovat na vysvětlení architektury, motivací návrhu a popisem prostředí ve kterém má být nasazena. Uchopení práce, kdy autor popisuje technické oblasti bez snahy o začlenění do ucelené práce mi nepřijde vhodné. Nicméně textovou část vyvažuje technické zpracování, které je na velmi dobré úrovni. Pozitivně hodnotím i zpracován v angličtině a připravenost řešení na nasazení v praxi (to teď vázne už jen na interních procesech).
Evaluation level: zadání splněno
Práce splnila všechny body zadání ve velmi dobré kvalitě.
Evaluation level: je v obvyklém rozmezí
Rozsah technické zprávy je v obvyklém rozsahu.
Práce spíše než závěrečnou práci připomíná technickou dokumentaci produktu a tomu odpovídá i nedostatečná logická úroveň práce. Kap. 2 a 3 představují obecně problematiku kontejnerizace, orchestrace kontejnerů a detekce zranitelností. Obě kapitoly vychází z několika málo zdrojů, což mimo jiné vede k přílišné obecnosti textu. Zmíněné informace v podstatě nejsou v dalších kapitolách využity. Obdobně je pak zpracováno popsání relevantních nástrojů, které je opět velmi obecné. Chybí snaha takto přeformulované obecné texty vztáhnout k vlastnímu řešení práce.
Zcela chybí popis firemního prostředí, kam se měl nástroj nasazovat a alespoň základní popis požadavků na řešení. Pak je obtížné se vyjádřit, zda vlastně bylo zadání splněno. Nevyváženě také působí návrh, který je extrémně stručný a spoustu věcí nezmiňuje. Nicméně část návrhových rozhodnutí je pak alespoň popsána v implementaci. Ten je na dobré úrovni, jedná se v podstatě o regulérní dokumentaci vč. např. jednotlivých kroků pro nasazení nástroje. Část týkající se testování je stručná.
Jazyková a stylistická stránka práce i úroveň typografie je na velmi dobré úrovni. Práce obsahuje jen malé množství typografických chyb, jako je např. obrázek 2.1, který je bezdůvodně umístěn v textu až výrazně později než je odkazován, nebo stejná název kap. 3.4. a podkapitoly 3.4.1. Část textu v obrázcích je nečitelná.
Práce obsahuje spíše menší množství odkazovaných zdrojů, které jsou však relevantní tématu a vhodně vybrány. Nízký počet referencí je patrně způsoben tím, že kap. 2 a 3 jsou primárně postaveny na jednom až dvou zdrojích. Toto řešení mi nepřijde vhodné, očekával bych větší zaměření se na potřebné případy užití.
Realizační výstup je na velmi dobré úrovni, vše je funkční. Návrh integrace jednotlivých komponent a způsob práce je na velmi dobré úrovni. Práce mi byla demonstrována. Vše bylo řádně otestováno, výkonnostní testy ukázaly, že řešení je vhodně dimenzováno. Jsou připraveny komponenty pro další integraci do prostředí RedHat.
Práce byla řešená v rámci spolupráce s RedHat a je v plánu nasazení řešení do produkce.
Evaluation level: průměrně obtížné zadání
Jedná se o implementační DP s jasně ohraničeným rámcem.
Grade proposed by reviewer: B
Responsibility: Mgr. et Mgr. Hana Odstrčilová