Bezpečnost počítačových sítí a informačních systémů

S rozvojem informačních systémů se na nich mnoho firem stalo zcela závislými obdobně jako na telefonech nebo elektrick


S rozvojem informačních systémů se na nich mnoho firem stalo zcela závislými
obdobně jako na telefonech nebo elektrické energii. Jelikož kolaps informačního
systému může zcela paralyzovat činnost firmy na dlouhou dobu, je vhodné jej co
nejlépe ochraňovat jde totiž zároveň o velmi choulostivý mechanismus.
Pojem bezpečnosti v informačních systémech je velmi široký a má mnoho různých
rovin. Pokusme se zde podívat na bezpečnost z několika různých úhlů. Jde o
souhrn jakýchsi myšlenek a nápadů, které by vás měly upozornit na možná slabá
místa vašeho systému. Následující text se snaží podrobněji rozebrat zejména
aspekty bezpečnosti počítačových sítí v kontextu bezpečnosti informačních
systémů obecně.
Ačkoliv je text koncipován zpravidla obecně, snažil jsem se brát v úvahu dva
nejrozšířenější síťové operační systémy Microsoft Windows NT a Novell NetWare.
V žádném případě však tento článek není možné chápat jako vyčerpávající popis
tohoto tématu.
Zvážení bezpečnosti
Dokonalé zvážení bezpečnosti v konkrétních podmínkách je poměrně obtížný úkol.
Informační systémy mohou být velmi rozmanité a těžko lze poskytnout nějaký
"univerzální návod", který by byl dostatečně konkrétní. Pokud jej chcete
zvládnout opravdu dobře, je nanejvýš vhodné si pro tento úkol najmout
specializovaného konzultanta. Ačkoliv si patrně naúčtuje nemalou částku, jeho
činnost se brzy vyplatí. Taktéž existují specializované firmy, které provádějí
bezpečnostní audit informačních systémů.
Občas je možné se setkat s otázkou, proč je vlastně nutné dělat takový problém
z bezpečnosti vždyť stačí, aby administrátor rozdal uživatelům přístupová hesla
a případně jim ještě
definoval přístupová práva. Odpověď na takovouto námitku je velmi jednoduchá k
získání
veškerých dat takové organizace stačí jen dostatečně zaplatit administrátorovi
(tzv. úplatek). Nehledě na to, že taková organizace se obvykle dává zcela všanc
svému administrátorovi, který může prohlásit "zaplaťte, nebo už svá data
neuvidíte". Z této velmi jednoduché ilustrace je zřejmé, že problematika
bezpečnosti je daleko komplexnější a je potřeba velmi pečlivě vážit důsledky
různých opatření.
Je důležité si uvědomit, že absolutní bezpečnost je záležitostí čistě
teoretickou. Pokud byste se pokusili realizovat takové ochrany, které by se
tomuto teoretickému stavu maximálně blížily, zjistíte, že na takovém systému
není možné pracovat. Proto je obvykle nutné volit kompromis mezi přijatelným
rizikem, uživatelským pohodlím a náklady na provoz. Je např. zřejmé, že
odpojením od Internetu nebo odstraněním disketových mechanik z pracovních
stanic se bezpečnost systému zvýší, ale podobné kroky přinášejí také větší či
menší nepříjemnosti.
Často opakovanou (a přesto obvykle podceňovanou) skutečností je zabezpečení
informací proti útokům zvenku, ale i zevnitř. Je totiž důležité si uvědomit, že
nemalá část útoků (udává se 50 % až 80 %) je vedena zevnitř organizace.
Zabezpečení dat proti útokům zevnitř bývá obvykle také daleko složitější a
obtížněji realizovatelné.
Bezpečnostní opatření
Bezpečnostní opatření, která ve své organizaci zavedete, uživatelům vysvětlete.
Jednou z typických vlastností českých zaměstnanců je určitý "švejkovsko-
kreativní" přístup ke všem úředním rozhodnutím zejména těm, kterým nerozumějí.
Pokud jim svá rozhodnutí náležitě vysvětlíte, budou je daleko spíše respektovat
a dodržovat.
Jedním z obecných doporučení je dělba pravomocí. Snažte se, aby se několik
důležitých pravomocí nesešlo u jednoho pracovníka. Tento pracovník by pak
dostal do rukou nástroje k ohrožení bezpečnosti vašeho systému a případně i k
"zametení stop" v případě zcizení nebo modifikace citlivých dat. To tedy
znamená, že by ani administrátoři neměli dostávat účty "superuživatelů", kteří
mohou úplně všechno. Také je dobré využívat všech možností kontroly zejména
auditingu. Tuto kontrolu by opět měla provádět nezávislá osoba.
Prosazení nějakých ochranných mechanismů v podniku může být poměrně obtížné.
Někdy je managementu poměrně těžké vysvětlit, že u investic do bezpečnosti
informačního systému nelze (podobně jako např. u pojištění) spočítat
návratnost. Můžete dlouhá léta platit za zabezpečení systému nemalé peníze
zdánlivě zbytečně. Potom se mohou tyto náklady mnohonásobně vrátit během
několika minut. Nezbývá než opakovat, že hodnotu svého informačního systému
poznáte, až dojde k jeho kolapsu.
Bezpečnost je možné dekomponovat na několik "služeb", které je možné řešit
nezávisle na sobě. Dále v tomto článku budeme postupovat podle těchto služeb a
u každé budeme uvádět její opodstatnění a možnosti její implementace.
Co je psáno, to je dáno
Teorie uvádí, že kroky k zabezpečování informačního systému by měly být
zahrnuty v dokumentu zvaném "bezpečnostní strategie a politika". Tento dokument
by měl obsahovat především popis informačního systému, definici citlivých
informací, definici možných hrozeb, kterým hodláte čelit a definici služeb
bezpečnosti, které bude systém poskytovat. Též je vhodné do tohoto dokumentu
začlenit nějakou metodiku pro řešení krizových stavů.
Ačkoliv nejsem osobně přítelem příliš rozsáhlého "papírování", je dobré si tyto
věci přece jen sepsat. U větších informačních systémů, kde správu provádí více
osob, hrozí, že ochrana systému bude nekoordinovaná a některé části tudíž
zůstanou nedostatečně ochráněny.
Chráněné objekty
Je třeba vymezit, jaké objekty informačního systému je třeba chránit. V tomto
článku se omezme pouze na:
Technické prostředky: Tedy vlastní počítače a jejich součásti. Ty je třeba
ochraňovat zejména proti fyzickému zcizení a před technickými závadami.
Komunikační cesty: Ty jsou obvykle jedním z nejslabších míst celého systému. Je
třeba si uvědomit, že jakýkoliv přenos dat po veřejné síti tedy Internetu, ale
i obyčejné telefonní síti, může být snadno monitorován. Monitorován může být (s
určitými problémy) i provoz v privátní síti, která je vedena vlastním
komunikačním médiem (ať už kabelem nebo bezdrátově).
Programové vybavení: Tedy obecněji funkční části systému. Ty je třeba
ochraňovat zejména před modifikací, která by umožňovala změnu jejich
funkcionality.
Datovou základnu: Na její ochranu je třeba věnovat asi největší úsilí, neboť
její získání (nebo poškození) by mělo na informační systém zřejmě největší
dopad.
Hrozby
Hrozby lze rozdělit do 3 kategorií: na fyzické hrozby, ohrožení lidmi a
ohrožení programové.
Fyzické hrozby jsou poměrně zřejmé. Jde zejména o různé typy "přírodních
katastrof" zejména pak o požár, zemětřesení a povodně, ale také poruchy
související s dodávkou energie nebo technické závady. Tyto hrozby jsou obecně
poměrně dobře známé a jejich "výhodou" je, že mohou ohrozit "pouze" integritu a
dostupnost nikoliv však důvěrnost.
Ohrožení lidmi je nutné brát již velmi vážně. V zásadě lze odlišit 2 kategorie
takových ohrožení ohrožení "zevnitř" (vlastními zaměstnanci) nebo "zvenku".
Princip ochrany je však u obou skupin stejný. Pokud jde o ohrožení "zevnitř",
jsou obzvláště rizikovou skupinou externí (dočasní) zaměstnanci a bývalí
zaměstnanci (které už by bylo možné započítávat do skupiny druhé). Ve skupině
ohrožení "zvenčí" připadají v úvahu zejména "hackeři" (lidé, zabývající se
obecně průniky do informačních systémů) a zloději (kteří často ani netuší, co
vlastně ukradli).
Programové ohrožení je přibližně stejně nebezpečné jako ohrožení lidmi.
Typickou ukázkou nebezpečných programů jsou počítačové viry, trojské koně nebo
monitorovací programy, které sledují činnost informačního systému. Nebezpečné
mohou být také určité funkce (často i běžně nedostupné), které jsou součástí
programového vybavení informačních systémů z doby jeho vývoje. Jsou to např.
veškerá "univerzální hesla", "zadní vrátka" (např. možnost rychlého spuštění
programu bez zadání jména a hesla), skryté komunikační kanály apod. Dokonalé
otestování všech provozovaných aplikací je však téměř nemožné a obvykle se
musíte spokojit pouze s tvrzením výrobce. Velmi nebezpečné mohou být různé
nízkoúrovňové programy např. různé ovladače, které jsou obvykle schopny totálně
převzít kontrolu nad operačním systémem počítače.
Ochranné mechanismy
Ochranné mechanismy je obvykle nutno kombinovat. Pokud nasadíte jen některé
ochrany, až na výjimky nedojde k zabezpečení systému jako celku dojde jen k
zalepení některých děr.
Základem všeho jsou fyzické ochranné mechanismy. Jde o fyzické zabezpečení
technických prvků a datových nosičů (případně komunikačních médií), které
znemožní porušení důvěrnosti, integrity a dostupnosti. Jde tedy o bezpečné
uložení serverů, aby nemohly být zcizeny jako celek, aby nemohly být poškozeny
přírodními katastrofami apod. Jedná se také o obdobné zabezpečení záložních
kopií a zajištění stabilní dodávky energie.
Mezi další mechanismy patří technické zabezpečení. Je třeba vybírat takové
technické prostředky, které jsou odolné vůči svým technickým chybám. Například
o disková pole RAID, která umožňují zachovat veškerá data i v případě totálního
výpadku jednoho disku. Také je vhodné, aby důležité (a často poruchové)
komponenty technických prostředků důležitých uzlů (zejména serverů) byly
zdvojené. Kvalitnější systémy umožňují "za běhu" vyměňovat pevné disky a
dokonce i zdroje. Kromě použití záložních zdrojů energie (UPS) je možné
důležité komponenty napájet z různých zdrojů elektrické energie.
Pro zajištění dostupnosti síťových služeb (pošty, databázového serveru apod.)
je možné použít clustering skupinu počítačů, která se navenek chová jako jediný
systém. Software pro řízení clusteru zajistí, aby každá z definovaných služeb
byla na některém z uzlů clusteru kdykoliv k dispozici. Tj. pokud dojde k poruše
jednoho počítače (případně pádu aplikace), je aplikace automaticky nastartována
na jiném uzlu. Je však třeba zajistit, aby takto dostupné informace byly
ukládány na externí diskové pole, kam je v případě potřeby možné přistupovat z
jiného počítače.
Programová opatření jsou těžištěm mechanismů, které slouží k zabezpečení
informačního systému. Jde zejména o mechanismy autentizace a monitoringu
(auditingu).
Problémy s důvěrností a integritou typicky řeší řízený přístup k prostředkům
informačního systému datovým souborům, tiskárnám a dalším speciálním zdrojům
elektronické poště, databázím apod. Před použitím nějakého prostředku, který
obsahuje citlivá data, je tedy vyžadována autentizace.
Autentizace uživatelů je jedním z nejobvyklejších mechanismů, které se
používají v informačních systémech. Typicky probíhá zadáním přiděleného
uživatelského jména a hesla. V systémech, kde je kladen důraz na vyšší
bezpečnost, je možné zavést také jiné typy přihlašování např. "přihlašování
předmětem". K přihlašování uživatelů je možné použít karty s čárovým kódem,
čipové karty, bezdotykové karty, čipy "touch memory" a podobné systémy. K
přihlášení do systému je potom potřeba fyzické vlastnění příslušného
přihlašovacího předmětu. Obvykle se však
používá smíšené přihlašování, kdy je použit
nějaký předmět a ještě zadáno uživatelské heslo. Bohužel, tyto metody nejsou
standardní součástí základního programového vybavení (např. síťových operačních
systémů).
Hesla
Pro hesla uživatelů (a zejména administrátorů) se udává hodně pravidel, jak by
měla resp. neměla vypadat. Obecně lze říci, že heslo by mělo být nejméně 5
znaků dlouhé a mělo by kombinovat více typů znaků malá a velké písmena, číslice
a speciální znaky (lomítka, tečky, hvězdičky apod.). Výhodné též je, když heslo
"nic neznamená" (tj. nejde o žádné smysluplné slovo).
Pokud to komponenty vašeho systému umožňují, je vhodné jej nastavit tak, aby se
po určitém přiměřeném počtu pokusů o přihlášení s nesprávným heslem příslušný
přístupový účet automaticky zablokoval. Zabrání se tak často používané technice
útoku zkoušením všech možných slov. Též je vhodné nutit prostředky systému
uživatele k tomu, aby dodržovali stanovené podmínky pro tvorbu hesel a aby svá
hesla (po rozumné době) obměňovali.
Teorie také upozorňuje, že příslušné heslo by mělo být používáno jen na jednom
místě. Přestože běžní uživatelé typicky mívají problémy s používáním většího
množství hesel, je vhodné jim zakázat používání svých hesel mimo organizaci.
Není nic jednoduššího, než umožnit vašim pracovníkům přístup do nějakého
systému (např. internetového serveru) na základě toho, že si na něm vytvoří
svůj přístupový účet s heslem. Jelikož zde nepoučení uživatelé s největší
pravděpodobností použijí stejné heslo jako na podnikové síti, lze pak snadno
takto získaná hesla použít k útoku na vaši síť. Mimochodem tak se mi jednou
mimoděk podařilo zjistit heslo jednoho známého.
Je třeba dbát na to, aby nebylo možné do systému zanést program, který by mohl
předstírat přihlašování uživatele a tak z uživatelů "vylákat" heslo. Což může
být poměrně obtížně realizovatelný požadavek.
Další ochrany
Počítačové sítě obvykle obsahují ještě další nástroje na ochranu síťových
zdrojů. Je to např. časový interval, kdy se uživatel smí přihlásit do sítě,
nebo seznam povolených stanic, odkud je možné se k určitým zdrojům sítě dostat
(např. odkud se uživatel smí přihlásit). Tyto mechanismy samy o sobě nic
neochrání, ale mohou doplnit další typy ochrany.
Auditing je poměrně užitečný nástroj v případě, že potřebujete zajistit přístup
uživatelů (ať už v podobě čtení nebo aktualizace) k citlivým datům. Auditing
spočívá v možnosti zaznamenávání údajů o přístupu jednotlivých uživatelů k
citlivým datům a pozdějšímu prohlížení těchto záznamů. Jinak řečeno, uživatelům
není přístup k datům zamezen (neboť to třeba z nějakého důvodu není možné), ale
je pečlivě monitorován. Záznamy, které pocházejí z takového monitorování, mohou
být dále zkoumány nezávislým pracovníkem.
Šifrování je jedním ze základních způsobů ochrany důvěrných dat. Je možné ho
použít pro ukládání dat uvnitř vlastního informačního systému, ale je nutné ho
použít pro jakýkoliv přenos dat po médiích, která nemáme zcela pod kontrolou
tj. například po telefonní síti nebo Internetu. Je vhodné šifrovat i přenos dat
po lokální síti, pokud hrozí nebezpečí jejího odposlouchávání. Pro přenos dat
mezi několika málo body je možné použít šifrování symetrické, ale pro větší
počet uzlů už připadá do úvahy spíše šifrování asymetrické. Při použití
symetrického šifrování je pro zašifrování i odšifrování použit stejný klíč. U
asymetrických zpráv je šifrování prováděno tzv. "veřejným klíčem", který lze
volně šířit. Pro dešifrování je ale třeba použít výhradně svůj tajný (privátní)
klíč. Na generování a přidělování klíčů je vhodné také vypracovat samostatnou
metodiku.
Zálohování je základním kamenem ochrany dat před ohrožením jejich integrity a
dostupnosti. K dispozici je nyní již mnoho typů zařízení, na která je možné
zálohovat. Ve vaši strategii zálohování je vhodné zvolit několik "cyklů" např.
denní, týdenní a měsíční. Kopie v každém cyklu nemažte hned, ale až po určité
době. Často je třeba nahlížet do starších dat např. pokud potřebujete dohledat,
kdy došlo k nějaké chybě. Obvykle se též doporučuje, aby jedna kopie dat
(rozumně stará) byla zcela mimo firmu např. v bankovním sejfu. V případě požáru
nebo přírodní katastrofy je menší pravděpodobnost ztráty dat. Též je třeba si
uvědomit, že záložní kopie vašich dat jsou stejně důvěrné jako data původní a
proto by v tomto směru měly být také stejně chráněny.
Závěr
Všechna v textu zmíněná opatření je také vhodné doplnit organizačními
opatřeními, která definují pravidla pro přístup uživatelů k informačnímu
systému. Tato pravidla by měla definovat např. pravidla pro práci s disketami,
pravidla pro používání počítačů (např. zákaz odcházení od počítačů bez
odhlášení), postup při hlášení podezřelých událostí anebo postup při ničení
nepotřebných nosičů (disket, záložních pásek apod.).
Jak je z tohoto stručného přehledu vidět, bezpečnost není žádná magie. Vyžaduje
však velkou dávku trpělivosti, fantazie a prozíravosti a také špetku
trpělivosti. Nutno podotknout, že důvod, proč se setkáváme v praxi s velkým
množstvím bezpečnostních incidentů není ten, že by sítě byly plné hackerů a za
každým počítačem číhal záškodník. Je to spíše proto, že většina organizací
bezpečnost více či méně ignoruje. Doufám, že tento článek přispěje k tomu, aby
počet bezpečnostních incidentů klesl.
9 0540 / pen

