Přístupnostní navigace
E-application
Search Search Close
Master's Thesis
Author of thesis: Ing. Martin Hemza
Acad. year: 2025/2026
Supervisor: doc. Mgr. Kamil Malinka, Ph.D.
Reviewer: Ing. Radek Hranický, Ph.D.
This thesis focuses on the design and implementation of an advanced web application for logging data annotation that extends an existing platform. In cybersecurity, the normalization of logs into a uniform format is crucial for the effective operation of SIEM systems. This can be achieved using machine learning models, which require a high-quality dataset. The proposed system functions as a centralized control panel for managing the associated infrastructure, encompassing the administration and visual annotation of datasets. It facilitates users’ work by assisting with label completion using regular expressions and a large language model. The main contribution of this work is to support adaptive dataset creation by integrating mechanisms for detecting syntactically misanalyzed data. The system’s functionality was verified through user testing and during the preparation of a demonstration dataset.
Cybersecurity, log normalization, SIEM, data annotation, LLM, regular expressions, adaptive dataset creation, web application.
Date of defence
24.06.2026
Result of the defence
Defended (thesis was successfully defended)
Grading
C
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. 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 C.
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
Machine Learning (NMAL)
Composition of Committee
prof. Dr. Ing. Jan Černocký (předseda) doc. Ing. Vítězslav Beran, Ph.D. (místopředseda) doc. Ing. Ondřej Lengál, Ph.D. (člen) doc. Ing. František Zbořil, Ph.D. (člen) Ing. Michal Hradiš, Ph.D. (člen) Ing. Martin Fajčík, Ph.D. (člen)
Supervisor’s reportdoc. Mgr. Kamil Malinka, Ph.D.
Práce splňuje zadání a přináší prakticky použitelný výsledek rozšiřující existující platformu o pokročilé možnosti anotace logovacích dat. Za silnou stránku považuji zejména funkční implementaci, podporu práce s datasety, asistovanou anotaci a napojení na nástroje pro zpracování dlouhotrvajících úloh. Slabší stránkou je místy stručnější zpracování textové části a nedostatečné citování některých teoretických tvrzení.
K dispozici mám také posudek konzultanta, který také celkově hodnotí práci jako kvalitní, prakticky využitelnou a dobře navazující na potřeby dalšího rozvoje platformy LogSolve. Výsledky studenta byly využity v rámci obhajoby projektu MVČR s identifikačním kódem VB02000059. V současné době je aplikace nasazena ve dvou organizacích kritické infrastruktury se SIEM systémy, kde probíhá fáze vyhodnocení a PoC se sběrem zpětné vazby.
Celkově práci hodnotím jako kvalitní a navrhuji hodnocení stupněm B.
Zadání diplomové práce považuji za průměrně až mírně nadprůměrně náročné, zejména vzhledem k nutnosti navázat na existující platformu a rozšířit ji o prakticky použitelnou webovou aplikaci pro anotaci logovacích dat. Student splnil cíle práce a vytvořil funkční řešení podporující správu datasetů, manuální anotaci, asistovanou anotaci pomocí regulárních výrazů i využití lokálně provozovaného velkého jazykového modelu. Kladně hodnotím také začlenění mechanismů pro zefektivnění práce s většími datasety a integraci s Apache Airflow.
Student obsah práce konzultoval průběžně a její definitivní obsah mi byl zaslán k připomínkování v dostatečném předstihu. Všechny mé připomínky k práci byly zapracovány.
Výsledky studenta byly využity v rámci obhajoby projektu MVČR s identifikačním kódem VB02000059. V současné době je aplikace nasazena ve dvou organizacích kritické infrastruktury se SIEM systémy, kde probíhá fáze vyhodnocení a PoC se sběrem zpětné vazby.
Student aktivně vyhledával relevantní dostupnou literaturu a vhodně ji začlenil do své práce. Využil relevantní zdroje k oblastem SIEM systémů, normalizace logů a parsování logovacích záznamů. Teoretická část je věcně správná, některé pasáže však mohly být zpracovány podrobněji a pečlivěji citovány, zejména části týkající se legislativních souvislostí a kyberbezpečnostních požadavků.
K aktivitě studenta nemám jedinou výtku. Kromě toho, že sám přišel s tímto tématem práce, se pravidelně účastnil konzultací k DP se svým konzultantem, na které chodil připravený. Sám přicházel s nápady, jak práci dále posunout, a výborně je komunikoval. Výsledky byly tvořeny průběžně. Student měl důkladný systematický přístup.
Grade proposed by supervisor: B
Reviewer’s reportIng. Radek Hranický, Ph.D.
Pan Hemza vypracoval prakticky zaměřenou diplomovou práci, která rozšiřuje platformu LogSolve o nástroj pro správu a anotaci logovacích dat. Oceňuji zejména dobrou specifikaci požadavků, přehledný návrh aplikace a celkově užitečný realizační výstup.
Práce má však nedostatky v rešeršní části, zejména vůči bodu 2 zadání. Dalším problémem je pak chybějící dokumentace k realizačnímu výstupu.
Evaluation level: assignment fulfilled with minor reservations
Zadání považuji za splněné, avšak s výhradou k bodu 2. Student sice zkoumá oblast normalizace a zpracování logů, ale nerozebírá metody pro jejich anotaci, obohacování, kontrolu kvality a odhalování chybně označených dat. Tyto problémy sice adresuje ve své aplikaci, ale v kontextu zadání to nestačí.
Evaluation level: is within the usual extent
Dle https://app.fit.vut.cz/theses-checker práce čítá 79.58 normostran.
Technická zpráva má logickou strukturu a jednotlivé kapitoly na sebe přirozeně navazují. Student nejprve uvádí potřebný kontext systémů SIEM a normalizace logů, následně popisuje existující platformu LogSolve a poté přechází k návrhu, implementaci a ověření vytvořené aplikace. Text je pro čtenáře celkově srozumitelný a dobře vysvětluje, jakou roli má nová komponenta v širší infrastruktuře plnit. Silnou stránkou práce je zejména kvalitní specifikace požadavků a pěkně zpracovaný návrh aplikace. Pozitivně hodnotím také množství schémat a obrazovek uživatelského rozhraní, včetně obsáhlé přílohy se screenshoty. Na schématech student také jasně ilustruje, které části v rámci diplomové práce řeší a které jsou dílem jiných členů týmu.
V teoretické rešerši bych ocenil přehled existujících nástrojů a přístupů pro anotaci logů. Sekci 4.4 o volbě technologií by bylo vhodnější umístit spíše do kapitoly o implementaci. Vyhodnocení pracuje s 80 trénovacími a 20 testovacími logy, přičemž výsledný přírustek ve skóre F1 je znatelný. Zároveň je zde ale použit poměrně malý demonstrační dataset, tudíž mi tvrzení typu "aplikace je plně připravena k nasazení v reálném provozu" (v rozšířeném abstraktu) nebo "the output from the adaptive mode is fully sufficient" (v kap. 6) přijdou příliš silná. Práce by také mohla lépe vysvětlovat, jak návrhová a implementační rozhodnutí refelektují specifikované požadavky na aplikaci a jak bylo jejich splnění ověřeno. Text sice jejich splnění diskutuje, ale spíše slovně a nepříliš konrétně.
Formální úprava práce je vesměs v pořádku. Klíčové pojmy jsou písmem vhodně odlišeny. Všechny tabulky a obrázky jsou korektně odkazovány z textu. Širší obrázky student otáčí o 90°. To je v pořádku u příloh, nicméně v hlavní části technické zprávy to působí rušivě a čtení, zejména v elektronické podobě, poněkud komplikuje.
Práce je psána velmi dobrou technickou angličtinou. Autor v prohlášení přiznává použití AI pro účely korektury a stylistické úpravy textu. V samotném textu se tak překlepy ani obtížně srozumitelné formulace prakticky nevyskytují. Překlepy se však objevují ve schématech, např. na obr. 1 je "CORELATION", na obr. 4.6 je pak "MANUL LABELING", případně "TRAINGING" na obr. 4.9. Za odkazem na obr. 5.5 bezprostředně následuje poněkud netypicky poznámka pod čarou. Přehlednější by zde bylo umístit odkaz na přílohu A přímo do textu.
Bibliografie zahrnuje 31 pramenů, což je pro diplomovou práci dostačující. Všechny z nich jsou relevantní řešenému tématu. Online reference 1-6 jsou poněkud minimalistické a očekával bych u nich alespoň jméno autora, instituce, či firmy. U položky 10 je překlep "Thiry-Fourth". V názvu pramenu 23 je pak psáno "T̈hinking AloudM̈ethod" (německý "umlaut" (¨), zatímco původní zdroj má v názvu uvozovky).
Výraznější prohřešky vůči citační etice jsem neobjevil. U algoritmu MurmurHash3 chybí odkaz na zdroj či definici (SimHash nestačí). V sekci 4.2.1 student píše "LLMs proved to be the most effective", ale není jasné, na čem toto tvrzení staví. Podobně u tvrzení o výpočetní náročnosti LLM.
Hlavní úskalí práce s literaturou vidím ve skutečnosti, že rešerše málo pokrývá samotnou anotaci dat. Zvolené zdroje se jí dotýkají spíše okrajově. Chybí prameny, které by se zabývaly anotací dat (či logů) jako takovou, LLM-asistovanou anotací, případně kontrolou kvality a detekcí špatně označených vzorků.
Realizační výstup představuje komplexní webovou aplikaci pro anotaci logovacích dat v platformě LogSolve. Aplikaci tvoří backend v jazyce Python a frontend ve VueJS. Rozsahově čítá několik tisíc řádků kódu. Kód je přehledný, přiměřeně komentovaný a díky vhodnému pojmenování souborů se dobře čte. Řešení je plně funkční a student mi jej osobně demonstroval. Uživatelské rozhraní je pěkně zpracované a intuitivní.
Slabší je podpora testování. Přestože projekt obsahuje konfiguraci testovacích nástrojů, v odevzdaném archivu jsem nalezl pouze jeden skutečně automatizovaný test, a to na straně frontendu. Ostatní soubory s označením "test" mají spíše charakter pomocných validačních skriptů.
Největší slabinou realizačního výstupu je chybějící dokumentace. V archivu jsem nenašel absolutně žádné README, instalační manuál, návod k použití, popis služeb nebo postup jejich spuštění. V technické zprávě je sice popsán způsob orchestrace, ale žádný návod se zde také nenachází. Bez osobního setkání se studentem bych tedy netušil, jak mám nástroj spustit, natož používat.
Výsledky práce mají jasný praktický potenciál. Dílo rozšiřuje existující platformu LogSolve o webový nástroj pro správu, anotaci a adaptivní zlepšování datasetů logovacích dat. Řešení může být využitelné zejména jako podpůrný nástroj při přípravě kvalitnějších trénovacích dat pro modely syntaktické analýzy logů v prostředí SIEM. Před nasazením v reálném provozu by však bylo vhodné doplnit rozsáhlejší validaci na větších a různorodějších datasetech, přidat sofistikovanější automatizované testy a především k řešení vytvořit odpovídající dokumentaci.
Evaluation level: moderately difficult assignment
Grade proposed by reviewer: C
Responsibility: Mgr. et Mgr. Hana Odstrčilová