pátek 29. května 2009

O bezpečnosti, tentokrát ne námořní

Bezpečnost informačních systémů je obor, který dnes prochází radikálním zlomem, jak na straně obránců, tak i na straně útočníků. Zdaleka již není jen obskurním podoborem informatiky, ale dostává se i do ohniska zájmu politiků (viz proslov prezidenta Obamy) a průmyslu.

Hlavním hybatelem změn je existence a rostoucí význam černého trhu, na kterém lze snadno a relativně bezpečně (i když ne stoprocentně) zpeněžit meziprodukty a výsledky ilegálních aktivit. Tyto trhy umožňují efektivní výměnu znalostí o zranitelných místech programů a systémů, kódu, který tyto zranitelnosti využívá, přístupu k infikovaným počítačům a jejich sítím (botnety) nebo rovnou komplexních služeb, jako je denial of service útok či rozesílání spamu na zakázku.

Vysoká efektivita útoků vyžaduje kvalitnější obranu, ale reálně jsou dnes počítače chráněny hůře než kdykoliv předtím. Antivirová řešení (nebo síťové IDS systémy typu SNORT) selhávají v situaci, kdy se nový virus objeví každé dvě vteřiny. Je li počítač jednou úspěšně napaden, je navíc velmi obtížné nákazu objevit či odstranit, protože použití rootkitů (maskovacích technik, které malware skryjí, obvykle pomocí modifikace služeb OS) je nyní standardem. Použití osobních firewallů či firewallů na sítí sice problém ulehčuje, ale za cenu vysokých nákladů za správu a údržbu, a tyto firewally mohou být snadno překonány pomocí trojských koní zasílaných emailem či stažených z infikovaných webových stránek.

Na tyto hrozby dnes většina antivirových společností odpovídá nabídkou ochrany pomocí reputace či důvěryhodnosti jednotlivých zdrojů informací, souborů a identit. Tyto techniky využívají toho, že je v dnešní době jednodušší reprezentovat legitimní, spíše než nelegitimní provoz (soubory, aktivity) a na základě široké sítě senzorů v chráněných počítačích klientů kategorizovat nový obsah předtím, než nakazí významnou populaci zranitelných systémů. Tyto techniky samozřejmě nejsou nepřekonatelné, a se zájmem budeme sledovat, jakou protiakci zvolí autoři malware.

Další technologie ochrany se zaměřují na ochranu jednotlivých přenosů, operací či funkčních systémů. To ponechává útočníkům možnost zaútočit na rozhraní mezi vrstvami protokolů, využít mlčky předpokládaných, ale poté už v praxi neverifikovaných předpokladů, jako je například korektnost DNS záznamů, bezpečnost routovacích protokolů či ochrana klíčů a autentifikačních údajů.

Technicky je sice možné systémy, data či přenosy zabezpečit i vůči sofistikovaným útokům, ale s rostoucí mírou bezpečnosti bohužel klesá i využitelnost systémů které jsou zabezpečovány a dramaticky stoupá cena.

Proto nejsou technická opatření sama o sobě řešením, ale jen jeho součástí. Každé bezpečnostní řešení je nutně kompromisem mezi použitelností, cenou a bezpečností systému. Tento kompromis ale musí být postaven na důkladné znalosti toho co chráníme, zejména na znalosti hodnoty systému a jeho částí z pohledu obránce i útočníka. Proto jsou dnes aktuální obecné modely bezpečnosti, které umí tyto faktory namodelovat, efektivně representovat a promítnout je do bezpečnostní strategie a i do konkrétního výběru technik obrany. Patrně nejvýznamnějším modelem je teorie her a algoritmická teorie her, ve spojení s principy z mikroekonomie, psychologie a teorie organizace.

Do budoucna proto očekáváme ne využití jediné bezpečnostní technologie, ale celého jejich spektra, které zajistí optimální zabezpečení pro každou činnost a izolaci mezi daty, systémy a zdroji používanými pro různé činnosti - od čistě epidemiologických přístupů pro nevýznamné zdroje až po kvalitní ochranu a izolaci zdrojů s potenciálně vysokým výnosem pro útočníka či ztrátou pro obránce.

Připravovaný volitelný předmět věnovaný bezpečnosti, založený na mezinárodně uznávané učebnici, Vám snad pomůže učinit kvalitní rozhodnutí v budoucnosti.

edit: gramatické úpravy

čtvrtek 21. května 2009

Na piráty inteligencí

