Masarykova univerzita vydala platformu KYPO Cyber Range (KYPO CRP) jako open-source software, který má pomoci rozvíjet dovednosti v oblasti kybernetické bezpečnosti v České republice i Evropě. Cílem je pomoci vyřešit problém chybějících odborníků na kybernetickou bezpečnost poskytnutím platformy pro kyberbezpečnostní vzdělávání. Platforma staví na několikaletých zkušenostech s využíváním kybernetických rozsahů při výuce, výcviku a cvičeních kybernetické obrany včetně českých technických cvičení kybernetické bezpečnosti a školení profesionálů z energetiky.
kyberbezpečnostní vzdělávání prevence cloud cyber range KYPO CRP
Vznik platformy pro kyberbezpečnostní vzdělávání
S rozvojem digitální společnosti neustále roste poptávka po odbornících z oblasti kyberbezpečnosti [2]. Jejich vzdělávání a příprava je prioritou řady států EU, která volá po rozvoji kyberbezpečnostních dovedností a tréninkových prostředí [2]. Kromě teoretických znalostí je velmi důležité, aby tito odborníci rozvíjeli také své praktické schopnosti. Z tohoto důvodu je kladen důraz na praktický přístup umožňující získání reálné zkušenosti např. při řešení kyberbezpečnostního incidentu. Právě to je smyslem tréninkových prostředí označovaných jako cyber range.
Jedním z těchto tréninkových prostředí je i KYPO Cyber Range Platform (dále KYPO CRP), jehož počátky sahají do roku 2013, kdy Masarykova univerzita začala řešit projekt Kybernetický polygon (VG20132015103) v rámci Programu bezpečnostního výzkumu Ministerstva vnitra ČR. Cílem projektu bylo vytvořit prostředí pro aplikovaný výzkum, ověřování nových bezpečnostních metod, nástrojů a školení členů bezpečnostních týmů. Projektový tým získal za tento projekt Cenu ministra vnitra za bezpečnostní výzkum a navázal projektem Simulace, detekce a potlačení kybernetických hrozeb ohrožujících kritickou infrastrukturu (VI20162019014).
V rámci aktivit realizovaných nad platformou KYPO CRP je důležité zmínit sérii cvičení Cyber Czech realizovaných ve spolupráci s Národní agenturou pro kybernetickou a informační bezpečnost (NÚKIB). Ta disponovala prvními kyberbezpečnostními cvičeními vytvořenými v České republice, která využívala naplno vlastnosti první verze prostředí a udávala směr dalšího rozvoje. Klíčovým okamžikem, který ovlivnil další směřování rozvoje KYPO CRP pak byl vstup do Evropského projektu CONCORDIA zastřešujícího spolupráci mezi univerzitami a průmyslovými partnery na rozvoji kyberbezpečnosti pro zajištění digitální suverenity EU.
Přechod k otevřenému modelu a komunitě
Přestože je cyber range velmi užitečným nástrojem pro vzdělávání studentů a kyberbezpečnostních profesionálů, jejich rozšíření je v současnosti mezi organizacemi stále poměrně malé. Příčiny tohoto stavu jsou v zásadě dvě. První z nich je technologická složitost a cena celého prostředí. Navrhnout, vybudovat a provozovat takové prostředí zcela samostatně je v mnoha případech nad možnosti organizací, které jej potřebují. Zakoupení cyber range je pro většinu organizací zcela nemyslitelné, protože se jejich ceny pohybují v řádech statisíců euro. Druhou příčinou je pak uzavřenost a vzájemná nekompatibilita existujících řešení, kdy spolupráce na tréninkových scénářích mezi jednotlivými institucemi představuje netriviální úkol z pohledu technologického i autorsko-právního.
Tyto skutečnosti jsou bariérou pro větší rozšíření cyber range a využití v rámci kyberbezpečnostního vzdělávání. Jednou z možností, jak tuto bariéru překonat, je open source přístup. Ten zvolil také tým KYPO CRP. Platforma je k dispozici zdarma a náklady na její pořízení jsou značně snížené. Důležitou roli hraje licenční otevřenost, přenositelnost obsahu a budování komunity zaměřené na praktické vzdělávání. To znamená, že se organizace mohou soustředit na tvorbu tréninků dle vlastních potřeb a jejich realizaci. Výsledky své tvorby pak mohou také sdílet s ostatními a nadále je díky komunitě vylepšovat. Nejde však jen o poskytnutí prostředí zdarma a snížení nákladů na pořízení. Důležitou roli zde hrají licenční otevřenost, přenositelnost obsahu a budování komunity soustřeďující se na praktické vzdělávání. Organizace se tak mohou soustředit na vlastní tvorbu tréninků a jejich realizaci. Otevřený formát popisující virtuální prostředí a samotný trénink tak poskytuje možnost volně vyměňovat jednotlivé stavební bloky a snížit náklady na vytvoření tréninku.
Otevřený formát umožňuje zajistit kompatibilitu s dalšími existujícími tréninkovými prostředími. Je možné použít přímo otevřený formát nebo vytvořit poměrně jednoduše konvertor z otevřeného formátu do nativního formátu konkrétní cyber range. V současné době je otevřený formát dále využíván nástrojem Cyber Sandbox Creator [3], který je vhodný pro přípravu tréninků a realizaci jednoduchých kyberbezpečnostních školení.
Současné využití platformy
V současnosti je KYPO CRP využíváno ve výuce na Fakultě informatiky Masarykovy univerzity a po uvolnění jako open source software je nasazováno pro potřeby testování a výuku studentů na několika institucích v Evropě.
Pilotní nasazení KYPO CRP mimo Masarykovu univerzitu bylo poprvé realizováno na přelomu let 2020 a 2021 ve spolupráci s Vysokým učením technickým v Brně, které jako člen Evropského projektu SPARTA provádělo rešerši a hodnocení dostupných tréninkových prostředí. Fakulta elektrotechniky navíc chce využít tréninkové prostředí pro výuku studentů ve svých laboratořích. V budoucnu pak budou k platformě připojeny prvky inteligentních sítí pro potřeby výuky a výzkumu.
KYPO CRP bylo testováno v Holandsku na vysokých školách (Hogeschool Utrecht, Haagse Hogeschool, Hogeschool Windesheim) hledajících možnost pro praktickou výuku kyberbezpečnosti. Po měsíčních testech byla platforma velmi kladně ohodnocena a došlo k odsouhlasení další spolupráce a prototypového nasazení.
KYPO CRP je také využito v několika kurzech profesního vzdělávání na akademické či komerční bázi. Jako příklad z poslední doby lze zmínit využití v kurzech připravovaných v rámci spolupráce s Národní agenturou pro komunikační a informační technologie (NAKIT) a podpořené agenturou TAČR. Dále byla platforma v předchozích letech použita pro několik školení kyberbezpečnosti pro zaměstnance organizací z energetického sektoru.
V neposlední řadě bylo KYPO CRP využito pro školení představující základní bezpečnostní aspekty virtualizace založené na technologii kontejnerů. Vytvořené školení obsahuje prezentaci s technologickým úvodem s navazujícími praktickými cvičeními. V době psaní článku proběhla dvě opakování tohoto školení. První bylo realizováno v listopadu 2020 v rámci konference EGI 2020 pro administrátory a bezpečnostní pracovníky z akademických institucí v rámci EU. Druhý běh byl v únoru 2021 součástí semináře IRIS pro správce akademických výzkumných infrastruktur ve Velké Británii. Poslední běh byl realizován v březnu 2021 pro účastníky konference ISGC.
Technologie platformy
KYPO CRP bylo navrženo s cílem snížit náklady na realizaci praktických kyberbezpečnostních tréninků pomocí automatizace, flexibility, škálovatelnosti a opakovatelnosti základních činností. Architektura platformy je postavena na mikroslužbách zajišťujících dobrou rozšiřitelnost prostředí do budoucna. Využívá také moderní cloudové platformy OpenStack pro stavbu a vlastní běh virtuálních prostředí. Je tak zajištěna dobrá škálovatelnost platformy. Mezi další využité klíčové technologie patří jazyky Python, Java, TypeScript a související softwarové frameworky. Jako úložiště událostí vznikajících v rámci tréninků bylo zvoleno analytické úložiště Elasticsearch.
Při tvorbě virtuálních prostředí je využíváno principu s názvem infrastruktura jako kód, kdy jsou veškeré součásti emulovaného prostředí (např. stroje, linky či síťové prvky) a jejich konfigurace popsány ve strojově čitelné podobě. Tento popis je založen na formátu Heat a je zaznamenán ve formátu YAML, který je snadno čitelný i člověkem (viz Obr. 1). Navazující konfigurace jednotlivých strojů v rámci virtuálního prostředí je realizována pomocí nástroje Ansible. Pro potřeby KYPO CRP jsou pak tyto popisy virtuálních prostředí verzovány v interním Git repozitáři či externím nástroji jako je Gitlab.
Pro popis tréninku je v KYPO CRP využito formátu JSON, který je opět snadno čitelný strojem i člověkem (viz Obr. 2). Trénink je možné vytvořit v interním nástroji v rámci platformy či v libovolném textovém editoru. Takto vytvořený soubor je pak možné díky snadnému exportu a importu sdílet s dalšími organizacemi využívajícím tuto platformu.
Nasazení KYPO Cyber Range Platform
Platforma je navržena tak, aby bylo možné využít výhod kontejnerizace a automatizovaného nasazení. Veškeré potřebné informace pro nasazení platformy jsou pak zapsány ve veřejně dostupné dokumentaci na webu KYPO CRP [5].
Jedinou požadovanou prerekvizitou pro nasazení KYPO CRP je cloudové prostředí OpenStack s kompatibilní konfigurací a množstvím zdrojů potřebným pro zamýšlené úkoly. Po nastavení instalačních skriptů a skriptů pro nasazení je pak možné platformu nasadit během několika desítek minut. V případě potřeby lze dohodnout nasazení platformy přímo týmem KYPO CRP.
Vytvoření tréninku v KYPO Cyber Range Platform
Podmínkou pro realizaci tréninku je samozřejmě jeho dostupnost. Při tvorbě tréninku je třeba vytvořit dvě samostatné části, které jsou pevně svázány až při jeho realizaci v KYPO CRP.
První částí je definice sandboxu, tedy virtuálního prostředí obsahujícího virtuální stroj nebo stroje propojené sítí. Definice sandboxu je popsána pomocí dříve uvedeného otevřeného formátu a umožňuje zachytit konfiguraci stroje včetně zdrojů a operačního systému společně s propojením s ostatními stroji v rámci sítě. Dále je nutné pro každý stroj v definici vytvořit Ansible skripty popisující konfiguraci celého stroje společně s instalací softwaru.
Druhou částí je vytvoření tréninkové definice obsahující všechny náležitosti v budoucnu realizovaného tréninku. Definice je opět popsána pomocí dříve prezentovaného otevřeného formátu. Ten obsahuje název tréninku, jeho popis, odhadovanou dobu trvání a dále členění na jednotlivé bloky (level), kterých může obsahovat libovolné množství. V současné době jsou pak dostupné tři základní typy bloků umožňující vytvořit poměrně komplexní trénink.
Game level – nejdůležitější z bloků obsahuje popis úkolu, poskytuje přístup do virtuálního prostředí pro jeho řešení a zadání výsledku do platformy. Blok poskytuje přístup do virtuálního prostředí skrze Spice klienta, případně konfigurační soubor pro připojení skrze SSH. Lze v něm nastavit počet získaných bodů za vyřešení úkolů a také systém nápověd, které účastníka tréninku v případě problémů k řešení dovedou. Samozřejmostí je nastavení bodové penalizace za zobrazené nápovědy a možnost zobrazit řešení (při ztrátě bodů).
Info level – tento blok představuje možnost, jak zobrazit účastníku školení potřebné informace. Ve své podstatě jej lze chápat jako ekvivalent prezentace či webové stránky.
Assessment level – poslední z bloků poskytuje prostředí pro vytváření dotazníků a testů s několika typy otázek. Lze jej využít pro doplňkové testování znalostí účastníků v oblastech, kde není vhodné použít praktický úkol. Samozřejmostí je nastavení bodového hodnocení odpovědí u jednotlivých otázek. Dotazník lze využít bez bodového hodnocení i pro získání zpětné vazby na trénink.
Realizace tréninku v KYPO Cyber Range Platform
Realizaci tréninku v rámci KYPO Cyber Range Platform lze rozdělit do dvou bezprostředně navazujících částí. První částí je vytvoření prostoru s jednotlivými virtuálními prostředími, která budou použita pro výuku v rámci dále vytvořeného tréninku. Druhou částí je pak vytvoření tréninku, vlastní výuka, ukončení tréninku s případným vyzvednutím nasbíraných informací o průběhu a následně zrušením virtuálních prostředí a uvolněním všech použitých zdrojů.
Prvním krokem pro úspěšnou realizaci tréninku v KYPO Cybe Range Platform je vytvoření prostoru pro trénink (Pool) obsahujícího jednotlivá virtuální prostředí (Sandbox). Celý postup je podrobněji popsán v několika krocích (viz Obr. 3).
- V připojeném Git repozitáři je dostupná kompletní a validní definice sandboxu.
- Instruktor vloží v uživatelském rozhraní URI Git repozitáře z předchozího kroku a zanese definici sandboxu do KYPO Cyber Range Platform.
- Nyní lze alokovat prostor pro trénink (Pool), označuje maximální množství vytvořených zdrojů pro trénink a zároveň omezuje počet účastníků, kteří se mohou účastnit tréninku současně.
- Po kliknutí na tlačítko pro vytvoření tréninkových prostředí (Sandbox) je z Git repozitáře stažena definice sandboxu, která je analyzována (4a), a následně jsou postaveny konkrétní sandboxy (4b).
- Vytvořené sandboxy mohou být dále zkontrolovány či upraveny Instruktorem (5a) přistoupivším přes SSH nebo jsou bez dalších úprav použity pro realizaci tréninku.
Druhý krok, samotná realizace tréninku, sestává z přípravy tréninkové definice, vytvoření konkrétní tréninkové instance a její exekuce. Po ukončení tréninku jsou v případě potřeby stažena všechna data o proběhnutém tréninku a uvolněny zdroje pro další použití. Celý proces je zachycen na přiložené ilustraci (viz Obr. 4).
- Instruktor vytvoří definici tréninku (Definition), která je naprosto nezávislá na dříve vytvořené definici sandboxu.
- Je vytvořen konkrétní trénink (Instance) a je mu přiřazen obsah (Definition).
- Následně je tréninku přiřazen volný prostor (Pool) se zdroji.
- Instruktor předá vygenerovaný přístupový token účastníkům tréninku.
- Účastníci zahájí trénink zadáním tokenu do KYPO CRP. K tréninku se pak mohou pomocí tokenu po dobu, kdy je instance aktivní, kdykoli vrátit.
- Účastníci mohou k sandboxu v rámci svého tréninku přistoupit pomocí grafického rozhraní nebo po stažení konfigurace skrze SSH klienta.
- Instruktor může sledovat průběh tréninku a postup jednotlivých účastníků pomocí real-time vizualizací v grafickém rozhraní KYPO CRP.
- V okamžiku dokončení tréninkové instance jsou k dispozici podrobné výsledky pro stažení a další vyhodnocení.
- Po ukončení tréninkové instance a stažení dat jsou alokované zdroje uvolněny a dostupné pro další použití
Závěr
Vydání KYPO CRP jako open source a jeho zpřístupnění zájemcům z Evropy i světa je z pohledu Masarykovy univerzity chápán jako příspěvek kyberbezpečnostní komunitě ke zvýšení počtu odborníků skrze větší dostupnost prakticky orientovaného kyberbezpečnostního vzdělávání pro studenty i profesionály. V současné době je proto rozvíjena komunita kolem platformy. Cílem je přitáhnout nové uživatele a rozvíjet spolupráci, která bude směřovat ke zvýšení povědomí o KYPO CRP a většímu využití této platformy. Jsou také zkoumány možnosti spolupráce s poskytovateli cloudových služeb, aby byl umožněn přístup k platformě i organizacím bez vlastních výpočetních zdrojů. Paralelně je pro platformu vytvářen obsah ve formě kyberbezpečnostních školení na různá témata.
V neposlední řadě se tým kolem KYPO CRP zapojuje do aktivit na evropské úrovni a zároveň pokračuje ve výzkumu zaměřeném na zlepšování vzdělávací zkušenosti i technologií pro její dosažení. Spolupracuje také na profesním programu zaměřeném na kyberbezpečnost.
Jakub Čegan Tato e-mailová adresa je chráněna před spamboty. Pro její zobrazení musíte mít povolen Javascript.
Daniel Tovarňák Tato e-mailová adresa je chráněna před spamboty. Pro její zobrazení musíte mít povolen Javascript.
POUŽITÉ ZDROJE:
[ 1 ] As The End Of 2020 Approaches, The Cybersecurity Talent Drought Gets Worse [online]. Forbes Media, 2020 [cit. 2021-03-10]. Dostupné z: https://www.forbes.com/sites/emilsayegh/2020/09/22/as-the-end-of-2020-approaches-the-cybersecurity-talentdrought-gets-worse/?sh=3a41adbc5f86
[ 2 ] EU Cybersecurity Policy [online]. 2020 [cit. 2021-03-10]. Dostupné z: https://ec.europa.eu/digital-single-market/en/cyber-security
[ 3 ] CyberSec4Europe delivers Cyber Sandbox Creator: Project Story [online]. 2020 [cit. 2021-03-10]. Dostupné z: https://ec.europa.eu/digital-single-market/en/news/cybersec4europe-delivers-cyber-sandbox-creator
[ 4 ] MUNI a NAKIT připravily kurzy kyberbezpečnosti pro IT profesionály [online]. 2021 [cit. 2021-03-10]. Dostupné z: https://csirt.muni.cz/about-us/news/muni-a-nakit-pripravily-kurzy-kyberbezpecnosti-pro-it-profesionaly
[ 5 ] MUNI a NAKIT připravily kurzy kyberbezpečnosti pro IT profesionály [online]. 2020 [cit. 2021-03-10]. Dostupné z: https://docs.crp.kypo.muni.cz/