← Back to list

O mém projektu aneb na čem vlastně pracuju?

Na svém projektu už pracuju nějaký ten pátek a první výsledky už se dostavily. Pojďme se na ně tedy podívat z laického pohledu — jaký…

Martin, Dagmar & Tao · 2023-06-20 01:57 · 0 claps · 3.7 min read
#kyberbezpečnost #věda #postdoc
Open on Medium ↗

O mém projektu aneb na čem vlastně pracuju?

Na svém projektu už pracuju nějaký ten pátek a první výsledky už se dostavily. Pojďme se na ně tedy podívat z laického pohledu — jaký problém řeším, jak je to složité a k čemu to bude, až to bude. Navíc popularizace vědy je teď v módě a vědci za to sbírají bobříky, tak si tímhle článkem taky nějakého ulovím — a je to dobře, jen ať se o probíhajícím výzkumu mluví a píše.

Na úvod musím čtenáře zklamat — ne každý vědec hledá lék na rakovinu nebo odpovědi na základní otázky života, Vesmíru a vůbec. Moje cíle jsou výrazně prozaičtější, takže můj výzkum nemá takový wow efekt a to dokonce ani na poměry mého oboru (kyberbezpečnost), který jinak pozornost vzbuzuje, ale většinou jen tím, jaké nové útoky se objevují a co vše jim padlo za oběť, než tím, jak se jim účinně bránit.

Kyberbezpečnostní hrozby jsou všude kolem nás — nikdy nevíte, kdy padnete za oběť phishingu, váš počítač napadne ransomware nebo vaši oblíbenou webovou službu odstaví DDoS útok. Antiviry, firewally i ostražitost uživatelů pomáhají výrazně snižovat riziko, ale ono se vždy něco stane, protože útočníci jsou vždy o krok napřed před obránci. Provozovatelé větších počítačových sítí nebo jiných infrastruktur proto provozují kyberbezpečnostní týmy (CSIRT/CERT) nebo operační centra (SOC), jejichž úkolem je monitorovat hrozby a včas reagovat na útoky, případně minimalizovat jejich dopady. Představte si je jako takové hasiče v kyberprostoru. Jakmile se někde spustí alarm (nalezen infikovaný soubor, identifikován pokus o útok, ohlášen neoprávněný přístup), incident handler (člen týmu zodpovědný za řešení incidentu) začne zjišťovat kde se co stalo, jestli jde o útok a jaký a jak mu nejlépe zabránit.

Velkou hrozbou je v současnosti ransomware — škodlivý kód se dostane na váš počítač třeba jen tím, že kliknete na odkaz ve phishingovém mailu. Ransomware vám pak zašifruje všechna data v počítači a požaduje zaplacení výkupného za jejich dešifrování. Mezitím se ale rozleze na vaše ostatní zařízení přes váš Dropbox, na počítače vašich kolegů přes sdílený disk nebo zneužitím zranitelností na počítačích ve stejné síti. Pořádně neumíme odhadnout kdy a kde takový ransomware udeří, často se o tom dovídáme až z telefonátu nebo mailu uživatele, jehož počítač byl napaden jako první. Odstavit napadený počítač a pokusit se na něm zachránit data umíme, jak ale zabránit tomu, aby se ransomware nerozšířil dál, nebo jak zjistit, jestli se tak už nestalo? Tady přichází na řadu můj výzkum.

V předchozím projektu jsme se s kolegy snažili zmapovat počítačovou síť, tedy udělat si seznam všech aktivních zařízení, identifikovat jejich operační systém a otevřené síťové služby, odhalit zranitelnosti, určit jejich polohu a zařazení do podsítě nebo organizační jednotky, spárovat s kontaktními údaji na uživatele nebo administrátora a tak dále. Zní to triviálně a pro malou síť to lze snadno udělat ručně, ale velkou síť o desetitisících zařízení a uživatelů už to tak jednoduché není. Podařilo se nám ale vytvořit systém, který takovou mapu sítě dokázal vytvořit víceméně automaticky a ke každému zařízení ve velké síti dohledat aspoň základní údaje.

V mém současné projektu se snažím o to využít právě tuhle mapu sítě k tomu, abych napověděl incident handlerovi kam se dívat při řešení incidentu, respektive kam všude se mohl takový ransomware rozšířit. V podstatě je to podobné jako při sledování Netflixu — dokoukáte jeden seriál a Netflix vám doporučí další podle toho jaký žánr vás baví, v jakém jazyce seriály sledujete nebo jaké herce máte rádi. No a tady je to stejné. Dejme tomu, že uživatel nahlásil napadený počítač. Incident handler se podívá do mapy sítě a vidí: počítač s IP adresou a.b.c.d, operačním systémem ABC, po správou uživatele XY a umístěný na oddělení 123. No a já vyvíjím nástroj, který s tímhle zadáním prohledá mapu sítě a vypíše seznam počítačů, které jsou tomu napadenému nejpodobnější (např. stejný operační systém, stejné služby, stejná role) a zároveň jsou v nějakém smyslu nejblíž (např. fyzicky blízko, ve stejné podsíti, používané stejným uživatelem). Bez bližší analýzy napadeného počítače totiž nevíme o jaký typ ransomware se jedná, tedy ani jak se může šířit dál. Zároveň jde o čas — ransomware se může rozšířit za pár minut nebo už dokonce další počítače napadnul a jen se teprve neprojevil. Než by incident handler prohledával síť a snažil se tyto další cíle identifikovat ručně, trvalo by mu to spoustu hodin. S mým nástrojem ale má seznam potenciálních cílů za pár vteřin a může hned rozesílat varování jejich správcům. Jedno takové včasné varování může zabránit zašifrování disku a ztrátě dat. A co kdyby to náhodou byl počítač vědce, který zpracovává data o vývoji léku na rakovinu? No vidíte, vlastně i tomu vývoji léku na rakovinu můžu pomáhat.

První verzi svému systému mám hotovou a vypadá to, že funguje. Velký dík patří Vladimíru Boučkovi, který první prototyp vytvořil ve své bakalářské práci a pak jsme to dotáhli a nástroj dokonce zveřejnili na GitHubu [1]. Návrh systému budu v červnu prezentovat na konferenci WiMob a článek o něm pak vyjde v konferenčním sborníku. Zatím je potřeba vše složitě nastavit, aby výstupy byly co nejpřesnější, ideálně podle scénáře předchozích infekcí a jejich šíření. Když takových dat nasbíráme dost, třeba budeme moct použít strojové učení, aby se systém správně nastavil sám. Uvidíme, zatím nejsme ani ve čtvrtině mého projektu.

M.

[1] https://github.com/CSIRT-MU/recommender-system-for-network-security-management


메타데이터
post_id
550bc91df3f4
slug
o-mém-projektu-aneb-na-čem-vlastně-pracuju-550bc91df3f4
url
https://medium.com/@postdoc/o-m%C3%A9m-projektu-aneb-na-%C4%8Dem-vlastn%C4%9B-pracuju-550bc91df3f4
canonical_url
https://medium.com/@postdoc/o-m%C3%A9m-projektu-aneb-na-%C4%8Dem-vlastn%C4%9B-pracuju-550bc91df3f4
author_url
https://medium.com/@postdoc
status
ok
fetched_at
2026-07-16 03:17:46