Pro nezasvěceného je pole umělé inteligence pole poseté emocionálními roboty, bezobslužnými automobily a neporazitelnými šachisty. Při podrobnějším pohledu nám ovšem vypluje na povrch bohatá škála aplikací, algoritmů a přístupů uplatnitelných při řešení prakticky jakéhokoliv netriviálního problému.

V poslední letech je možné zaznamenat zvýšený neklid námořní dopravy v okolí Adenského zálivu i jinde na světě. Pirátství jako takové není jevem novým, nicméně při současné hustotě mezinárodní námořní dopravy a zároveň relativní jednoduchosti přepadení se tento fenomén stává významným.

Taktiky přepadení nákladních lodí začínají u použití jednoho malého člunu s několika piráty, pokračují přes útoky využívající moderní odposlouchávací a komunikační prostředky až k vysoce koordinovaným akcím využívajících mateřských lodí jako základen, z nichž je dále možné vyslat více malých člunů a na danou loď zaútočit i dále od popřeží. Poslední taktika významě rozšiřuje pole působnosti pirátů, a proto se i oblast pokrytí hlídkami rapidně rozšiřuje. Tato situace nepřímo vybízí k využití méně tradičních postupů a moderních technologií.

Ve skupině ATG (Agent Technology Center) se pracuje na řadě projektů využívajících multiagentní přístup. Cílem jednoho z našich projektů je odhalit lodě s anomálním, popřípadě nepřátelským chováním, odhadnout jejich případný plán či cíl a na základě toho optimálně rozmístit hlídkové lodě tak, abychom minimalizovali možnost přepadení. Zároveň je nutné předpokládat adaptaci pirátů na rozmístění hlídek a tak vzniká klasický herní problém, kdy jedna strana reaguje na druhou a snaží se optimalizovat své strategie.

Jak je vidět, k úspěšnému řešení problému je třeba vypůjčit si teorie a metody z více oblastí umělé inteligence.
Určitě nelze opomenout metody strojového učení a dolování dat – předzpracování námořních a lodních údajů (jednou z možností jsou radarová data nebo satelitní snímky, ve kterých je nutné lodě rozpoznávat) pro následnou klasifikaci či sdružování lodí do jenotlivých tříd.
Dále design multiagentní simulace – agenti zde reprezentují jak piráty, tak hlídky, případně i jednotlivé přepravní lodě. Agenti mohou kooperovat či společně plánovat za účelem zlepšení výsledků.
A v neposlední řadě je třeba použít i metody z teorie her, modelování protivníka a rozpoznávání jeho plánů. Nepřátelskou stranu tím lépe identifikujeme a pokud se nám daří odhadovat její budoucí pozice, prevence útoků se mnohonásobně zefektivní.

Tyto přístupy se neobejdou bez statistických a matematických základů, na druhou stranu využíváme hotové nástroje zejména pro rychlou implementaci algoritmů a testování jejich účinnosti.

Pro demonstraci funkčnosti je tento systém vizualizován pomocí aplikace Google Earth, která nabízí pohled na svět, do kterého stačí rozmístit hlídky podle výše zmíněných algoritmů a tím zklidnit piráty zčeřené oceány a učinit námořní dopravu opět bezpečnou.

Výběrové řízení na studenty OI

Do bakalářského programu s plánovanou kapacitou 160-200 studentů se přihlásilo 659 studentů, z nichž 127 bylo přijato bez přijímacího řízení. Pouze studenti s průměrem 1,0 z matematických a fyzikální předmětů a studenti s výbornými výsledky ve SCIO testech byli přijati tomto kole. O magisterské obory s celkovou plánovanou kapacitou 200 projevilo zájem 392 studentů. Bez přijímacího řízení bylo přijato 86 z nich, na základě výsledků z bakalářského studia. Zájem mnoha špičkových studentů o programy OI, který nám dělá velikou radost, bohužel také způsobil, že na mnohé výborné zájemce se v kole přijímání bez přijímaček nedostalo. Doufáme, že na OI nezanevřou a po úspěšných přijímacích zkouškách se do týmu OI připojí.

Tomáš Svoboda

pondělí 18. května 2009

Řešení problémů a (jiné) hry

