BEZPEČNÁ POČÍTAČOVÁ SÍŤ
METODIKA CORAS
Jedná se o metodiku, která byla vyvinuta v rámci projektu EU. Za touto zkratkou se skrývá „Risk Assessment of Security Critical Systems“. CORAS je metodikou, která integruje analýzu rizik a modelovací metody, které respektují funkcionalitu systémů. Z tohoto pohledu se jeví jako obzvláště vhodná pro atestaci a vývoj informačních systémů. Jedná se o poslední metodiku, která byla vyvinuta v roce 2003. CORAS je zaměřen na modelování pomocí jazyka UML a nástroje striktně využívají standardu XML. Z parametrů IT systémů se zaměřuje na integritu, dostupnost, účtovatelnost, autenticitu a spolehlivost IT systémů. Hlavním výstupem metody CORAS je konstrukce modelu řízení rizika, který je založen na následujících čtyřech pilířích:
únor 2005
BEZPEČNÁ POČÍTAČOVÁ SÍŤ
1. Řízení rizika procesů na základě standardu AS/NZS 4360 [Australian/New Zealand Standard AS/NZS 4360:1999: Risk Management.]. 2. Dokumentace rizika na základě standardu ISO RMODP [ISO/IEC 10746 series: 1995 Basic reference model for open distributed processing.]. 3. Integrace řízení rizik a vývoje založené na metodice UP [Jacobson, I., Rumbaugh, J., Booch, G. The unified software development process. AddisonWesley, 1999.]. 4. Platformou pro jednotlivé nástroje je XML [World Wide Web Consortium, Extensible Markup Language (XML) v1.0, W3C Recommendation, Second Edition, 6 Oct. 2000.]. Konsorcium CORAS sdružuje následující komerční firmy: Intracom (Řecko), Solinet (Německo) a Telenor (Norsko); sedm výzkumných institucí: CLRC/RAL (UK), CTI (Řecko), FORTH (Řecko), IFE (Norsko), NCT (Norsko), NR (Norsko) a SINTEF (Norsko); College: Queen Mary University of London (UK). Metodologie metody CORAS
únor 2005
Metodicky používá CORAS posloupnost určitých kroků, kterou můžeme schematicky zobrazit na následujícím obrázku. V podstatě se jedná o pět do jisté míry samostatných, ale na sebe navazujících kroků nebo podprogramů.
BEZPEČNÁ POČÍTAČOVÁ SÍŤ
Schematické znázornûní metody CORAS
O
Nejlepším způsobem, jak si přiblížit metodiku CORAS, je projít určitý příklad a provést nějakou případovou studii. V literatuře jsou uvedeny obvykle dvě takovéto studie. Jednou je elektronické zdravotnictví a druhou je eCommerce model. Pro nás bude nejspíše vhodnější druhý model, který popisuje komunikaci s obchodním serverem. Takovýto cílový model byt vytvořen v rámci projektu EP-27046-ACTIVE jako součást programu ESPRIT. únor 2005
BEZPEČNÁ POČÍTAČOVÁ SÍŤ
Architekturu řešení znázorňuje následující obrázek. Jedná se o komunikaci klienta se serverem prostřednictvím PROXY serveru. Serverové řešení je dáno jednak přístupovým WWW serverem, za kterým je obvykle aplikační server, který komunikuje s databázovým serverem. WWW server je klientovi přístupný prostřednictvím zabezpečeného protokolu HTTPS neboli lépe řečeno jedná se o protokol HTTP nad protokolem SSL. WWW serverem bývá obvykle server APACHE, klientem je jakýkoliv WWW prohlížeč. Aplikační server komunikuje s databázovým prostřednictvím JDBC konektoru, napsaného v jazyce Java, obvykle jako servlet. Databázový server může být jakýkoliv. O
únor 2005
Schéma komunikace klienta se serverem, model B2C
BEZPEČNÁ POČÍTAČOVÁ SÍŤ
Bezpečnost transakcí může být zajišťována různými mechanismy. Může se jednat o obecně tři úrovně: • autentizace účtem a heslem, • autentizace certifikátem, • autentizace s využitím speciálního agenta. V našem případě se budeme zabývat obecně první variantou. V tomto kroku se pokusíme popsat pomocí UML diagramu, co se obecně při přihlášení uživatele může dít. Popis kontextu je na následujícím obrázku, který je ponechán v angličtině především kvůli originálním funkcím. Schéma pfiihlá‰ení uÏivatele
Krok 1 identifikace kontextu
O
únor 2005
BEZPEČNÁ POČÍTAČOVÁ SÍŤ
Krok 2 identifikace rizik
Identifikace rizik a jejich oceňování jsou v metodice CORAS založeny na různých metodologiích. Analýza rizik je zde založena na kombinaci systematických procesů pro identifikaci rizik a determinace určitých posloupností toho, co s rizikem udělat. Existuje mnoho metodik, které jsou založeny na různých typech rizik a různých oblastech použití. CORAS využívá následující metodiky: • HAZard and OPerability study (HAZOP); • Fault Tree Analysis (FTA); • Failure Mode and Effect Criticality Analysis (FMECA); • Markovovské analytické metody (Markov); • CCTA Risk Analysis and Management Methodology (CRAMM). Tyto metody jsou velmi komplementární a vhodně se doplňují. Obecně leží ve všech fázích metodiky, ve fázi vývoje systému a řízení procesů. Vztah mezi jednotlivými metodikami, které ještě nebyly popsány dříve v této publikaci, zachycuje obecně následující tabulka.
T Z/Do HazOp HazOp Identifikuje incidenty jako rÛzné úrovnû abstrakce modelu.
FTA
Základní událost (uzel-list chybového stromu reprezentuje incident) mÛÏe
FTA Incidenty, které identifikuje HazOp, jsou vloÏeny do chybov˘ch stromÛ zaloÏen˘ch na abstrakci dané úrovnû a v relaci mezi incidenty. Chybov˘ strom mÛÏe b˘t ãástí jiného chybového stromu a kofienov˘ incident
FMECA Incidenty identifikované v HazOp mohou b˘t chápány jako chyby modelu a mohou b˘t vzaty jako v˘chozí body pro FMECA. Základní událost (uzel-list chybového stromu reprezentuje incident) mÛÏe b˘t pokraãování
únor 2005
BEZPEČNÁ POČÍTAČOVÁ SÍŤ
Z/Do HazOp korespondovat se subsystémem nebo sluÏbou, na kterou je moÏno aplikovat HazOp. FMECA Základní incident (chybov˘ stav) sám mÛÏe b˘t asociován se subsystémem nebo sluÏbou pro aplikaci HazOp.
FTA jednoho chybového stromu mÛÏe b˘t následkem incidentu jiného chybového stromu. Anal˘za základních incidentÛ mÛÏe identifikovat scénáfie pokrytí neoãekávan˘ch incidentÛ. To mÛÏe b˘t popsáno jako cesta v chybovém stromu.
FMECA chápána jako chybov˘ stav a mÛÏe b˘t vzata jako v˘chozí bod pro FMECA. Základní incident (nebo chybov˘ stav) mÛÏe vést k jin˘m základním incidentÛm v jin˘ch modelech FMECA. dokonãení
Výsledkem identifikace rizik je následující tabulka, jejíchž obsah si popíšeme později. T âíslo Entita
Popis
Bezpeãnostní atributy
1 Create(sn) UÏivatel 1.1 odpovídá Odhalení 1.1.1 na logovací obrazovku a server 1.1.2 vytvofií nové sezení s ãíslem SN
Odchylka Pfiíãina
DÛsledek Akce
Poznámka
Odpovûì Otevfien˘ Není N/A klienta je Internet vyuÏitelné zachycena Odpovûì Otevfien˘ SN je serveru Internet moÏno je zachyzískat cena
Neobsahuje Ïádné tajné informace NepouÏití UmoÏÀuje kryptogra- napadení fie je sezení neomluvitelné pokraãování
únor 2005
BEZPEČNÁ POČÍTAČOVÁ SÍŤ
âíslo Entita
1.2 1.2.1
Popis
Bezpeãnostní atributy
Poznámka
Browser ·patná nebo konfiguPROXY race odpovídá z Cache
UÏivatel dostane ‰patné SN UÏivatel dostává SN jiného uÏivatele
Vrátí se logovací obrazovka Dojde k napadení sezení jiného uÏivatele
N/A
PouÏití velk˘ch ãísel pro SN
Nedostupnost
1.3.1
1.3.2
1.4
DÛsledek Akce
Manipulace
1.2.2
1.3
Odchylka Pfiíãina
UÏivatel je ·patná Server N/A blokován konfigu- není PROXY race pfiístupn˘ Server odpovídá pomalu
Server není pfiístupn˘ Generická chyba serveru
Jsou generována umûle velká ãísla SN
Citlivé pro autentizaci klienta pfies SN
Pfiístup bez úãtu Úmysln˘ útok na server je generován
(1) Generuje se mnoho SN (2) Degraduje se v˘kon serveru
Zablokovat útoãníka prostfiednictvím IP
dokonãení
Jako příklad je v tabulce uvedena HazOP analýza na požadavek uživatele na zřízení sezení na serveru. Jedná se o odpověď na logovací obrazovku, která je popsána funkcí create(sn). Tato entita koresponduje s možnými událostmi, které popisuje tabulka. Obsah jednotlivých sloupců je celkem intuitivně jasný. únor 2005
BEZPEČNÁ POČÍTAČOVÁ SÍŤ
Bezpečnostní aspekty odpovídají integritě, důvěrnosti a dostupnosti tak, jak je popisuje ISO 17799. Sloupec odchylky reprezentuje anomálie normálního stavu, a to jak škodlivé, tak havarijní. Sloupec akce popisuje možné odpovědi na události a poznámka je komentářem k události. FMEA identifikuje možné chybové stavy individuálních komponent. Z hlediska softwaru jsou tyto chybové stavy nebo chyby obvykle ošetřeny funkcemi, které vyvolají softwarové komponenty. Tento postup ovšem vyžaduje poměrně velké časové nároky v etapě vývoje SW, a tak CORAS doporučuje použít tuto metodiku pouze na kritické části systému. Na příklad pro demonstraci FTA identifikujme bezpečnostní díry, které umožní v tomto systému získat osobní údaje uživatele. Každá událost v tomto stromu má vlastnosti dědičnosti, to znamená, že zde existuje kauzální podmíněnost událostí. V tomto případě celou situaci opět názorně demonstruje následující obrázek Strom chybov˘ch stavÛ
Krok 3 - analýza rizik
O
únor 2005
BEZPEČNÁ POČÍTAČOVÁ SÍŤ
Krok 4 - analýza hrozeb
V této části se v podstatě spojí jednotlivá rizika a hrozby. V našem případě vznikne následující diagram.
O
Popisuje moÏnosti realizace hrozeb zl˘m uÏivatelem
Výsledkem této analýzy je v podstatě to, že existují dva způsoby, jak v systému s úmyslem škodit, a to prostřednictvím útoku realizovaného skriptem nebo prostřednictvím odposlechu sezení. Proti každé variantě je pak nutno se odpovídajícím způsobem bránit. Krok 5 - ošetření rizika
únor 2005
Pro práci s riziky je především potřebná jejich klasifikace. Pro tuto klasifikaci metodika CORAS používá následující hodnocení.
BEZPEČNÁ POČÍTAČOVÁ SÍŤ
T Pravdûpodobnost V˘jimeãn˘ Nepravdûpodobn˘ MoÏn˘
Pravdûpodobn˘
Skoro jist˘
Následky Bezv˘znamn˘
Malé
Malé
Malé
Pfiimûfiené
Vysoké
Mal˘
Malé
Malé
Pfiimûfiené
Vysoké
Vysoké
¤iditeln˘
Pfiimûfiené Pfiimûfiené
Vysoké
Vysoké
Extrémní
Velk˘
Vysoké
Vysoké
Extrémní
Extrémní
Extrémní
Katastrofick˘
Vysoké
Extrémní
Extrémní
Extrémní
Extrémní
V našem modelovém případě je možné ošetřit rizika následujícími způsoby: • prostřednictvím řízení sezení, • správou chybových přihlášení, • omezeními na hesla, • použitím vstupu v HTML prostřednictvím formulářů, • použitím bezpečného HTTP prostřednictvím SSL spojení. Tím naše malá ukázka použití metodiky CORAS končí. Je třeba říci, že se jedná o nejnovější metodiku, která byla dokončena v roce 2003. Na závěr je možné srovnat některé metodiky. Surety Analysis (SA) je metodika založená na explicitních modelech některých aspektů systémů, je implementována např. v nástroji OPRA. Byla vyvinuta v Sandia Labs speciálně pro tento projekt. CORAS používá výhradně výměnné standardy.
Závěr
RSDS - jedná se o metodologii založenou na bezpečnosti a zbytkové analýze rizik, CORAS je zaměřena na analýzu bezpečnostních rizik. COBIT je zaměřen na obchodní strategie a cíle, je procesně orientován na re-engineering procesů. CORAS únor 2005
BEZPEČNÁ POČÍTAČOVÁ SÍŤ
je k němu jakoby ortogonální, vychází zespod z funkcionalit systému, ne z cílů organizace. CCTA Risk Analysis and Management Methodology (CRAMM) je komplexní metodika, kterou CORAS integruje s jinými postupy, především se standardy modelování a dokumentace a vývojem systémů. CRAMM má interface s SSADM (Structured Systems Analysis and Design Method), to koresponduje s tím, jak CORAS využívá systém vývoje procesů založený na AS/NZS 4360 a UP.
únor 2005