Přístupnostní navigace
E-application
Search Search Close
Master's Thesis
Author of thesis: Ing. Michaela Novotná
Acad. year: 2025/2026
Supervisor: Ing. Martin Žádník, Ph.D.
Reviewer: Ing. Radek Hranický, Ph.D.
This master’s thesis focuses on the identification and classification of network devices in encrypted network communication environments. The goal of this thesis is the design and implementation of a system for network device classification based on TLS fingerprints, specifically the JA4+ method. The thesis includes an analysis of existing TLS fingerprint databases, followed by the creation of a new database focused primarily on distinguishing device types and operating systems rather than applications. Furthermore, the thesis explores the extraction of association rules from the created dataset and compares the obtained results. The proposed solution is integrated into the ADiCT project environment and utilizes the NEMEA system for network traffic processing. The result of this work is a functional classification system and a database of association rules derived from JA4 fingerprint data. The resulting database enables the identification of devices in encrypted traffic without the need to decrypt transmitted data.
TLS, fingerprinting, JA3, JA4, encrypted network traffic, device classification, network analysis, association rules
Date of defence
24.06.2026
Result of the defence
Defended (thesis was successfully defended)
Grading
B
Process of defence
Studentka nejprve prezentovala výsledky, kterých dosáhla v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Studentka následně odpověděla 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í studentky na položené otázky rozhodla práci hodnotit stupněm B.
Topics for thesis defence
Language of thesis
Czech
Faculty
Fakulta informačních technologií
Department
Department of Computer Systems
Study programme
Information Technology and Artificial Intelligence (MITAI)
Specialization
Information Systems and Databases (NISD)
Composition of Committee
prof. RNDr. Alexandr Meduna, CSc. (předseda) doc. Ing. Radek Burget, Ph.D. (místopředseda) RNDr. Marek Rychlý, Ph.D. (člen) Ing. Šárka Květoňová, Ph.D. (člen) Ing. Vladimír Veselý, Ph.D. (člen) Ing. Jiří Hynek, Ph.D. (člen)
Supervisor’s reportIng. Martin Žádník, Ph.D.
Studentka prokázala schopnost samostatně vyvinout komplexní systém pro klasifikaci zařízení v síti včetně tvorby databáze TLS otisků.
Práce je zaměřena na klasifikaci zařízení v síti pouze na základě pasivního pozorování. Zadání obtížností odpovídá rozsahu diplomové práce. Práce splnila všechny body zadání.
Práce byla dokončena včas a obsah dostatečně zkonzultován.
Vytvořený software má potenciál přispět ke zvýšení síťové kyberbezpečnosti.
Studentka vyhledávala dostupné zdroje k řešení své diplomové práce a využívala je při svém rozhodování či k odlišení své a převzaté práce.
Studentka byla po dobu řešení práce aktivní, svou práci pravidelně konzultovala a na konzultace byla připravena.
Grade proposed by supervisor: A
Reviewer’s reportIng. Radek Hranický, Ph.D.
Práce má převážně výzkumně-experimentální charakter s doplněním o prototypovou implementaci modulu do prostředí ADiCT. Slečna Novotná zkoumala možnosti použití otisků JA3/JA4+ a z nich odvozených asociačních pravidel pro klasifikaci zařízení v šifrovaném provozu. Pozitivně hodnotím zejména vytvoření užitečné datové sady, databáze odvozených asociačních pravidel, praktickou integraci do existujícího prostředí a přehledné zhodnocení dosažených výsledků. Slabiny práce vidím v horší úspěšnosti u minoritních tříd a omezeném zdůvodnění některých metodických rozhodnutí.
Celkově jde o velmi zdařilou a prakticky přínosnou práci. Hodnotím tedy stupněm "velmi dobře" (B).
Evaluation level: assignment fulfilled
Zadání považuji za splněné v celém rozsahu.
Evaluation level: is within the usual extent
Dle https://app.fit.vut.cz/theses-checker práce čítá 85.52 normostran.
Práce má logickou strukturu a jednotlivé kapitoly na sebe přirozeně navazují. Studentka postupuje systematicky od problematiky analýzy síťového provozu a TLS fingerprintingu, přes otisky JA3/JA4+, asociační pravidla, návrh modulu, tvorbu databáze otisků, až k závěrečnému vyhodnocení. Text je srozumitelný a dobře se čte. Práci doplňuje řada názorných obrázků a schémat, které čtenáři umožňují vytvořit si jasnou představu o popisovaných technologiích a postupech. Pozitivně hodnotím také iterativní postup v experimentování, přičemž technická zpráva dobře demonstruje, jak studentka klasfikátory postupně zdokonalovala a k jakým zlepšením díky konkrétním krokům došlo.
Pro klasikaci síťových zařízení slečna Novotná používá asociační pravidla se zdůvodněním, že přímé použití databáze otisků nevedlo k dostatečné přesnosti. Taková volba je v kontextu zadání smysluplná, ale chybí mi diskuse, proč nebyly použity a zda byly zváženy také jiné klasifikační přístupy vhodné pro kategorické atributy, např. modely na bázi strojového učení (rozhodovací stromy, KNN, neuronové sítě).
Velmi pozitivně hodnotím kapitolu o zhodnocení výsledků, kde autorka používá přehledné tabulky a matice záměn, díky kterým čtenář dobře vidí, kde řešení funguje a kde selhává. Uvítal bych však přesnější zdůvodnění použitého způsobu skórování pravidel. Studentka by mohla také podrobněji analyzovat příčiny špatně klasifikovaných vzorků. U obr. 7.2, 7.4, 7.6, 7.8 a 7.10 je pojem "matice záměn" poněkud nepřesný. Jde spíše o normalizovanou kontingenční tabulku, neboť referenční třídy a výstupní třídy klasifikátoru nejsou totožné.
Formální stránka práce je spíše v pořádku. Klíčové pojmy jsou písmem vhodně odlišeny. Oceňuji perfektní čitelnost obrázků, kdy je velikost textu napříč schématy a grafy dobře sjednocena v rámci celé práce. Obrázky a tabulky jsou korektně číslovány a odkazovány z textu. Výhradu mám však k nekonzistenci odkazů. Z textu není vždy jasné, na jaký prvek odkaz vede. Studentka někdy uvádí "na obrázku 6.5", jindy "matici záměn na obrázku 7.10", pak zase "na matici záměn 7.2", u sekcí pak často jen "viz 2.1". Poněkud matoucí je popis struktury práce v úvodu, kde studentka píše, že "první kapitola" se zabývá síťovým provozem, ačkoli jde fakticky o kapitolu 2 apod. Pokud by studentka použila "\ref" místo slovních popisů, problém by nenastal.
Text je psán velmi pěknou odbornou češtinou. Pozitivně hodnotím minimum anglikanismů. Poněkud nekonzistně však působí kombinování výrazů "fingerprinty" a "otisky". Pravopisných chyb v práci není mnoho, vyskytují se zejména ve shodě vztažného zájmena "které", např. "v datech, které", "zařízení (pl.), které". Toto je klasický zlozvyk z hovorové mluvy. Další drobné chyby: "Apriory", "devide-and-conquer". Jinak je jazyková stránka v pořádku.
Bibliografie čítá celkem 36 zdrojů, přičemž všechny jsou relevantní řešenému tématu. Prohřešky vůči citační etice jsem neobjevil. Pozitivně hodnotím, že práce zahrnuje aktuální zdroje k TLS fingerprintingu a JA4+, včetně publikací z několika posledních let. Převzaté obrázky jsou korektně označeny.
U klíčových metodických rozhodnutí, zejména volby asociačních pravidel, způsobu jejich skórování, nebo využití řetězců User-Agent pro anotaci dat, bych očekával hlubší oporu v literatuře a srovnání s alternativními přístupy. V seznamu literatury se také objevují překlepy, např. "approch" nebo "TCL/IP". U citace TLS 1.2 text uvádí RFC 5246, ale reference odkazuje na dokument s jiným číslem.
Realizační výstup podle technické zprávy tvoří jednak skripty pro tvorbu a transformaci databází JA4, jednak vytvořený modul pro systém ADiCT. Obojí je implementováno v jazyce Python. Programátorsky se nejedná o nijak rozsáhlé dílo, ale to je u primárně experimentálně zaměřené práce očekávané. K modulu je přiložena vytvořená databáze asociačních pravidel. Řešení je plně funkční a studentka mi jej osobně demonstrovala.
Klasifikace funguje přesně tak, jak je popsáno v technické zprávě. Určování operačního systému je výrazně úspěšnější než detekce typu zařízení. Obecně však řešení klasifikuje velmi dobře dominantní třídy ("Windows", "MacOS", resp. "computer" a "mobile), zatímco u minoritních spíše selhává. Odhaduji že to je způsobeno jednak nevyvážeností vstupních dat, jednak způsobem, jak jsou pravidla následně vytěžena a skórována.
Kód modulu i pomocných skriptů je čitelný, funkce jsou pojmenovány smysluplně a jednotlivé fáze zpracování jsou odděleny komentáři. U modulu oceňuji, že je oddělena práce s rozhraním TRAP, agregace otisků, klasifikace a odesílání výsledků. Drobným neduhem z hlediska udržovatelnosti řešení je duplicitní normalizační logika v různých skriptech, která mohla být vyčleněna do sdílených pomocných funkcí. Přiložené README dobře popisuje strukturu projektu, jednotlivé databáze i účel skriptů.
Výsledky mají jasný praktický potenciál, protože rozšiřují systém ADiCT o možnost klasifikovat síťová zařízení v šifrovaném provozu na základě otisku JA4+ bez dešifrování obsahu. Výsledky práce tak nabízejí využití v oblasti bezpečnostního monitoringů, konkrétně pro pasivní identifikaci zařízení a operačních systémů.
Před reálným nasazením by však bylo potřeba zlepšit přesnost klasifikace typu zařízení a zejména minoritních tříd obecně. Také bych doporučoval provést rozsáhlejší validaci na různorodějších datech. Práci tedy považuji za prakticky přínosný základ, který bude prakticky využitelný hlavně po dalším rozšíření databáze a zpřesnění detekce.
Evaluation level: moderately difficult assignment
Grade proposed by reviewer: B
Responsibility: Mgr. et Mgr. Hana Odstrčilová