ČECH, M. Detekce maligních domén s využitím reputačních systémů v nástroji DomainRadar [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2025.
Zadání bylo splněno v plném rozsahu. Pan Čech byl během řešení aktivní a k práci přistupoval svědomitě. Pečlivě zpracoval rozbor a praktické ověření funkcionality dostupných reputačních systémů, navrhl a implementoval rozšíření nástroje DomainRadar o sběr reputačních dat a vytvořil rozšíření rozhodovacího subsystému o klasifikátor, který těchto dat využívá. Výsledek integroval do nástroje a funkčnost svého rozšíření prakticky ověřil. Určitým problémem z hlediska návrhu klasifikátoru, který byl bohužel identifikován pozdě, je závislost modelu na příznacích z platformy VirusTotal, protože stejná platforma byla zároveň použita k filtrování datové sady. Věřím však, že pro praktické použití je možné klasifikátor dodatečně upravit a tento nedostatek vyřešit. V celkovém kontextu práce si nemyslím, že by mělo jít o zásadní překážku z hlediska obhájitelnosti. Přínosy práce jsou širší: např. analýza reputačních systémů, implementace sběrových modulů do nástroje DomainRadar apod. Celkově je řešení užitečné a přínosné a po zapracování výše uvedené úpravy může být integrováno do nástroje DomainRadar. Pan Čech také projevil zájem se na výzkumné činnosti v této oblasti podílet i v budoucnu.
| Kritérium | Známka | Body | Slovní hodnocení |
|---|---|---|---|
| Informace k zadání | Práce souvisí s výzkumným projektem MV ČR FETA, VJ02010024. Cílem bylo vytvořit rozšíření detektoru maligních doménových jmen - nástroje DomainRadar, které bude využívat informací z reputačních systémů. | ||
| Práce s literaturou | Student využil doporučené literatury a další relevantní zdroje si samostatně dohledal. | ||
| Aktivita během řešení, konzultace, komunikace | Student byl během řešení aktivní, na konzultace docházel připraven a řešení průběžně konzultoval. Praktická analýza dostupných reputačních systémů proběhla již v zimním semestru. Vývoj klasifikátoru pak student realizoval v semestru letním. S integrací do řešení DomainRadar šlo začít trochu dříve, ale i tak se cíl podařilo splnit včas. | ||
| Aktivita při dokončování | Práce byla dokončena v předstihu před odevzdáním a studentovi jsem následně předal připomínky k zapracování, které zohlednil. | ||
| Publikační činnost, ocenění | Student zveřejnil výsledky své práce (upravený nástroj DomainRadar) jako Open-source pod licencí BSD 3-Clause na portálu GitHub: https://github.com/cech-matej/domainradar https://github.com/cech-matej/domainradar-colext https://github.com/cech-matej/domainradar-infra https://github.com/cech-matej/domainradar-clf Zároveň vytvořil několik Pull requestů: https://github.com/nesfit/domainradar/pull/1 https://github.com/nesfit/domainradar-colext/pull/8 https://github.com/nesfit/domainradar-infra/pull/2 https://github.com/nesfit/domainradar-clf/pull/3 |
Práce se zabývá rozšířením nástroje DomainRadar o využití reputačních systémů pro detekci maligních domén. Zadání považuji za mírně obtížnější, pan Čech při jeho řešení prokázal solidní vývojářské dovednosti, dokázal zasáhnout do komplexní architektury systému. Ačkoliv je zadání splněno, experimentální část vykazuje metodické nedostatky, zejména kvůli nevhodnému využití datové sady a spoléhání na službu VirusTotal, což výrazně zkresluje dosažené výsledky. Práci by mohlo značně pozvednout, kdyby autor tyto nedostatky přiznal a vhodně okomentoval – ostatně i neúspěch je validní závěr. Přínos práce je v tomto směru omezený, ovšem implementované moduly mohou být v budoucnu využitelné v jiných kontextech. Navzdory připomínkám doporučuji komisi hodnotit práci stupněm D.
| Kritérium | Známka | Body | Slovní hodnocení |
|---|---|---|---|
| Náročnost zadání | Pro splnění zadání bylo zejména nutné nastudovat, zprovoznit a rozšířit vcelku komplexní systém, a to i formou netriviálního zásahu do jeho architektury. Systém je vyvíjen v rámci řešeného výzkumného projektu, při řešení práce bylo nutné taky nastudovat dosavadní postup, použitá data a výsledky. V čase řešení práce pro systém teprve vznikala technická dokumentace, což implementační činnost jistě ztížilo. Zadání nespecifikuje, jaké reputační systémy přesně použít nebo kolik by jich mělo být, v tomto směru se tak dalo uchopit různě rozsáhle. Pro ověření přínosu v kontextu zlepšení detekce maligních domén bylo nezbytné sestavit vhodnou datovou sadu a experimentovat s různými metodami klasifikace. Z těchto důvodů považuji zadání za mírně obtížnější. | ||
| Rozsah splnění požadavků zadání | Zadání vyžadovalo návrh rozšíření nástroje DomainRadar, které povede ke zvýšení přesnosti detekce maligních domén s využitím reputačních systémů, experimentální ověření a diskuzi dosažených výsledků. Formálně je zadání splněno v celém rozsahu, nicméně experimentální ověření by mohlo být propracovanější a výsledky, které autor prezentuje, jsou dle mého názoru zavádějící (viz níže). V diskuzi se autor žel nevyjadřuje k podezřelému charakteru výsledků, na které přitom sám v práci jistým způsobem upozorňuje. | ||
| Rozsah technické zprávy | Práce má cca 80 normostran, z toho cca 20 tvoří obrázky (zejm. grafy). Jistou část tvoří poněkud repetitivní odstavce o chování jednotlivých služeb a o využitých datových modelech, které by mohly být spíše v příloze (zejm. kap. 6 a část kap. 7). Kapitoly 2–4 a diskuzní části mohly být rozpracovanější. | ||
| Prezentační úroveň technické zprávy | 70 | Práce je rozdělena na 11 kapitol (vč. úvodu a závěru). Kapitoly 2, 3 a 10 mají jen něco málo přes jednu stranu, což považuji za nevhodné. Sekce 7.4 obsahuje pouze tři věty. V kap. 5 a 6 je dvakrát uvedena číslovaná sekce pro každý ze 14 rep. systémů, což zbytečně nafukuje obsah. Jako celek je však práce strukturovaná vcelku vhodně a pochopitelně. | |
| Formální úprava technické zprávy | 60 | V práci jsem narazil na mnoho pravopisných chyb, zejména jde o chybějící čárky, ale i překlepy. Nesprávně jsou ve většině práce užity desetinné tečky. Z pohledu stylistiky také práce není na příliš vysoké úrovni očekávané od odborného textu. Po stránce typografické je jinak vše v pořádku. | |
| Práce s literaturou | 71 | Velkou část zdrojů tvoří webové stránky reputačních služeb, se kterými autor experimentoval, což je očekávatelné. Mimo to je využita literatura pojednávající o nástroji DomainRadar a několik článků o reputačních systémech, o metodách klasifikace a jejího hodnocení. Tyto zdroje považuji za relevantní a vhodné, ač jich není příliš mnoho. Zdroj č. [11] odkazovaný z kap. 2 je pro práci irelevantní, neboť nehovoří o reputačním systému (v kontextu práce), naopak kapitola v zásadě nehovoří o žádné práci, která by řešila stejný problém jako autor. Některá tvrzení by mohla být lépe zdůvodněna/vysvětlena. | |
| Realizační výstup | 66 | Autor implementoval řadu sběrových a extrakčních modulů pro nástroj DomainRadar. Předvedl zde dobré vývojářské dovednosti a schopnost pochopit a vhodně (z pohledu architekury) rozšířit existující systém, chválím také implementaci mock API simulujícího používané služby pro účely vývoje. Zdrojový kód je vcelku slušně okomentovaný. Z přiložených souborů je jasné, které části kódu jsou autorova práce. Oceňuji přiložení a vhodné okomentování skriptů, které byly použity při experimentech a tvorbě grafů v práci. Další část práce je podle mě bohužel zatížená metodickými nedostatky, které podkopávají její výstupy. Využita byla datová sada doménových jmen z období 03/2023 až 07/2024. Nabízí se otázka, zda má smysl vyhodnocovat možnosti reputačních systémů na doménách, které už dva roky nemusí existovat. Z této sady byly v práci použity příliš malé náhodné vzorky. Hlavním problémem je, že navržené klasifikátory se rozhodují zejména podle odpovědí služby VirusTotal, což je jasně vidět z obrázků 9.3, 9.6, C.1 a C.2. Může jít o systematickou chybu vycházející z použité datové sady, která byla už při svém vzniku pomocí služby VirusTotal filtrována. Zároveň předpokládám, že se zde projevuje poněkud odlišné fungování této služby: nejde o reputační systém v běžném smyslu, ale spíš o agregátor jiných klasifikačních služeb, který na rozdíl od skutečných rep. systémů zpracuje všechny vstupy. Klasifikátory tak dosahují přesnosti >99 %, což autor komentuje slovy: „Oba výsledné klasifikátory [...] dosahují velice slušných výsledků, což je zvláště pozoruhodné vzhledem k tomu, že většina reputačních systémů vykazovala výrazně nižší úspěšnost klasifikace [...]“ (kap. 9.7). Pak už bohužel autor výsledkům mnoho pozornosti nevěnuje. Nabízelo by se např. důslednější experimentování s klasifikací podle různých podmnožin zdrojů/vektoru příznaků. Mrzí mě, že si těchto nedostatků nevšiml autor ani vedoucí. | |
| Využitelnost výsledků | Autor provedl experimentální zhodnocení čtrnácti možných nových zdrojů dat pro klasifikaci doménových jmen. Grafy uvedené v kapitole 6 naznačují, že většina z nich má pro řešený problém minimální nebo žádný přínos (což ale může být způsobeno volbou vzorku dat). Navzdory těmto zjištěním autor pro všechny zdroje implementoval sběrové a extrakční moduly pro nástroj DomainRadar. Problémem je, že téměř všechy využité zdroje významně omezují počty dotazů v určitém čase. Nástroj DomainRadar nyní zpracovává desítky tisíc záznamů denně, navržené řešení do něj tedy není možné z principu zahrnout. K tomuto problému se autor v práci vyjadřuje jen velmi okrajově. Navzdory tomu si myslím, že implementované moduly mohou mít přínos a praktické využití v dalších fázích výzkumu. Za předpokladu, že budou s patřičně upravenou metodikou vytvořeny nové trénovací datové sady a klasifikátory, by tyto moduly mohly být využitelné např. při použití nástroje pro nárazové vyhodnocování menších balíků domén. |
eVSKP id 162578