ŠAFÁŘ, R. Identifikace síťových aplikací ze šifrované komunikace [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2024.

Posudky

Posudek vedoucího

Ryšavý, Ondřej

Student přistupoval k řešení aktivně a bylo zřejmé, že ho téma zajímá. Problematiku pravidelně konzultoval a byl vždy dobře připraven. Bohužel se nepodařilo dodržet plán řešení, a proto byly některé věci, včetně textové části, dokončovány na poslední chvíli, což se negativně projevilo na celkovém řešení. Jak zaměření práce, tak schopnosti studenta umožňovaly dosažení lepších výsledků.

Dílčí hodnocení
Kritérium Známka Body Slovní hodnocení
Informace k zadání Zadání se zabývalo problematikou monitorování šifrované komunikace. Cílem této práce bylo vytvořit nástroj pro identifikaci síťové aplikace, který by dokázal analyzovat a rozpoznávat šifrovaný síťový provoz. Součástí tohoto projektu bylo také vyhodnocení navrženého přístupu. Zadání bylo hodnoceno jako obtížnější, což kladlo vyšší nároky na implementaci a testování navrhovaného řešení. Výsledky byly splněny, ačkoliv zejména vyhodnocení a integrace mohlo být provedeno lépe.
Práce s literaturou Student při zpracování tématu využíval především internetové zdroje, které poskytovaly relevantní informace, méně pak dostupné informace z odborné literatury zabývající se problematikou klasifikace šifrované komunikace. Nicméně, s ohledem na skutečnost, že se jednalo o bakalářskou práci, byl výběr zdrojů dostatečný.
Aktivita během řešení, konzultace, komunikace Konzultace byly pravidelné a probíhaly v dostatečně vhodných intervalech. Student byl během těchto konzultací aktivní a kladl otázky, které se týkaly řešených problémů. Průběh i dokončení projektu však byly negativně ovlivněny různými dílčími problémy, které bylo třeba vyřešit, což trvalo déle, než se předpokládalo.
Aktivita při dokončování Práce byla dokončena na poslední chvíli, neboť řešení dílčích problémů trvalo déle, než student předpokládal. Finální text byl k posouzení zaslán až po jeho odevzdání. Text byl připomínkován pouze částečně v průběhu jeho tvorby.
Publikační činnost, ocenění --
Navrhovaná známka
D
Body
65

Posudek oponenta

Dolejška, Daniel

Dle kritického hodnocení oponenta autor práce selhal ve všech krocích, ve kterých docházelo k rozhodování o tom jaké metody bude ve svém řešení k identifikaci aplikací používat a nutně také jaké nástroje k tomu bude potřebovat. Oponent toto hodnotí jako selhání ke kterému může dojít pouze u nevyhovující práce. Autor sice nakonec k nějakým výsledkům dokonvergoval, ty ale nejsou v souladu s tím, co po řešiteli požaduje zadání ani s tím, co si v práci sám autor definoval jako cíl. Autorem zvolené nástroje a postupy autorovi neumožnily dosáhnout autorem definovaného cíle. Práci hodnotím jako nevyhovující, tedy stupněm F.

Dílčí hodnocení
Kritérium Známka Body Slovní hodnocení
Náročnost zadání Cílem práce je nastudovat a rozšířit možnosti identifikace aplikací na základě záchytu šifrovaného síťového provozu. Téma práce není žádnou novinkou a proto již existuje nemálo různých řešní. To pokrývá jak nástroje pro záchyt, monitoringči zpracování síťového provozu, tak orchestraci a nasazení řešení v praxi. Téma práce je široké, nicméně autor část řešní přejímá za účelem rozšíření a zlepšení. Zadání bych z daného důvodu hodnotil jako snazší, ovšem stále v mezích průměrné obtížnosti.
Rozsah splnění požadavků zadání Ke zpracování bodů 1-5 nemám zásadní výhrady, ty považuji autorem práce za splněné. Možná pouze jen s drobnou poznámkou ke splnění bodu 2, vytvořená datová sada obsahuje 5 307 záznamů (536 KB). Pro použití k validaci funkčnosti implementovaného řešení může být daný rozsah dostačující, pro další případy užití už možná nikoliv. Bod 6 zadání ukládá řešiteli za cíl implementovat navrženou metodu "pro identifikaci internetových aplikací kombinující různé techniky" z bodu 5. Tento bod nepovažuji za splěný, protože řešitel používá k pokusům o identifikaci pouze techniku otisku (fingerprinting) TLS handshake JA4. Jako součást bodu 5 autor navrhl použití DNS dotazů či informací z netflow. Ty se ovšem rozhodl nepoužít, nejspíše protože by to vyžadovalo rozšíření automatizace z převzaté části řešení pro párování daných přenosů s jejich zdrojovými aplikacemi. To je podloženo textem práce, kde toto rozhodnutí autor komentuje následovně: "DNS jsem se rozhodl nepouzit, nejen, ze napriklad prohlizece se budou pripojovat na vicero adres, tak DNS jsou pouze dotazy. Spojeni jsem schopen pro implementaci sledovat a parovat je s momentalne bezicimi aplikacemi, u DNS toto nejde." (kapitola 3.5, odstavec 2) "Zaroven jsem primo nepouzil datove toky (flow/netflow). Duvodem je problematika parovani k aplikacim." (kapitola 3.5, odstavec 3) Pomine-li oponent fakt, že by identifikace aplikací měla dle zadání probíhat za použití více technik a ohodnotí-li implementaci jediné, autorem vědomě zvolené (kapitola 3.3.2, poslední věta) a implementované techniky - otisků TLS handshake - dojde k následujícímu závěru: Autorova práce je nepoužitelná. Otisk JA4 (kapitola 3.4) je tvořen třemi částmi, kde každá z nich má svou vlastní strukturu a počet položek. Autor je schopen korektně vytvořit pouze jedinou ze tří částí daného otisku. Autorovo zdůvodnění pro tuto situaci je prosté - autorem zvolený nástroj pro extrakci položek ze síťového provozu potřebné položky v čase řešení nepodporoval (kapitola 4.4.2, sekce "Počítání JA4"). K vyhodnocení výsledků implementované metody (bod 7 zadání) autorem v nějakém rozsahu došlo, nicméně výsledky nejsou reprodukovatelné. A to vše v sumárním rozsahu asi  Zpracování vyhodnocení v textu práce je neinformativní, grafy jsou špatně interpretovatelné a surové výsledky klasifikace nejsou součástí odevzdání. Ačkoliv by tedy oponent data rád interpretoval sám, nemůže. U bodu 8 si oponent není vědom, že by byl vůbec součástí prezentovaného řešení a nebo neví, co by mohlo autorem být považováno za splnění tohoto bodu zadání.
Rozsah technické zprávy Dle hodnocení fakultní aplikace pro analýzu závěrečných prací ( https://app.fit.vut.cz/normostrany ), je práce v rozsahu zhruba 37 normostran. S celkově 12 obrázky v hlavním textu práce. Rozsah vypracované práce nesplňuje stanovené minimální požadavky na rozsah.
Prezentační úroveň technické zprávy 39 Text práce je čitelný jen velmi těžko. Nějaká logická struktura a návaznost se v textu práce nachází, každopádně autor práce má tendenci "trousit" důležité informace o rozhodnutí v rámci návrhu a implementace výsledného řešení do sekcí které s nimi sice nějakým způsobem souvisí, ale návrhová a implementační rozhodnutí by neměla být tímto způsobem roztříštěna po různých kapitolách práce. Autor v textu často zaměňuje slova detekce/identifikace, kde rozdíl mezi těmito cíli je nezanedbatelný. V úvodu si autor stanovuje: "Cilem me prace je vytvoreni aplikace, ktera zvladne detekovat aplikace ze sifrovaneho provozu." ovšem cílem dle zadání je identifikace, ne detekce. Některé věty je pro alespoň částečné pochopení nutné přečíst několikrát a velice pomalu. V textu se nachází dlouhá a zamotaná souvětí, která čtenáři ve výsledku nepřináší žádné užitečné informace.  Autor si mnohdy v rámci kapitoly protiřečí a text práce obsahuje také častokrát velmi definitivní, ovšem nepravdivá, stanoviska. první věta práce v úvodu je "V dnesni dobe jde valna vetsina internetove komunikace sifrovane pomoci TLS." - chůzí síťový přenos disponuje i v dalších částech práce, v kapitole 3.2 (odstavec 2) autor tvrdí, že jediné, co lze z šifrovaného datového přenosu zjistit "[...] jsou zdrojove a cilove adresy, pripadne velikost prenasenych dat.", což pochopitelně není pravda - lze mimo jiné určit třeba frekvenci zasílání dat, jejich velikost, spočíst statistiky na základě směru komunikace aj., "QUIC, protoze pracuje na UDP spojeni, [...]" (kapitola 2.3.1, odstavec 3), UDP neustanovuje spojení, "Obe strany si asymetricky vymenili informace ke spolecnemu symetrickemu klici." (kapitola 2.1.1, odstavec 2), v textu se často nachází slovo "Handshake" v uvedené kapitalizaci, a oponent nerozumí, co se tím autor snaží říct, "Nevyhodou tohoto reseni je nutnost zachytit zacatek celeho toku. Otisk totiz vznika z Handshake. [...] Vyhodou je, ze nemusim ale chytnout zacatek toku, ale staci mi informace, ze existuje.", autor si přímo protiřečí (kapitola 3.5 odstavec 1 a 3), "Pomoci prikazoveho radku muze uzivatel poustet prikazy primo bez nutnosti psani predchoziho kodu." (kapitola 4.2.1, odstavec 1), a mnoho dalších. Části práce by oponent klasifikoval jako velmi nepovedené strojové překlady z jiného jazyka do češtiny, nebo jako obsah generovaný nějakým LLM. Autor dále také často zmiňuje softwarové nástroje, protokoly a další dříve neuvedené zkratky bez předcházejícího kontextu či podrobnějšího vysvětlení a bez uvedení relevantních odkazů alespoň v poznámce pod čarou.
Formální úprava technické zprávy 39 Práce obsahuje nezanedbatelné množství překlepů, chyb ve skloňování, nesmyslných vět, chybějících meze mezi slovy aj. Je zřejmé, že autor před odevzdáním nepoužil žádné nástroje pro ani tu nejzákladnější kontrolu pravopisu. Po jazykové stránce je práce v katastrofálním stavu. "TLS 1.3 tuto moznost podporuje, bohuzel se ale oznaceni 0-RTT plati pouze pro samotne TLS, ale ne jiz o navazani TCP spojeni." (kapitola 2.3.1, odstavec 3) Pro vizualizaci výsledků (kapitola 5.3.1) používá autor nástroj Kibana (který je součástí řešení ELK). Grafy použité v práci naprosto nevhodně používají stejný typ zobrazení (sloupce) pro dvě různé hodnoty (jedna na levé a jedna na pravé vertikální ose). Žádná z os grafů nemá uvedené jednotky a měřítko hlavní vertikální osy je logaritmické, což činí interpretaci výsledků složitější a potenciálně zavádějící. Autor měřítko zvolil záměrně za účelem dobré viditelnosti i velmi nízkých hodnot, což své opodstatnění má, nicméně rozhodně ne u všech vizualizací. Žádný graf zároveň nedisponuje ani legendou, což je u barevného sloupcového grafu značně žádoucí. Mezi další typografické chyby, které se v práci hojně nachází jsou osamocené předložky či spojky na konci řádků.
Práce s literaturou 60 Až na výjimky je autorova práce s literaturou akceptovatelná. Práce referencuje celkem 27 různých zdrojů, mezi které patří RFC standardy, softwarové dokumentace, vědecké ale i populárně naučné články. V práci se místy nacházejí ambiciózní tvrzení či popisy skutečností, které zůstávají bez referencí: celý druhý odstavec kapitoly 2.1.2, "Kombinace JA4 a JA4S nam pomuze identifikovat nejen knihovnu, kterou klient pouziva, ale i klienta samotneho ci o kterou skupinu malware se jedna." (kapitola 3.4.3, odstavec 2), "Kazda aplikace vyuziva nejakou TLS knihovnu, ktera predurcuje jake pouziva sifry, rozsireni, elipticke krivky atd. Pomoci otisku jsme schopni tyto informace dat dohromady a rozhodnout, ktera aplikace spojeni vytvorila.", kapitola 3.5, a další.
Realizační výstup 41 Z textu práce není jasné, přesně jaká podmnožina výsledného řešení byla autorem přejata od vedoucího. Z některých hlaviček automatizačních skriptů toto ale lze v určité míře identifikovat. Součástí odevzdání jsou mimo jiné i již sestavené binární spustitelné soubory. Technické řešení považuji za nefunkční. Autor si stanovil jediný úkol, a to implementovat výpočet otisků šifrovaného síťového provozu pomocí metody JA4. Z té je aktuálně správně generovat pouze jedinou ze tří nutných částí. Součástí práce bylo dále vytvoření datových sad s otisky pro různé aplikace využívající šifrovanou komunikaci. V odevzdání je k nalezení jediná datová sada s celkem 5 307 záznamy. Ta ovšem obsahuje výpočet nekompletního JA4 otisku a tedy pro účely porovnání s jakýmikoliv ostatními implementacemi na světe, je nepoužitelný. Autor se také pokusil využít strojového učení a prostřednictvím platformy ML.NET natrénovat klasifikátor na základě výše zmíněné datové sady. Část této sady použitá pro trénink skýtala (podle textu práce) celých 2 453 záznamů. Dosažená přesnost klasifikace (oponent předpokládá - na jiné, validační, části datové sady) je dle autora 48%. Oponent tento výsledek za příliš užitečný či použitelný také nepovažuje.
Využitelnost výsledků Text ani samotné výsledky práce nelze dle názoru oponenta v rozumné míře nikde prakticky využít. Datové sady jsou příliš malé a jejich kvalita je pochybná - porovnání vůči veřejné databáze otisků za účelem validace či detekce anomálií je nemožné, protože kompletní otisk nebyl vytvořen.
Navrhovaná známka
F
Body
45

Otázky

eVSKP id 157015