Řešení problému, hry, ještě před tím, než se člověk naučí všechnu tu matematiku, všechny ty programovací jazyky, gramatiky atp. Co je to za blbost? Není to blbost. Jen uvažme, mnohé problémy musíme řešit, mnohá rozhodnutí musíme v životě udělat bez toho, abychom dopodrobna znali veškerou nutnou znalost. Na druhou stranu, mnohé problémy, jejichž řešení je selským rozumem těžko k nalezení, lze překvapivě elegantně vyřešit, pokud nějakou tu matematiku či teorii známe.

Je to svého druhu slepice-vejce problém. Jak nastudovat těžkou teorii bez toho, abychom znuděním či vyčerpáním ztratili souvislosti? Zkušenost také říká, že cennější odpovědi jsou na ty otázky, které jsme sami položili, než na otázky, které za nás položil někdo jiný. A umění položit správnou otázku je mnohdy tím klíčem k nalezení řešení.

Předmět Řešení problémů a hry si mimo jiné klade za cíl zmenšit mezeru mezi teorií a praktickými problémy. Chceme se poprat s problémy, u kterých naše současné znalosti nestačí pro nalezení optimálního řešení. Měly by v nás vzbudit potřebu klást otázky a systematicky na ně hledat odpovědi.

Začneme s Vězňovým dilematem. Jednoduchá formulace základní úlohy vede na velké množství variant a překvapivě mnoho reálných problémů lze na tuto úlohu převést. Představme si trochu komplikovanější situaci. Na ostrově sídlí farmáři, každý z nich vlastní půdu o určité rozloze. Část půdy je společná. Pokud se farmářova kráva pase na společné půdě, šetří svoji. Pokud takto činí nadkritické množství farmářů, společná půda se vyčerpá a nebude k užitku nikomu. Naopak, pokud budou farmáři využívat společnou půdu rozumným způsobem společný zisk celého ostrova bude větší, mohou si dovolit mít více krav než by dovoloval součet soukromě vlastněné půdy. Jak bude takové společenství fungovat? Každý naprogramuje svého hráče a všichni budou hrát proti sobě a uvidíme, který herní algoritmus získá nejvíce.

Představme si robota v komplikované budově, jeho cílem je dostat se ven. Má senzory, které dovedou detekovat překážku. Jakým způsobem by se měl robot pohybovat, aby se nakonec z budovy-bludiště dostal? Co v případě, že má k dispozici plánek budovy? Jak naplánuje nejkratší cestu? Stejný problém řeší i nám dobře známé navigace.

Spam známe všichni, málokdo ho má rád. Jak oddělíme spam od normálního emailu? Některá slova, či slovní uskupení se ve spamu vyskytují častěji než v normálních emailech. Jak toto intuitivní cítění převést do strohé řeči deterministického (pro daný vstup vždy rozhodne stejně) algoritmu?

Jak zformulovat problém? Jaké jsou vstupy? Jaký je očekávaný výstup? Vede navržený algoritmus vždy k žádanému cíli? Jak řešení vyzkoušet a ohodnotit? Je navržený algoritmus optimální? Lze navrhnout lepší? Má problém vůbec nějaké řešení? ... Mnoho otázek, ale nemusíme se bát. Nechceme na ně najít odpověď hned, rozuměj v tomto předmětu. Naopak, chceme co nejvíce otázek otevřít a pak na ně hledat společně odpovědi během studia. Předmět Řešení problémů a hry má také být jistým vyvážením náročného začátku vysokoškolského studia, ukázat ho z té hravější stránky. Několik přednášek přednesou špičkoví informatici na téma jaké mají problémy a jak je řeší. Ani z toho pochopitelně zkoušet nebudeme ;-)

pondělí 11. května 2009

Otevřená informatika poprvé v TOP 100 -:)

Štafeta Otevřené informatiky úspěšně v cíli.

10. května doběhl tým badatelů reprezentujících program Otevřená informatika do cíle Pražského mezinárodního maratonu http://www.praguemarathon.com/. Tým ve složení Jirka Kléma, Tomáš Werner, Jirka Matas a Michal Pěchouček z katedry kybernetiky FEL ČVUT doběhl v čase 3:44:19 a úplně těsně se probojoval do prestižní top 100 štafet (ze 198 týmů, které závod dokončily). Výtečného času dosáhl Jirka Kléma, který svůj 10 km úsek zaběhl za velmi dobrých 48:09.

Otevřenou informatiku reprezentoval také Ondra Vaněk, výzkumník na katedře kybernetiky a člen ATG, který běžel celý maraton. Doběhl ve skvělém čase 4:07, což zaslouží slova uznání a obdivu.

Michal Pěchouček

edit: Oprava překlepu (MR)