NIEZAWODNOŚĆ, BEZPIECZEŃSTWO I SKALOWALNOŚĆ
Transkrypt
NIEZAWODNOŚĆ, BEZPIECZEŃSTWO I SKALOWALNOŚĆ
3. Bezpieczeństwo Bezpieczeństwo systemów komputerowych ma dwie sfery. Pierwsza z nich to sfera działania oparta na uznanych, poprzez wieloletnich, zasadach postępowania [ang. best practices], które doprowadziły (w większości przypadków) do osiągnięcia sukcesu (założonych celów). Opisane w ten sposób zasady działania mają w większości przypadków podłoże heurystyczne, które z biegiem lat ulega erozji poprzez znajdywanie naukowego uzasadnienia takich a nie innych zasad postępowania. Druga sfera to próba sformalizowana metod projektowania i oceniania bezpieczeństwa. W tym celu wypracowuje się normy i procedury, których realizacja podlega ocenie, prowadzącej do osiągnięcia pewnego poziomu ich realizacji, udokumentowanego i potwierdzonego otrzymaniem stosownego certyfikatu przez ustanowione w tym celu instytucje. Praktyka pokazuje, że tylko połączenie tych dwóch sfer daje zadowalające wyniki. Bezpieczeństwo systemów rozproszonych, tak jak i innych systemów, podlega powyższym regułom. 3.1. Definicja Modyfikując definicję bezpieczeństwa teleinformatycznego [ang. IT Security - Information Technology Security lub ICT Security - Information Communication Technology Security] przedstawioną w [3] bezpieczeństwo można zdefiniować w sposób nastający: Bezpieczeństwo systemów rozproszonych jest rozumiane jako zespół procesów zmierzających do zdefiniowania, osiągnięcia i otrzymania założonego poziomu ufności, integralności, dostępności, rozliczalności, autentyczności i niezawodności. Wyżej wymieniona definicji wymienia atrybuty bezpieczeństwa występujące w systemach teleinformatycznych. 3.2. Atrybuty bezpieczeństwa Atrybuty bezpieczeństwa określają właściwości bezpieczeństwa. Poniżej przedstawiono ich wykaz wraz z krótkim ich opisem, wykorzystując PN-13335-1 [3]. poufność [ang. confidentiality] – informacja nie zastanie udostępniona lub ujawniona nieautoryzowanym osobom, przedmiotom lub procesom autentyczność [ang. authenticity] – tożsamość podmiotu lub zasobu jest zgodna z deklaracją dostępność [ang. availability] – bycie dostępnym i możliwym do wykorzystania w założonym momencie przez kogoś lub coś (kto ma do tego prawo) integralność danych [ang. data integrity] – dane nie zostały zmienione lub zniszczone w sposób nieautoryzowany integralność systemu [ang. system integrity] – system realizuje swoje zadania w nienaruszony sposób integralność [ang. integrity] – integralność danych oraz integralność systemu rozliczalność [ang. accountability] – działania podmiotu mogą zostać pisane jednoznacznie danemu podmiotowi niezawodność [ang. reliability] – spójne zachowanie i skutki Oczywiście, w innych (zagranicznych) normach atrybuty bywają opisane w trochę różniący się od tego, co jest powyżej napisane. Chodzi w tym wypadku jednak o samą ideę, a nie szczegóły. 1 3.3. Polityka bezpieczeństwa Złożoność zagadnień związanych z bezpieczeństwem wymaga skoordynowanych działań na podstawie wytyczonych celów. Można to określić jako prowadzenie pewnej polityki, zwanej polityką bezpieczeństwa. Opracowanie polityki bezpieczeństwa sprowadza się do utrzymania kompromisu pomiędzy realnymi zagrożeniami, a proponowanymi zabezpieczeniami, uwzględniając czynnik ekonomiczny. Polityka bezpieczeństwa ulega ewolucji. Klasycznym przykładem jest podejście do pojęcia tzw. wrażliwości informacji. Wrażliwość informacji określa stopień ważności przypisany przez jej dysponenta w celu wskazania konieczności jej ochrony [3]. W większości przypadków informacje dzieliło się na wrażliwe i nie wrażliwe. Jeszcze kilka lat temu podejście do ochrony informacji wyglądało w ten sposób, że zajmowano się ochroną wyłącznie informacji wrażliwej. Jednak teraz, w związku ze zrozumieniem wagi decyzji zakwalifikowania danej informacji jako wrażliwej lub nie wrażliwej, zmieniono podejście do tego zagadnienia. Z tego też powodu obecnie przyjmuje się, że nie ma informacji nie wrażliwej – każda powinna podlegać ochronie (oczywiście ze zróżnicowanym stopniem jej ochrony). Tak więc stare podejście, w którym koncentrowaliśmy się wyłącznie na tzw. systemach krytycznych, skończyło się. Obecnie bierzemy pod uwagę wszystkie systemy i poddajemy je wszechstronnej analizie w celu znalezienia ich słabych miejsc. 3.4. Elementy bezpieczeństwa W zarządzeniu bezpieczeństwem systemów używane są pojęcia przydatne w tym celu. Do podstawowych pojęć można zaliczyć: zasoby, podatność, zagrożenie, incydent bezpieczeństwa. Poniższe definicje zostały podane za [3] z pewnymi modyfikacjami, wynikającymi z potrzeby ułatwienia przyswojenia i zwiększenia czytelności niektórych pojęć. 3.4.1. Zasoby Jednym z podstawowych pojęć używanych na potrzeby zarządzania bezpieczeństwem jest pojęcie zasobu. Zasoby [ang. assets] inaczej aktywa – wszystko, co dla danej instytucji ma wartość i dla jej dobra należy chronić, aby mogła funkcjonować w sposób niezakłócony. Zasób może być różny: nieożywiony – np. część infrastruktury sieciowej, jak i ożywiony, np. człowiek – administrator systemu. Zasoby możemy podzielić na trzy kategorie: 1. systemy komputerowe (sprzęt i oprogramowanie) 2. infrastruktura (środowisko pracy systemu komputerowego: np. budynek, zasilanie elektryczne, itp.) 3. człowiek (użytkownicy systemu komputerowego). W przypadku przeprowadzanej należy odnieść się do wszystkich wyżej wymienionych kategorii, ale w stopniu szczegółowości zależnym od zadanej sytuacji. 2 3.4.2. Podatność Każdy zasób posiada określoną podatność. Podatność [ang. vulnerability] – cecha (słabość) zasobu, która może wykorzystana w celu doprowadzenia do strat. Podatności mogą mieć różny charakter, w zależności od kategorii zasobu, do której on należy. Jeżeli weźmiemy np. człowieka, to podatnością w kontekście zagrożenia w postaci grypy, może być ogólne osłabienie organizmu. W przypadku systemu komputerowego w kontekście zagrożenia w postaci działania hackera, podatnością może być słabość zabezpieczeń systemu operacyjnego spowodowana nie wgrywaniem aktualnych poprawek zwiększających poziom bezpieczeństwa systemu. Jeśli zaś chodzi o infrastrukturę, to podatnością może być wykonanie jednej nitki zasilania elektrycznego systemu komputerowego w kontekście zagrożenia w postaci koparki przecinającej kabel elektryczny przy wykonywaniu wykopu. 3.4.3. Zagrożenie Zagrożenia wykorzystują podatność. Mają one charakter obiektywny. Nie możemy, niestety, wyeliminować zagrożeń, tak jak nie możemy wyeliminować chorób na świecie. Zagrożenie [ang. threat] – potencjalna przyczyna strat. Tak jak napisano powyżej – zagrożeń nie możemy wyeliminować. Co najwyżej możemy ich unikać w pewnym stopniu. Klasycznym przykładem jest tu grypa – nie możemy jej wyeliminować, co nie znaczy, że nie możemy przedsięwziąć środków, aby skutki jej działania nie były tak groźne. Nie wyeliminujemy też hackerów. Nie skasujemy powodzi. Brak chwilowy występowania zagrożeń nie oznacza, że nie pojawią się one w przyszłości. Mamy też pewną liczbę zagrożeń, których nie mamy świadomości lub po prostu ich nie znamy. Ale w takich sytuacjach dopiero po ich wystąpieniu, a raczej po pojawieniu się ich symptomów, będziemy mogli reagować (mając jednocześnie szczęście, że symptomy zostaną wykryte równocześnie z pojawieniem się danego zagrożenia). 3.4.4. Incydent bezpieczeństwa Jeżeli dane zagrożenie wykorzysta podatność danego zasobu, to następstwem jest incydent bezpieczeństwa. Incydent bezpieczeństwa [ang. security incident] – to zdarzenie, które prowadzi do lub jest wykorzystaniem podatności przez zagrożenie. Istnieje dyskusja czy samo usiłowanie wykorzystania podatności przez zagrożenie je incydentem. Według mnie tak, bowiem miara określenia skuteczności tego wykorzystania jest względna, a sam fakt wystąpienia zjawiska świadczy o potencjalnym niebezpieczeństwie. Ewaluacja skutków jest rzeczą wtórną. W związku z tym nie możemy a priori odrzucać takich zdarzeń jako nieistotne (patrz wyżej: dyskusja na temat informacji wrażliwej i niewrażliwej). 3.5. Podsumowanie Firma Microsoft przygotowała „Dziesięć Niezmiennych Reguł Bezpieczeństwa” [ang. The Ten Immutable Laws of Security]. Autorem ich jest Scott Culp, pracownik Microsoft Security 3 Response Center [4], a prawa te można znaleźć w Internecie: http://www.microsoft.com/technet/colums/10imlaws.asp Poniższe reguły stanowią zdroworozsądkowe podsumowanie działań, które powinny prowadzić do zwiększenia poziomu bezpieczeństwa systemów komputerowych. Po każdej regule pozwoliłem sobie na krótki komentarz. Reguła 1 Jeżeli ktokolwiek może Cię skłonić do uruchomienia swojego programu na Twoim komputerze, to nie jest już Twój komputer. Reguła, której zastosowanie sprowadziło by używanie komputerów do używania wyłącznie napisanych własnoręcznie programów. Abstrahuję oczywiście od środowiska programistycznego, do którego też musiałbym mieć zaufanie, aby korzystając z niego napisać program. Reguła 2 Jeżeli ktokolwiek może zamienić system operacyjny Twojego komputera, nie jest to już Twój komputer. Na całe szczęście istnieje już możliwość szyfrowania dysków, co powoduje, że tak metoda może być nieskuteczna. Oczywiście, niezależenie od faktu, czy stosujemy to szyfrowanie. Reguła 3 Jeżeli ktokolwiek ma nieograniczony fizyczny dostęp do Twojego komputera, nie jest to już Twój Komputer. Reguła, której koronnym przypadkiem jest brak dostępu innych osób niż administratorzy systemów do serwerowni. Reguła 4 Jeżeli ktokolwiek może umieszczać na Twojej witrynie www swoje programy, nie jest to już Twoja witryna www. W dobie web 2.0 i web 3.0 widać, jakie duże niebezpieczeństwa czyhają na zwykłych użytkowników stron www. Reguła 5 Słabe hasła ograniczają skuteczność najlepszych zabezpieczeń. Nadal, niestety, bardzo aktualne. Hasło typu „12345” lub „qwerty” są bardzo popularne. Reguła 6 Komputer jest na tyle bezpieczny, na ile godny zaufania jest jego administrator. Do kogo możemy mieć zaufanie jak nie do administratora? Aczkolwiek w wielu systemach pojawiły się technologie szyfrujące, dzięki którym administrator może wykonywać operacje na zasobach, nie mając możliwości zajrzenia do ich wnętrza. Reguła 7 Zaszyfrowane dane są co najwyżej tak bezpieczne, jak klucz deszyfrujący. 4 Przypadek używania wielokrotnego tych samych kluczy już nie raz dał szanse na złamanie wielu szyfrogramów. Reguła 8 Niezaktualizowany skaner antywirusowy jest tylko nieco lepszy od braku takiego skanera. Ta reguła nie do końca mi się podoba. Skaner z nieaktualnymi wzorcami (oczywiście wchodzi w rachubę kwestia „stopnia” nieaktualności) powinien zabezpieczyć przed większością popularnych wirusów. Reguła 9 Całkowita anonimowość jest niepraktyczna, zarówno w życiu, jak i w sieci. Poczucie możliwości identyfikacji powoduje zastosowanie zasady: „Jak nie wiesz jak się zachować, na wszelki wypadek zachowuj się przyzwoicie….”. Reguła 10 Technologia nie jest panaceum. Zastosowana technologia stanowi jedynie szansę na zwiększenie poziomu bezpieczeństwa naszego systemu. Sama jej obecność, bez odpowiednego dostosowania do naszego systemu nie daje żadnych gwarancji bezpieczeństwa. Mało tego, w niektórych sytuacjach może znacząco obniżyć istniejący już poziom bezpieczeństwa. Wyżej wymienione reguły mają charakter bardzo ogólny. Jednak ich funkcja jest inna – chodzi o uprzytomnienie użytkownikom komputerów prostych zasad, których nie przestrzeganie może się wiązać z daleko idącymi w sferze bezpieczeństwa systemów komputerowych, niebezpieczeństwami. Bezpieczeństwo normalnie „nie boli”. Dopiero autentyczne poniesienie strat z tytułu jego nie zachowania powoduje, że zaczynamy zastanawiać się, czy nie byłoby dobrze skorzystać z wypracowanych przez innych zasad bezpieczeństwa. 5