Roviny bezpečnosti
Důvěrnost: Je třeba zajistit, aby informace, uložené v informačním systému,
byly dostupné jen pro autorizované uživatele a aby nebylo možné jejich zcizení.
Integrita: Zajištění, aby nedocházelo k neautorizovaným úpravám informace
případně ztrátě informací a jejich částí ať už jde o úmyslnou či neúmyslnou
činnost uživatele, počítačového programu anebo technického prostředku.
Dostupnost: Zabezpečení, aby byly příslušné funkce a data systému vždy pro
uživatele dostupné. Jde tedy o to, aby informační systém nevyřadila z provozu
technická závada, fyzické odcizení nějakého prostředku nebo cílený útok na
nějakou službu.
Někdy se udávají ještě další požadavky na bezpečnost, ale ty lze obvykle
zahrnout do jedné z předchozích rovin.

Viry
Jednou z dalších hrozeb jsou i počítačové viry. Jejich nebezpečnost bývá někdy
trochu přeceňována a mýtyzována na síti, která je dobře zabezpečena před všemi
ostatními hrozbami, by viry příliš velké problémy způsobit neměly (pokud vůbec
nějaké).
Klasické boot-viry se mohou šířit výhradně pomocí disket, programové viry pak i
pomocí programových souborů. K programovým souborům by však většina uživatelů
měla mít přístup jen pro čtení a spouštění. Největší nebezpečí v současnosti
představují pravděpodobně makroviry, které se šíří v dokumentech (typicky v
dokumentech Wordu nebo Excelu). A problém je, že tyto dokumenty obvykle nemohou
být na počítačové síti ochráněny proti zápisu. Nehledě na to, že makroviry
často přicházejí do počítače elektronickou poštou.
Antiviry používají k detekci několik technik. První důležitou je vyhledávání
virových sekvencí. Tato metoda je určena k vyhledávání a identifikaci známých
virů. Antivirový program při takové kontrole prochází jednotlivé soubory a
hledá v nich "kousky" virů. Od časů polymorfních virů je sice už vyhledávání
obtížnější, ale princip zůstává.
Druhou důležitou technikou je periodická kontrola, zda se "podezřelým způsobem"
nemění obsah programových souborů a systémových oblastí disku. Antivirový
program si při prvním spuštění tyto informace zapíše do databáze a později
porovnává obsah této databáze se skutečným stavem. Takto lze odhalit známé viry
stejně jako viry neznámé.
Novější technikou je tzv. "heuristická analýza", kdy se antivirový program
pokouší procházet programovými soubory a hledá různé podezřelé činnosti.
Ačkoliv heuristická analýza odhaluje známé i neznámé viry, není její účinnost
příliš dobrá je vždy nutné ji kombinovat s dalšími technikami. Tyto kontroly je
také možné provádět rezidentně.
Také je možné rezidentně monitorovat, zda se "něco" nepokouší provádět
nekorektní činnosti (modifikaci programových souborů, formátovat disk apod.).
Naopak nemá příliš smyslu zkoumat, jak umí daný produkt virus odstraňovat.
Odstraňování virů je poměrně obtížná záležitost a obvykle se nepovede soubor
rekonstruovat do původní podoby (při použití informací pro kontrolu integrity
je šance větší). Výjimkou v tomto směru jsou makroviry ty odstranit nemusí být
takový problém ale hrozí riziko odstranění vlastních "užitečných" maker.









Komentáře
K tomuto článku není připojena žádná diskuze, nebo byla zakázána.