Praktyczne aspekty identyfikacji podatności oprogramowania. Metoda wykrywania podatności aplikacji internetowych

IDENTYFIKACJA PODatności W SYSTEMACH INFORMATYCZNYCH

Siergiej Konowalenko

absolwent wyższej szkoły wojskowej w Krasnodarze,

Rosja, Krasnodar

Igor Korolew

doktor inżynierii, profesor, profesor wydziału chronionych technologii informacyjnych, wyższa szkoła wojskowa w Krasnodarze,

Rosja, Krasnodar

ADNOTACJA

Dokonano oceny istniejących narzędzi analizy bezpieczeństwa systemów informatycznych, na podstawie której zbudowano modele służące identyfikacji, identyfikacji i ocenie obrazów podatności systemów informatycznych. Identyfikowane są główne cechy (elementy) właściwe obrazom istniejących podatności systemów informatycznych.

ABSTRAKCYJNY

Ocena istniejących narzędzi do analizy System informacyjny wykonano zabezpieczenie. Na podstawie uzyskanych wyników zbudowano modele wykrywania, identyfikacji i oceny obrazów podatności systemów informatycznych. Zdefiniowano główne cechy (elementy) właściwe obrazom podatności istniejących systemów informatycznych.

Słowa kluczowe: identyfikacja; System informacyjny; identyfikacja; stopień; opis obrazu; słaby punkt.

Słowa kluczowe: wykrycie; System informacyjny; identyfikacja; ocena; opis obrazu; słaby punkt

Każdy system informatyczny (zwany dalej IS) ma pewne luki, których lista jest dość obszerna i podlega ciągłej aktualizacji (rozszerzaniu). Luki w zabezpieczeniach IS są spowodowane niedociągnięciami (błędami), które pojawiają się podczas „cyklu życia” tego systemu. W tej formie możliwość wdrożenia zagrożeń dla bezpieczeństwa systemu informatycznego zależy bezpośrednio od działań atakującego mających na celu wykrycie i wykorzystanie jego nieodłącznych luk. Z kolei proces identyfikacji podatności IS, prowadzony przez specjalistę, ma kluczowe znaczenie w przeciwdziałaniu atakującemu już na wczesnych etapach realizacji ataków.

Celem artykułu jest zbudowanie uogólnionych modeli identyfikacji, identyfikacji i oceny obrazów podatności IS, a także określenie cech (elementów) tkwiących w obrazach istniejących podatności, co pozwoli specjaliście lepiej usystematyzować swoją pracę w w obszarze zapewnienia bezpieczeństwa kontrolowanego IS.

Według GOST R 56545-2015 „luka” to wada (słabość) narzędzia programowego (oprogramowania i sprzętu) lub systemu informatycznego jako całości, która może zostać wykorzystana do wprowadzenia zagrożeń dla bezpieczeństwa informacji. „System informacyjny” to zbiór informacji zawartych w bazach danych (zwanych dalej DB) oraz tych, które zapewniają ich przetwarzanie Technologie informacyjne i środki techniczne.

Każdą podatność IS można przedstawić w postaci obrazu zawierającego zestaw pewnych cech (elementów opisujących tę podatność), utworzonego według określonych zasad.

Opis podatności IS to informacja o zidentyfikowanej (odkrytej) podatności. Zasady opisywania podatności IS to zbiór przepisów regulujących strukturę i treść opisu podatności.

Według obrazów podatności, są one podzielone na obrazy znanych podatności, obrazy podatności zero-day i obrazy nowo odkrytych podatności. Znana luka to luka, która została publicznie ujawniona i zawiera powiązane środki bezpieczeństwa, poprawki i dostępne aktualizacje. Luka dnia zerowego to luka, która staje się znana, zanim twórca komponentu IP opublikuje odpowiednie środki bezpieczeństwa informacji, poprawki błędów lub odpowiednie aktualizacje. Nowo odkryta luka to luka, która nie została publicznie ujawniona.

Każdy typ obrazu podatności IS ma zarówno ogólną, jak i specyficzną charakterystykę (elementy), które można podsumować w tabeli. Przykładowa tabela znajduje się poniżej.

Tabela 1.

Elementy różnych typów obrazów podatności IS

Charakterystyka obrazu podatności

Element nieodłącznie związany z obrazem znanej podatności

Element wpisany w obraz podatności typu zero-day

Element wpisany w wizerunek nowo zidentyfikowanej podatności

Miejsce wykrycia (identyfikacji) podatności w systemie informatycznym.

Metoda wykrywania (identyfikacji) podatności.

Nazwa luki.

Zanim przejdziemy do modeli identyfikacji, identyfikacji i oceny obrazów podatności, należy wyjaśnić, że IS składa się z poziomów:

  • poziom aplikacji oprogramowanie(dalej: oprogramowanie) odpowiedzialne za interakcję z użytkownikiem;
  • poziom systemu zarządzania bazami danych (zwany dalej SZBD), odpowiedzialny za przechowywanie i przetwarzanie danych IS;
  • poziom systemu operacyjnego (zwany dalej OS), odpowiedzialny za utrzymanie SZBD i oprogramowania aplikacyjnego;
  • warstwa sieciowa odpowiedzialna za interakcję węzłów IS.

Każdy poziom IS jest powiązany z różnymi typami (klasami) luk w zabezpieczeniach. Aby zidentyfikować podatności, konieczne jest opracowanie modeli identyfikacji, identyfikacji i oceny podatności.

Głównymi źródłami luk w zabezpieczeniach IS są:

  • błędy w rozwoju (projektowaniu) SI (na przykład błędy w oprogramowaniu);
  • błędy podczas wdrażania IS (błędy administratora IS) (na przykład nieprawidłowa instalacja lub konfiguracja oprogramowania, nieskuteczna koncepcja polityki bezpieczeństwa itp.);
  • błędy podczas korzystania z systemu informatycznego (błędy użytkownika) (np. słabe hasła, naruszenie polityki bezpieczeństwa itp.).

Do identyfikacji, identyfikacji i oceny podatności systemów IS, a także generowania raportów i eliminowania (neutralizowania) podatności wykorzystywane są narzędzia analizy bezpieczeństwa sieci (zwane dalej NAS) (skanery bezpieczeństwa (zwane dalej SB)), które można podzielić na na dwa typy:

  • sieć SAZ (SB) (realizujemy zdalna analiza stany kontrolowanych hostów na poziomie sieci);
  • SAZ (SB) na poziomie systemu operacyjnego (przeprowadzaj lokalną analizę stanów kontrolowanych hostów, czasami konieczne jest zainstalowanie specjalnego agenta na kontrolowanych hostach).

Znaczenie stosowania SAZ (SS) wynika z faktu, że specjalista jest w stanie z wyprzedzeniem zidentyfikować wystarczająco dużą listę typów (klas) podatności właściwych dla kontrolowanego systemu informacyjnego i podjąć niezbędne środki (w niektórych przypadkach spróbuj podjąć), aby je wyeliminować lub wykluczyć (zminimalizować) możliwość wykorzystania wykrytych podatności przez atakującego.

Aby usystematyzować pracę specjalisty z zakresu bezpieczeństwa kontrolowanego przez IS i na podstawie przeprowadzonej analizy budowany jest uogólniony model identyfikacji obrazów podatności IS (rysunek 1).

Rysunek 1. Uogólniony model identyfikacji obrazów luk w zabezpieczeniach IS

Proces identyfikacji podatności IS opiera się na wykonywaniu pasywnych kontroli (skanowania) i aktywnych kontroli (sondowania) pod kątem obecności luk w kontrolowanym IS.

Podczas procesu skanowania SAZ wysyłając odpowiednie żądania do kontrolowanego IS (do portów kontrolowanego hosta), analizuje zwrócone banery (nagłówki pakietów danych) i wyciąga odpowiednie wnioski na temat rodzaju IS i obecności jego potencjału ( możliwe) luki w zabezpieczeniach. Wynik skanowania nie zawsze wskazuje w stu procentach na obecność możliwych (typowych) luk w zabezpieczeniach IS, gdyż treść banera mogła zostać specjalnie zmodyfikowana lub znane luki tkwiące w tym IS zostały wyeliminowane przez specjalistę w procesie jego wdrożenie (użytkowanie). Innym sposobem wykonywania czynności skanujących są aktywne kontrole sondujące, które dają możliwość analizy zwróconego cyfrowego wrażenia (odcisku palca) fragmentu oprogramowania kontrolowanego adresu IP (tj. przeprowadzenia procesu porównania uzyskanego wyniku z cyfrowym wyciskiem znana luka tego typu JEST). Metoda ta zapewnia bardziej niezawodną i dokładną procedurę identyfikacji możliwych (typowych) luk w kontrolowanym systemie informatycznym.

Podczas procesu sondowania SAZ symuluje atak na kontrolowany IS, wykorzystując obraz możliwej (typowej) podatności uzyskany podczas skanowania. Wynikiem procesu sondowania jest najdokładniejsza i najbardziej wiarygodna informacja o obecności podatności w kontrolowanym IP. Ta metoda nie zawsze jest stosowana, ponieważ istnieje możliwość nieprawidłowego działania (wyłączenia) kontrolowanego IS. Decyzję o zastosowaniu powyższej metody podejmuje administrator sieci w przypadku nieskutecznego wdrożenia lub konieczności potwierdzenia wyników kontroli skanowania i aktywnego sondowania.

Wyniki skanowania i sondowania są przesyłane do bazy danych podatności, w której przechowywane są obrazy luk w kontrolowanym IS. Na podstawie procedury porównywania obrazu wykrytej podatności z obrazami podatności kontrolowanego IS, SAZ generuje raport o braku lub obecności dopasowań w obrazach podatności (wykrywanie podatności), który jest przechowywany w bazie podatności.

Uogólniony model identyfikacji wzorców luk w zabezpieczeniach jest szczegółowo opisany w uogólnionym modelu identyfikacji i oceny wzorców luk w zabezpieczeniach IS (rysunek 2).

Rysunek 2. Uogólniony model identyfikacji i oceny obrazów podatności IS

Proces identyfikacji obrazu wykrytej podatności IS, który ma określone cechy (elementy), odbywa się poprzez procedurę porównania go z obrazami znanych podatności i podatności typu zero-day przechowywanymi w bazie podatności. Sformalizowany opis znanych podatności i podatności typu zero-day wydawany jest w formie paszportów, które zawierają informacje o specyficznych cechach (elementach) danej podatności. Aby dokładnie zidentyfikować obraz wykrytej podatności, musi on zawierać informację o nazwie i wersji oprogramowania IP, w którym wykryto podatność, o identyfikatorze, nazwie i klasie wykrytej podatności. Na podstawie powyższych informacji SAZ koreluje wykryty obraz podatności z jednym z typów obrazów podatności. Z kolei, aby ocena była wysokiej jakości, obraz zidentyfikowanej podatności musi zawierać informacje o identyfikatorze i rodzaju wady IS, w której wykryto podatność, o lokalizacji podatności w IS oraz o sposobie identyfikacji słaby punkt. Proces oceny obrazu podatności kończy się opracowaniem rekomendacji mających na celu wyeliminowanie podatności lub wykluczenie możliwości jej wykorzystania. W przypadku odkrycia obrazu nowo zidentyfikowanej podatności, SAZ umieszcza informację o niej w bazie danych podatności, tworząc nowy paszport podatności typu zero-day. Kiedy twórca IS wprowadza środki bezpieczeństwa informacji, niezbędne aktualizacje a kiedy wady zostaną naprawione, luka dnia zerowego stanie się znaną luką.

Podsumowując wyniki tego artykułu, zauważamy, że specjalista ds. bezpieczeństwa IS ma obowiązek ciągłej pracy nad identyfikacją podatności w systemie, jasnym zrozumieniem i zrozumieniem procesów zachodzących w systemie bezpieczeństwa, monitorowaniem aktualizacji (rozbudowy) bazy danych podatności, niezwłocznego wyeliminować braki w systemie oraz zainstalować odpowiednie zabezpieczenia i aktualizacje kontrolowanego adresu IP.

Bibliografia:

  1. Astakhov A.S. Analiza bezpieczeństwa zautomatyzowanych sieci korporacyjnych // Biuletyn Jet Info. – 2002 r. – nr 7 (110). / – [ Zasób elektroniczny] – Tryb dostępu: Adres URL: http://www.jetinfo.ru
  2. Gorbatow V.S., Meshcheryakov A.A. Analiza porównawcza zabezpieczeń sieci komputerowych // Bezpieczeństwo technologii informatycznych. – 2013. – Nr 1. / – [Zasoby elektroniczne]. – Tryb dostępu: Adres URL: http://www.bit.mephi.ru
  3. GOST R 56545-2015 „Ochrona informacji. Podatności systemów informatycznych. Zasady opisywania podatności.” – M.: Standartinform, 2015.
  4. GOST R 56546-2015 „Ochrona informacji. Podatności systemów informatycznych. Klasyfikacja podatności systemów informatycznych.” – M.: Standartinform, 2015.
  5. Łukacki A.V. Jak działa skaner bezpieczeństwa? / - [Zasoby elektroniczne]. – Tryb dostępu: http://www.citforum.ru/security/internet/scaner.shtml (data dostępu: 14.09.2016).
  6. Łukacki A.V. Wykrywanie ataku. – Petersburgu. : Wydawnictwo „BVH”, 2001. – 624 s.
  7. Podręcznik użytkownika pakiet oprogramowania„Narzędzie do analizy bezpieczeństwa „Scanner-VS”. NPESH.00606-01. CJSC NPO Eshelon, 2011.
  8. Skaner bezpieczeństwa XSPider. Przewodnik administratora / – [Zasoby elektroniczne]. – Tryb dostępu: http://www.ptsecurity.ru (data dostępu: 15.09.2016).
  9. Skaner bezpieczeństwa MaxPatrol. System kontroli bezpieczeństwa / – [Zasoby elektroniczne]. – Tryb dostępu: http://www.ptsecurity.ru (data dostępu: 16.09.2016).
  10. Stephen Northcutt, Judy Novak. Wykrywanie naruszeń bezpieczeństwa w sieciach. Wydanie 3: Tłum. z angielskiego – M.: Williams Publishing House, 2003. – s. 265–280.

Systemy wykrywania ataków

Istnieją trzy etapy przeprowadzenia ataku. Pierwszy etap przygotowawczy polega na poszukiwaniu przesłanek do przeprowadzenia konkretnego ataku. Na tym etapie szukamy podatności, których wykorzystanie prowadzi do realizacji ataku, tj. do drugiego etapu. W trzecim etapie atak jest zakończony, ślady są „zakryte” itp. Co więcej, pierwszy i trzeci etap same w sobie mogą być atakami. Za atak uważa się na przykład wyszukiwanie przez osobę atakującą luk w zabezpieczeniach za pomocą skanerów bezpieczeństwa, takich jak SATAN.

Istniejące mechanizmy ochrony zaimplementowane w firewallach, serwerach uwierzytelniających, systemach kontroli dostępu itp. pracować tylko w drugim etapie. Te. Zasadniczo służą one do blokowania, a nie zapobiegania atakom. W zdecydowanej większości przypadków chronią przed trwającymi już atakami. A nawet gdyby udało im się zapobiec temu czy innemu atakowi, to zapobieganie atakom byłoby znacznie skuteczniejsze, tj. eliminując same przesłanki realizacji włamań. Kompleksowy system wsparcia bezpieczeństwo informacji musi działać na wszystkich trzech etapach ataku. A zapewnienie odpowiedniej ochrony na trzecim, ostatnim etapie jest nie mniej ważne niż na dwóch pierwszych. Przecież tylko w tym przypadku można naprawdę ocenić szkody wynikające z „udanego” ataku, a także opracować środki eliminujące dalsze próby przeprowadzenia podobnego ataku.

Istnieje kilka sposobów wykrywania, blokowania i zapobiegania atakom. Pierwszą i najczęstszą metodą jest wykrywanie ataków, które są już realizowane. Metodę tę stosuje się w „klasycznych” systemach wykrywania ataków (np. RealSecure firmy ochrona Internetu systemy), zapory ogniowe itp. Jednak „wadą” tej klasy narzędzi jest to, że ataki można ponownie przeprowadzić. Drugi sposób polega na zapobieganiu atakom zanim one nastąpią. Odbywa się to poprzez wyszukiwanie luk, które można wykorzystać do przeprowadzenia ataku. I wreszcie trzeci sposób polega na wykrywaniu już dokonanych ataków i zapobieganiu ich ponownemu wystąpieniu. Zatem systemy wykrywania ataku można klasyfikować ze względu na etapy ataku (rys. 1.):

Systemy, które działają w pierwszej fazie ataków i umożliwiają wykrycie podatności systemu informatycznego wykorzystywanego przez atakującego do przeprowadzenia ataku. W przeciwnym razie narzędzia w tej kategorii nazywane są systemami oceny bezpieczeństwa lub skanerami bezpieczeństwa. Zazwyczaj systemy analizy bezpieczeństwa nie są zwykle klasyfikowane jako narzędzia do wykrywania ataków, jednak jeśli prześledzić etapy ataku opisane powyżej, taka klasyfikacja jest całkiem logiczna.

Systemy, które działają w drugiej fazie ataku i umożliwiają wykrycie ataków w trakcie ich realizacji, tj. w czasie rzeczywistym (lub prawie rzeczywistym). To właśnie te narzędzia uznawane są za systemy wykrywania ataków w klasycznym tego słowa znaczeniu. Ponadto możemy wyróżnić taką klasę narzędzi do wykrywania ataków, jak systemy oszustwa.

Systemy działające na trzecim etapie ataku i umożliwiające wykrycie ataków, które zostały już zakończone. Systemy te dzielą się na dwie klasy – systemy monitorowania integralności, które wykrywają zmiany w kontrolowanych zasobach oraz systemy analizy logów.

Rysunek 1. Klasyfikacja systemów wykrywania ataków według etapu ataku

Ponadto istnieje inna, powszechna klasyfikacja systemów wykrywania naruszeń polityki bezpieczeństwa – oparta na zasadzie realizacji: oparte na hoście, tj. wykrywające ataki wycelowane w konkretny węzeł sieci oraz sieciowe, wymierzone w całą sieć lub segment sieci. Zwykle na tym kończy się dalsza klasyfikacja. Jednak systemy oparte na hostach można podzielić na trzy kolejne podpoziomy:

IDS aplikacji (system wykrywania włamań) ), wykrywając ataki na konkretnych zastosowań;

OS IDS, które wykrywają ataki na systemy operacyjne;

DBMS IDS wykrywające ataki na systemy zarządzania bazami danych.

Skoncentruj się na wykrywaniu ataków na systemy zarządzania bazami danych (DBMS) w osobna kategoria z uwagi na fakt, że współczesne SZBD wyszły już z kategorii zwykłych zastosowań i w wielu swoich cechach, m.in. a pod względem złożoności są zbliżone do systemów operacyjnych. Zatem klasyfikacja systemów wykrywania ataków ze względu na poziom wdrożenia przedstawia się następująco (rys. 2):

Można zauważyć, że podział ten odpowiada poziomom systemu informacyjnego przedsiębiorstwa.

Rysunek 2. Klasyfikacja systemów wykrywania ataków według zasady implementacji

Systemy monitorowania integralności

Systemy monitorowania integralności działają w pętli zamkniętej, przetwarzając pliki, obiekty systemowe i atrybuty obiektów systemowych w celu uzyskania sumy kontrolne; następnie porównują je z poprzednimi sumami kontrolnymi, szukając zmian. W przypadku wykrycia zmiany system wysyła wiadomość do administratora, rejestrując czas odpowiadający prawdopodobnemu momentowi wystąpienia zmiany. Jeśli ponownie wrócimy do etapów realizacji ataku, to systemy tej klasy działają w fazie trzeciej, tj. potrafią jednoznacznie stwierdzić, czy doszło do ataku (dokładniej zmiany kontrolowanego obiektu), czy nie.

Systemy oszukańcze

Zwykle, jeśli chodzi o oszustwo w zakresie bezpieczeństwa informacji, wykorzystuje się metody stosowane przez atakujących, tj. luki umożliwiające ominięcie istniejących środków bezpieczeństwa, czy to kradzież haseł i działanie jako autoryzowany użytkownik, czy też nieuprawnione użycie modemy. Oszustwo może być przydatne nie tylko dla atakujących, ale także do ochrony zasobów firmy. Jest wiele różne opcje używanie oszustwa do dobrych celów:

Ukrywanie

Kamuflaż

Dezinformacja

W takim czy innym stopniu mechanizmy te wykorzystywane są w pracy działów bezpieczeństwa. Jednak z reguły mechanizmy te służą nie do celów informacyjnych, ale do innych obszarów bezpieczeństwa (fizycznego, ekonomicznego itp.).

W dziedzinie bezpieczeństwa informacji najpowszechniej stosowaną metodą jest ukrywanie. Uderzającym przykładem zastosowania tej metody do zapewnienia bezpieczeństwa informacji jest ukrywanie topologii sieci za pomocą zapory ogniowej. Przykładem kamuflażu jest: każdy system operacyjny posiada unikalną reprezentację mechanizmu identyfikacji użytkownika, różniącą się kolorem i rodzajem czcionki, w jakiej wystawione jest zaproszenie, treścią zaproszenia oraz jego umiejscowieniem. I wreszcie przykładem dezinformacji jest wykorzystanie banerów, które miały jasno dać do zrozumienia atakującemu, że atakowany przez niego system jest rzekomo podatny na ataki.

Działanie systemów 2 i 3, które je implementują, polega na tym, że systemy te emulują pewne znane luki, które w rzeczywistości nie występują. Stosowanie środków (systemów oszustwa) realizujących kamuflaż i dezinformację prowadzi do:

1. Zwiększenie liczby operacji i czynności wykonywanych przez sprawcę. Ponieważ nie da się z góry określić, czy luka odkryta przez osobę atakującą jest prawdziwa, czy też nie, osoba atakująca musi wykonać wiele dodatkowych działań, aby się tego dowiedzieć. I nawet dodatkowe działania nie zawsze w tym pomagasz. Na przykład próba uruchomienia programu do odgadywania haseł (na przykład Crack dla Uniksa lub L0phtCrack( L.C. ) dla Windows) na sfałszowanym i nieistniejącym pliku w rzeczywistości doprowadzi do straty czasu bez widocznych rezultatów. Atakujący będzie myślał, że nie był w stanie odgadnąć haseł, podczas gdy w rzeczywistości program „hakerski” został po prostu oszukany.

2. Zyskanie możliwości śledzenia napastników. W okresie, w którym atakujący próbują sprawdzić wszystkie wykryte luki, m.in. i fikcyjne, administratorzy bezpieczeństwa mogą prześledzić całą drogę aż do sprawcy lub sprawców i podjąć odpowiednie działania.

Na przykład system informatyczny wykorzystuje od 5 do 10 zarezerwowanych portów (ponumerowanych od 1 do 1024). Należą do nich porty odpowiedzialne za działanie Usługi HTTP, FTP, SMTP, NNTP, NetBIOS, Echo, Telnet itp. Jeśli systemy oszukańcze (na przykład RealSecure firmy ISS) emulują użycie kolejnych 100 lub więcej portów, wówczas praca atakującego dramatycznie wzrasta i atakujący znajdzie nie 5-10, ale 100 otwartych portów. Jednocześnie nie wystarczy wykryć otwarty port, musimy także spróbować wykorzystać luki związane z tym portem. I nawet jeśli atakujący zautomatyzuje tę pracę za pomocą odpowiedniego oprogramowania (Nmap, SATAN itp.), liczba wykonywanych przez niego operacji i tak znacząco wzrasta, co prowadzi do szybkiego spadku jego produktywności.

Narzędzia do analizy bezpieczeństwa

Podatności wykrywane są przez systemy analizy bezpieczeństwa – skanery bezpieczeństwa lub systemy wyszukiwania podatności. Prowadzą kompleksowe badania danych systemów w celu identyfikacji podatności, które mogą prowadzić do naruszenia polityki bezpieczeństwa. Wyniki uzyskane za pomocą narzędzi do analizy bezpieczeństwa zapewniają „migawkę” stanu bezpieczeństwa systemu w danym momencie. Chociaż systemy te nie są w stanie wykryć ataku w miarę jego rozwoju, mogą zidentyfikować potencjalne ataki.

Technologia analizy bezpieczeństwa jest skuteczna metoda wdrażanie polityki bezpieczeństwo sieci zanim zostanie podjęta próba jego naruszenia z zewnątrz lub wewnątrz organizacji.

Jedną z możliwości klasyfikacji podatności może być klasyfikacja odzwierciedlająca etapy cyklu życia systemu informatycznego (tabela 1).

Etapy cyklu życia IP

Projekt układu scalonego

Luki w projektowaniu

Wdrożenie IP

Luki w implementacji

Działanie IP

Luki w konfiguracji

Najbardziej niebezpieczne luki w projektowaniu to te, które są trudne do wykrycia i naprawienia. W tym przypadku podatność jest nieodłącznie związana z projektem lub algorytmem i dlatego nawet jej doskonała implementacja (co w zasadzie jest niemożliwa) nie wyeliminuje tkwiącej w nim podatności. Na przykład luka w stosie protokołów TCP/IP.

Znaczenie podatności drugiej kategorii (podatności wdrożeniowe) polega na pojawieniu się błędu na etapie wdrażania w oprogramowaniu lub sprzęcie projektu lub algorytmu, który jest poprawny z punktu widzenia bezpieczeństwa. Tego typu luki są stosunkowo łatwo wykrywane i eliminowane – poprzez aktualizację kodu wykonywalnego lub zmianę tekstu źródłowego podatnego oprogramowania.

Ostatni powód występowanie podatności - błędy konfiguracji oprogramowania lub sprzęt komputerowy. Należą do nich na przykład usługa Telnet dostępna, ale nie używana na hoście, użycie „słabych” haseł lub haseł krótszych niż 6 znaków, konta i hasła domyślnie zatrzymane (na przykład SYSADM lub DBSNMP w Oracle DBMS) itp. Luki te są najłatwiejsze do wykrycia i naprawienia.

Systemy analizy bezpieczeństwa można klasyfikować ze względu na rodzaj wykrywanych przez nie luk (rys. 3), opisanych powyżej.

Wśród użytkowników końcowych najbardziej rozpowszechnione są systemy analizy bezpieczeństwa drugiej i trzeciej klasy. Istnieje kilka dodatkowych klasyfikacji tych systemów. Na przykład systemy analizy tekstu źródłowego i kodu wykonywalnego testowanego oprogramowania i sprzętu itp. Te pierwsze są również zwykle używane podczas certyfikacji oprogramowania pod kątem wymagań bezpieczeństwa. W większości przypadków oprogramowanie dostarczane jest organizacji bez kodu źródłowego. Ponadto analiza tekstów źródłowych wymaga wysokich kwalifikacji od obsługującej je kadry. Brak wydajne systemy analiza tekstów źródłowych nie pozwala na przeprowadzenie takiej analizy na poziomie jakościowym. Dlatego dużym zainteresowaniem cieszą się systemy do wyszukiwania podatności w kodzie wykonywalnym, których najczęstszą podklasą są systemy symulujące ataki, symulujące różne nieuprawnione uderzenia na elementy systemu informatycznego. To właśnie te systemy stały się powszechnie znane na całym świecie ze względu na ich względną prostotę i niski koszt. Ci imitatorzy wykrywają luki, zanim zostaną wykorzystane przez atakujących do przeprowadzenia ataków. Systemy tej klasy obejmują SATAN, Internet Scanner, Cisco Secure Scanner itp.

Systemy symulacji ataków równie skutecznie wykrywają nie tylko luki w zabezpieczeniach implementacji, ale także luki w zakresie wykorzystania. Systemy analizy bezpieczeństwa, w szczególności systemy wyszukiwania podatności wdrożeniowych i eksploatacyjnych, mogą działać na wszystkich poziomach infrastruktury informatycznej każdego przedsiębiorstwa, czyli na poziomie sieci, systemu operacyjnego, DBMS i oprogramowania aplikacyjnego. Najpowszechniej stosowanymi narzędziami są narzędzia do analizy bezpieczeństwa usług i protokołów sieciowych. Wynika to przede wszystkim z uniwersalności stosowanych protokołów. Znajomość i powszechne wykorzystanie stosów protokołów, takich jak TCP/IP itp. pozwalają z dużą efektywnością sprawdzić bezpieczeństwo sieci korporacyjnej działającej na danym obszarze środowisko sieciowe, niezależnie od tego, które oprogramowanie działa na wyższych poziomach. Przykładem takiego systemu jest skaner internetowy ISS. Drugim najpopularniejszym narzędziem są narzędzia do analizy bezpieczeństwa systemów operacyjnych. Wynika to również z wszechstronności i rozpowszechnienia niektórych systemów operacyjnych (na przykład UNIX i Windows). Jednak ze względu na fakt, że każdy producent wprowadza własne zmiany w systemie operacyjnym (uderzającym przykładem jest wiele odmian systemu operacyjnego UNIX), narzędzia do analizy bezpieczeństwa systemu operacyjnego analizują przede wszystkim parametry charakterystyczne dla całej rodziny jednego systemu operacyjnego. I tylko dla niektórych systemów analizowane są parametry dla niego specyficzne. Przykładem takiego systemu jest Skaner Systemowy ISS.

Podczas przeprowadzania analizy bezpieczeństwa wdrażane są dwie strategie. Pierwsza jest pasywna, realizowana na poziomie systemu operacyjnego, DBMS i aplikacji, w których przeprowadzana jest analiza pliki konfiguracyjne oraz rejestr systemowy pod kątem nieprawidłowych parametrów, pliki haseł dla łatwych do odgadnięcia haseł, a także inne obiekty systemowe pod kątem naruszeń polityki bezpieczeństwa. Druga strategia, aktywna, realizowana jest w większości przypadków na poziomie sieci, co pozwala odtworzyć najczęstsze scenariusze ataków i przeanalizować reakcje systemu na te scenariusze.

Nie należy jednak myśleć, że za pomocą narzędzi do analizy bezpieczeństwa można jedynie przetestować możliwość nieautoryzowanego dostępu z sieci do sieci firmowej otwarty dostęp(na przykład Internet). Narzędzia te można z nie mniejszym powodzeniem wykorzystać do analizy określonych segmentów czy węzłów sieci wewnętrznej organizacji. Systemy analizy bezpieczeństwa mogą być stosowane:

  • ocenić poziom bezpieczeństwa organizacji;
  • monitorowanie efektywności konfiguracji oprogramowania i sprzętu sieciowego, systemowego i aplikacyjnego;
  • zewnętrzne firmy audytorskie i konsultingowe realizujące badania informacyjne sieci klientów;
  • do testowania i certyfikacji tego lub innego oprogramowania i sprzętu.

Tabela 2. Narzędzia analizy bezpieczeństwa.

Nazwa

Producent

Notatka

Skaner internetowy

Internetowe systemy zabezpieczeń

Na poziomie sieci

Pierwszy system, który otrzymał certyfikat Państwowej Komisji Celnej. Zgodnie z systemem, w Rosji odbywają się autoryzowane szkolenia.

Skaner systemu

Internetowe systemy zabezpieczeń

Na poziomie systemu operacyjnego

Skaner baz danych

Internetowe systemy zabezpieczeń

Na poziomie DBMS

Bezpieczny skaner Cisco

Systemy Cisco

Na poziomie sieci

Skaner CyberCop

Współpracownicy Sieci

Na poziomie sieci

Analizator bezpieczeństwa WebTrends

Firma WebTrends

Na poziomie sieci

Przedsiębiorstwo

Menadżer ochrony

Symanteca

Na poziomie systemu operacyjnego

SFProtect

Hewlett Packard

Na poziomie sieci, systemu operacyjnego i DBMS

Nessus

Swobodnie dystrybuowane

Na poziomie sieci

System posiada certyfikat Państwowej Komisji Celnej.

Ponieważ stale pojawiają się nowe podatności, aby je skutecznie wykryć, konieczna jest ciągła aktualizacja bazy danych systemu analizy bezpieczeństwa. W idealnym przypadku nie powinno być przerwy pomiędzy pojawieniem się informacji o podatności w zabezpieczeniach w różnych źródłach hakerów a pojawieniem się sygnatury w bazie danych systemu detekcji. Jednak niezależnie od tego, jak często aktualizowana jest baza danych o lukach, pomiędzy powiadomieniem o nowej luce a pojawieniem się jej sprawdzenia upływa pewien czas.

Istnieją dwa główne mechanizmy, za pomocą których skaner sprawdza podatność na ataki — skanowanie (skanowanie) i sondowanie (sonda).

Łów - mechanizm analizy pasywnej, za pomocą którego skaner próbuje określić obecność podatności bez faktycznego potwierdzania jej obecności - w oparciu o znaki pośrednie. Ta metoda jest najszybsza i najłatwiejsza do wdrożenia. W terminologii ISS metoda ta nazywa się „wnioskowaniem”. Według Cisco proces ten identyfikuje otwarte porty, znajdujący się na każdym urządzeniu sieciowym i zbiera banery związane z portami znalezione podczas skanowania każdego portu. Każdy otrzymany nagłówek jest porównywany z tabelą reguł identyfikujących urządzenia sieciowe, systemy operacyjne i potencjalne podatności. Na podstawie porównania wyciąga się wniosek o obecności lub braku podatności.

Sondowanie - aktywny mechanizm analizy, który pozwala sprawdzić, czy w analizowanym węźle występuje podatność, czy też nie. Sondowanie polega na symulowaniu ataku wykorzystującego testowaną lukę. Ta metoda jest wolniejsza niż „skanowanie”, ale prawie zawsze jest od niej znacznie dokładniejsza. W terminologii ISS metoda ta nazywa się „weryfikacją”. Według Cisco proces ten wykorzystuje informacje uzyskane w procesie skanowania („wnioskowanie”) do szczegółowej analizy każdego z nich Urządzenie sieciowe. W procesie tym wykorzystywane są również znane techniki ataków, aby w pełni potwierdzić podejrzane luki i wykryć inne luki, których nie można wykryć metodami pasywnymi, takie jak podatność na ataki typu „odmowa usługi”.

W praktyce mechanizmy te są realizowane kilkoma następującymi metodami.

„Sprawdzanie banera”

Mechanizm ten stanowi serię kontroli typu „skanowania” i pozwala na wyciągnięcie wniosków na temat luki w zabezpieczeniach na podstawie informacji zawartych w nagłówku odpowiedzi na żądanie skanera. Typowym przykładem takiej kontroli jest analiza nagłówków programu Sendmail lub serwera FTP, pozwalająca poznać ich wersję i na podstawie tych informacji wyciągnąć wniosek o obecności w nich luki. Nie zapominaj jednak, że administrator może zmienić tekst nagłówków zwracanych do żądań zewnętrznych.

„Aktywna kontrola sondowania”

Odnosi się również do mechanizmu „skanowania”. Opierają się one jednak na porównaniu „cyfrowego odcisku palca” oprogramowania z odciskiem palca znanej luki. To samo robią systemy antywirusowe, porównując fragmenty przeskanowanego oprogramowania z sygnaturami wirusów przechowywanymi w specjalistycznej bazie danych. Odmianą tej metody jest sprawdzanie sum kontrolnych lub dat skanowanego oprogramowania, które są zaimplementowane w skanerach działających na poziomie systemu operacyjnego.

Specjalizowana baza danych (w rozumieniu Cisco baza danych bezpieczeństwa sieci) zawiera informacje o podatnościach i sposobach ich wykorzystania (ataki). Dane te uzupełniane są informacjami o środkach zaradczych mających na celu zmniejszenie zagrożenia bezpieczeństwa w przypadku ich wykrycia. Często ta baza danych jest wykorzystywana zarówno przez system analizy bezpieczeństwa, jak i system wykrywania ataków. Przez co najmniej, tym właśnie zajmują się Cisco i ISS.

Ta metoda jest również dość szybka, ale trudniejsza do wdrożenia niż „sprawdzanie nagłówka”.

„Imitacja ataków” (kontrola exploitów)

Niektóre luki nie ujawniają się, dopóki nie zostaną „szturchnięte”. W tym celu przeprowadzane są prawdziwe ataki na podejrzaną usługę lub węzeł. Metoda „kontroli exploitów” pozwala symulować prawdziwe ataki, wykrywając w ten sposób luki w skanowanych węzłach z większą wydajnością (ale mniejszą szybkością). Symulowane ataki są bardziej niezawodną metodą analizy bezpieczeństwa niż sprawdzanie nagłówków i ogólnie są bardziej niezawodne niż aktywne sprawdzanie sondowaniem.

Są jednak przypadki, w których nie zawsze da się przeprowadzić symulację ataków. Takie przypadki można podzielić na dwie kategorie: sytuacje, w których test prowadzi do „odmowy usługi” analizowanego węzła lub sieci oraz sytuacje, w których dana luka w zasadzie nie nadaje się do przeprowadzenia ataku na sieć.

Wiele problemów związanych z bezpieczeństwem nie może zostać wykrytych bez zablokowania lub zakłócenia usługi lub komputera podczas procesu skanowania. W niektórych przypadkach niepożądane jest stosowanie symulacji ataku (na przykład w celu analizy bezpieczeństwa ważnych serwerów), ponieważ może to wiązać się z dużymi kosztami (materiałowymi i czasowymi) przywrócenia funkcjonalności uszkodzonych elementów sieci korporacyjnej. W takich przypadkach zaleca się zastosowanie innych kontroli, takich jak aktywne sondowanie lub sprawdzanie nagłówka.

Istnieją jednak pewne luki, których po prostu nie można przetestować bez ewentualnego wyłączenia usługi lub komputera. W takim przypadku takie kontrole są wyłączone i użytkownik może je włączyć samodzielnie. Na przykład w Skanerze internetowym takie kontrole są przydzielane do osobnej kategorii „Odmowa usługi”.

Kroki skanowania

Prawie każdy skaner przeprowadza analizę bezpieczeństwa w kilku etapach:

Zbieranie informacji o sieci. Na tym etapie wszystko urządzenia aktywne w sieci oraz określane są działające w nich usługi i demony. W przypadku korzystania z systemów analizy bezpieczeństwa na poziomie systemu operacyjnego ten krok jest pomijany, ponieważ na każdym analizowanym węźle instalowane są odpowiednie agenty skanera systemu.

Wykrywanie potencjalnych podatności. Skaner wykorzystuje opisaną powyżej bazę danych do porównywania zebranych danych ze znanymi lukami w zabezpieczeniach za pomocą kontroli nagłówków lub kontroli aktywnej sondy. W niektórych systemach wszystkie luki są uszeregowane według ryzyka. Na przykład skaner internetowy dzieli luki na trzy poziomy ryzyka: wysoki, średni i niski.

Potwierdzenie wybranych podatności. Skaner wykorzystuje specjalne metody i modeluje (symuluje) określone ataki, aby potwierdzić obecność luk w wybranych węzłach sieci.

Generowanie raportów.

Automatyczne usuwanie luk w zabezpieczeniach. Ten krok jest bardzo rzadko realizowany w skanerach sieciowych, ale jest szeroko stosowany w skanerach systemowych (na przykład Skaner systemowy). W której ta okazja mogą być realizowane na różne sposoby. Na przykład Skaner systemu tworzy specjalny skrypt (skrypt naprawczy), który administrator może uruchomić, aby naprawić lukę. Równocześnie z utworzeniem tego skryptu tworzony jest drugi skrypt, który anuluje dokonane zmiany. Jest to konieczne, jeśli po rozwiązaniu problemu normalne funkcjonowanie węzła zostanie zakłócone.

W każdym razie administrator poszukujący podatności ma kilka możliwości wykorzystania systemu analizy bezpieczeństwa:

  • Uruchom skanowanie tylko w poszukiwaniu potencjalnych luk w zabezpieczeniach (kroki 1, 2 i 4). Daje to podgląd systemów w sieci. Ta metoda jest znacznie mniej destrukcyjna niż inne, a także jest najszybsza.
  • Uruchom skanowanie, które sprawdza potencjalne i potwierdzone luki w zabezpieczeniach. Metoda ta może spowodować zakłócenia w działaniu węzłów sieci podczas realizacji kontroli typu „exploit check”.

Uruchom skanowanie z regułami niestandardowymi, aby znaleźć konkretny problem.

Kombinacje powyższych.

Podsystem generowania raportów jest ważnym elementem systemu analizy bezpieczeństwa. Bez tego trudno wyrobić sobie opinię na temat poziomu bezpieczeństwa segmentów sieci korporacyjnej. Na podstawie wygenerowanych raportów administrator bezpieczeństwa buduje wszystkie swoje dalsze działania - zmienia politykę bezpieczeństwa, eliminuje wykryte podatności, rekonfiguruje zabezpieczenia, przygotowuje raporty dla kierownictwa itp. Jednocześnie dobry podsystem generowania raportów powinien posiadać następujące właściwości:

Dostępność zarówno informacji tekstowych, jak i danych graficznych w raportach.

Raporty zawierają informacje o wykrytej podatności, wariantach fałszywego wykrycia, zalecenia dotyczące eliminacji wykrytych problemów, linki do serwerów producentów oraz dodatkowe informacje. W wielu przypadkach raporty zawierają także łącza do serwerów FTP lub WWW zawierających łatki i poprawki eliminujące wykryte luki.

Możliwość wybrania ze wszystkich zebranych informacji tylko niezbędnych danych według określonych kryteriów (przedział czasu, nazwa podatności, stopień ryzyka, system operacyjny, rodzaj podatności itp.).

Możliwość sortowania danych w generowanych raportach według różnych parametrów (według nazwy, daty, poziomu ryzyka itp.).

Możliwość tworzenia raportów dla różnych kategorii specjalistów. Można wyróżnić co najmniej trzy takie kategorie: kadra zarządzająca przedsiębiorstwem, kadra zarządzająca średniego szczebla oraz specjaliści techniczni. Raporty pierwszej kategorii nie zawierają żadnych informacji technicznych na temat wykrytych podatności lub ataków. Zawierają opis ogólnego stanu bezpieczeństwa sieci korporacyjnej. Raporty drugiej kategorii mogą zawierać bardziej szczegółowe informacje Specyfikacja np. opis wykrytych podatności lub ataków, jednak bez określenia środków mających na celu ich wyeliminowanie. W tej kategorii znajdują się także tzw. raporty porównawcze (analiza trendów), które pokazują tendencje zmian poziomu bezpieczeństwa dane węzły sieć korporacyjna. Ostatnia kategoria raportów obejmuje raporty techniczne, które zawierają nie tylko szczegółowy opis każdego z wykrytych problemów, ale także zalecenia dotyczące ich eliminacji, a także linki do dodatkowych źródeł informacji. Takie kategorie raportów są akceptowane na przykład w programie Internet Scanner i Cisco Secure Scanner.

Wsparcie różne formaty wygenerowane raporty.

Funkcje aplikacji

Jeśli skaner nie znajdzie podatności na testowanym węźle, nie oznacza to, że ich nie ma. Zależy to nie tylko od skanera, ale także od jego otoczenia. Na przykład następujący przypadek jest typowy dla systemu operacyjnego Windows: skaner próbuje zdalnie przeprowadzić analizę rejestr systemowy jednak w przypadku bana na analizowanym węźle zdalny dostęp do rejestru, skaner nie wykryje żadnych luk. Różne implementacje tej samej usługi w różny sposób reagują na systemy analizy bezpieczeństwa. Bardzo często w praktyce widać, że skaner pokazuje podatności, które nie występują na analizowanym węźle. Dotyczy to skanerów sieciowych, które wykonują zdalną analizę węzłów sieci. Zdalne ustalenie, czy luka faktycznie istnieje, jest prawie niemożliwe. W takim przypadku możemy zalecić zastosowanie systemu analizy bezpieczeństwa na poziomie systemu operacyjnego, którego agenci są instalowani na każdym monitorowanym węźle i przeprowadzają wszystkie skany lokalnie.

Aby rozwiązać ten problem, niektóre firmy produkcyjne podjęły ścieżkę zapewnienia swoim użytkownikom kilku systemów analizy bezpieczeństwa, które działają na wszystkich powyższych poziomach - poziomie sieci, systemu i aplikacji. Połączenie tych systemów umożliwia wykrycie niemal wszystkich znanych podatności z dużą skutecznością. Na przykład Internet Security Systems oferuje rodzinę czterech skanerów SAFEsuite: skaner internetowy, skaner systemowy, menedżer zabezpieczeń i skaner baz danych.

Firma Cisco, która oferuje wyłącznie system analizy bezpieczeństwa na poziomie sieci, poszła inną drogą, aby wyeliminować problem fałszywych alarmów. Dzieli wszystkie luki na dwie klasy:

Potencjał – wynikający ze sprawdzania nagłówków itp. aktywne szturchnięcia analizowanej usługi lub węzła. W systemie może istnieć potencjalna luka, ale aktywne kontrole tego nie potwierdzają.

Potwierdzony – zidentyfikowany i istniejący na analizowanym hoście.

Testy potencjalnej podatności przeprowadzane są poprzez zbiór nagłówków i użycie „miękkich podpowiedzi”. „Nudge” jest używane w przypadku usług, które nie zwracają nagłówków, ale na nie odpowiadają proste polecenia na przykład wysłanie polecenia HEAD w celu pobrania wersji serwera HTTP.

W niektórych przypadkach istnieją luki, które są trudne do wykrycia lub w ogóle nie są wykrywane w sieci. Na przykład sprawdzenie „słabości” haseł używanych przez użytkowników i inne konta. Jeśli korzystasz ze skanera sieciowego, będziesz musiał spędzić dużo czasu na zdalnym sprawdzaniu każdego konta. Jednocześnie podobna kontrola wykonywana na węźle lokalnym jest przeprowadzana o kilka rzędów wielkości szybciej. Innym przykładem może być sprawdzanie system plików skanowany węzeł. W wielu przypadkach nie da się tego zrobić zdalnie.

Korzyści ze skanowania na poziomie systemu operacyjnego polegają na bezpośrednim dostępie do możliwości niskiego poziomu systemu operacyjnego hosta, określonych usług i szczegółów konfiguracji. Podczas gdy skaner na poziomie sieci symuluje sytuację, w jakiej może znaleźć się atakujący z zewnątrz, skaner na poziomie systemu może spojrzeć na system z perspektywy użytkownika, który ma już dostęp do analizowanego systemu i ma w nim konto. Jest to najważniejsza różnica, ponieważ skaner sieciowy z definicji nie jest w stanie zapewnić skutecznej analizy możliwych zagrożeń związanych z działaniami użytkownika.

Wiele skanerów używa więcej niż jednej metody do testowania tej samej luki lub klasy luk. Jednakże w przypadku dużej liczby skanowań, użycie kilku metod w celu znalezienia jednej luki stwarza własne problemy. Wynika to z szybkości skanowania.

Nie wszystkie testy opracowane w warunkach laboratoryjnych działają tak, jak powinny. Mimo że kontrole te są testowane przed uwzględnieniem ich w ostatecznej wersji skanera. Niektóre czynniki mogą mieć na to wpływ:

Funkcje konfiguracji systemu użytkownika.

Sposób, w jaki został skompilowany analizowany demon lub usługa.

Błędy systemu zdalnego.

W takich przypadkach podczas automatycznego testowania może zostać przeoczona luka, którą można łatwo wykryć ręcznie i która może być rozpowszechniona w wielu systemach. Sprawdzenie nagłówka w połączeniu z aktywnym sondowaniem może w tym przypadku pomóc w zidentyfikowaniu podejrzanej sytuacji, usługi lub węzła. I choć podatność nie została odkryta, nie oznacza to, że ona nie istnieje.

Środki bezpieczeństwa podczas korzystania z protokołów TCP/IP

1 .Filtrowanie na routerze

Filtry na routerze łączącym sieć firmową z Internetem służą do zapobiegania przechodzeniu datagramów, które mogłyby zostać wykorzystane do ataku zarówno na sieć firmową z Internetu, jak i na sieci zewnętrzne przez osobę atakującą wewnątrz organizacji.

Należy zauważyć, że bezpieczniejszym i łatwiejszym w zarządzaniu rozwiązaniem niż filtrowanie określonego ruchu TCP przychodzącego z lub do komputera użytkownika jest praca użytkowników za pośrednictwem serwerów proxy. Serwer proxy przejmuje odpowiedzialność za zapewnienie użytkownikowi wymaganej usługi i sam komunikuje się z niezbędnymi hostami internetowymi. Host użytkownika współdziała tylko z serwerem proxy i nie musi być podłączony do Internetu. Zatem router filtrujący umożliwia przesyłanie określonych typów segmentów TCP tylko z lub do serwera proxy. Zalety tego rozwiązania są następujące:

  • Serwer proxy znajduje się pod kontrolą administratora przedsiębiorstwa, co pozwala na realizację różnych polityk w celu zróżnicowanej kontroli dostępu użytkowników do usług i zasobów internetowych, filtrowania przesyłanych danych (ochrona przed wirusami, cenzura itp.), buforowania (w stosownych przypadkach) .
  • Z perspektywy Internetu jeden serwer proxy działa w imieniu wszystkich hostów użytkowników w przedsiębiorstwie, co oznacza, że ​​istnieje tylko jeden potencjalny cel ataku z Internetu, a bezpieczeństwo jednego serwera proxy jest łatwiejsze do zapewnienia niż bezpieczeństwo wielu komputerów użytkowników .

2.Analiza ruch sieciowy

Analiza ruchu sieciowego przeprowadzana jest w celu wykrycia ataków przeprowadzanych przez osoby atakujące zlokalizowane zarówno w sieci organizacji, jak i w Internecie.

3.Ochrona routera

Środki ochrony routera mają na celu zapobieganie atakom mającym na celu zakłócenie schematu routingu datagramów lub przechwycenie routera przez osobę atakującą.

4. Ochrona hosta

Środki ochrony hosta mają na celu zapobieganie atakom mającym na celu przechwycenie danych, odmowę usługi lub przedostanie się osoby atakującej do systemu operacyjnego.

5. Skanowanie zapobiegawcze

Administrator sieci musi znać techniki i narzędzia atakującego oraz wykorzystywać je, a także przeprowadzać proaktywne skanowanie sieci organizacji w celu wykrycia słabych punktów bezpieczeństwa, zanim zrobi to atakujący. Dostępne jest także specjalne oprogramowanie służące do tego celu – skanery bezpieczeństwa.

Ogólne środki mające na celu poprawę bezpieczeństwa sieci

  1. Instalacja online poprawek do programów (Patching). Administratorzy systemu muszą chronić swoje najważniejsze systemy poprzez niezwłoczne łatanie na nich oprogramowania. Jednakże łatanie programów na wszystkich hostach w sieci jest trudne, ponieważ łatki mogą pojawiać się często. W takim przypadku konieczne jest wprowadzenie poprawek w programach na najważniejszych hostach.
    1. Wykrywanie wirusów i koni trojańskich.Aby uzyskać maksymalną skuteczność, należy je zainstalować na wszystkich komputerach w sieci. Instalowanie programów antywirusowych na wszystkich komputerach i regularne aktualizowanie znajdujących się na nich antywirusowych baz danych może zająć sporo czasu - ale w przeciwnym razie narzędzie to nie będzie skuteczne. Użytkowników należy nauczyć, jak samodzielnie dokonywać takich aktualizacji, ale nie powinni całkowicie na nich polegać. Oprócz tego, co zwykle program antywirusowy na każdym komputerze, do którego musimy skanować aplikacje e-maile NA serwer poczty elektronicznej. W ten sposób większość wirusów można wykryć, zanim dotrą do komputerów użytkowników.
    2. Zapory ognioweZapory ogniowe są najważniejszym sposobem ochrony sieci firmowej. Kontrolują ruch sieciowy przychodzący i wychodzący z sieci. Zapora sieciowa może blokować dostęp niektórych typów ruchu do sieci lub przeprowadzać określone kontrole innych typów ruchu. Dobrze skonfigurowana zapora sieciowa może powstrzymać większość znanych ataków komputerowych.
    3. Łamarki hasełHakerzy często wykorzystują mało znane luki w komputerach w celu kradzieży plików zawierających zaszyfrowane hasła. Następnie używają specjalnych programów do łamania haseł, które potrafią wykryć słabe hasła w zaszyfrowanych plikach. Chociaż narzędzie to jest wykorzystywane przez atakujących, przyda się również administratorom systemu, aby w odpowiednim czasie wykryć słabe hasła.
    4. Szyfrowanie. Atakujący często penetrują sieci, nasłuchując ruchu sieciowego we wrażliwych lokalizacjach i wydobywając z niego nazwy użytkowników i hasła. Dlatego połączenia z zdalne maszyny pliki chronione hasłem muszą być szyfrowane. Jest to szczególnie ważne w przypadkach, gdy połączenie odbywa się przez Internet lub z ważnym serwerem. Istnieje wiele komercyjnych i darmowe programy do szyfrowania ruchu TCP/IP (najbardziej znany jest SSH).
    5. Skanery podatności.Są to programy skanujące sieć w poszukiwaniu komputerów podatnych na określone typy ataków. Skanery dysponują dużą bazą danych zawierającą luki, z której korzystają podczas sprawdzania konkretnego komputera pod kątem luk.
    6. Właściwa konfiguracja komputerów pod kątem bezpieczeństwa.
    7. Narzędzia do wyszukiwania podłączonych modemów.Aby wyszukać podłączone modemy, atakujący mogą używać programów do wywoływania dużej liczby modemów numer telefonu. Ponieważ użytkownicy zazwyczaj sami konfigurują swoje komputery, często są one słabo chronione i dają atakującemu kolejną szansę na przeprowadzenie ataku w sieci. Administratorzy systemów powinni regularnie korzystać z programów sprawdzających numery telefonów swoich użytkowników i wykrywających tak skonfigurowane komputery.
    8. Porady dotyczące bezpieczeństwaPoradniki bezpieczeństwa to ostrzeżenia publikowane przez zespoły ds. przestępczości komputerowej i dostawców oprogramowania dotyczące nowo wykrytych luk w zabezpieczeniach. Poradniki zazwyczaj dotyczą najpoważniejszych zagrożeń stwarzanych przez te luki, dlatego można je szybko przeczytać, ale są bardzo przydatne. Opisują zagrożenie i dają dość szczegółowe porady dotyczące tego, co należy zrobić, aby wyeliminować lukę. Dwie najbardziej przydatne to rekomendacje opublikowane przez Zespół ds. Przestępczości Komputerowej CIAC i CERT
    9. Wykrywanie włamańSystemy wykrywania włamań szybko wykrywają ataki komputerowe. Można je zainstalować za zaporą sieciową, aby wykrywać ataki pochodzące z sieci. Można je też zainstalować przed zaporą sieciową, aby wykrywać ataki na zaporę. Narzędzia tego typu mogą mieć różnorodne możliwości.
    10. Narzędzia do wykrywania topologii sieci i skanery portów. Programy te pozwalają uzyskać pełny obraz struktury sieci i komputerów, które w niej pracują, a także zidentyfikować wszystkie usługi działające na każdym komputerze. Osoby atakujące wykorzystują te narzędzia do identyfikowania podatnych na ataki komputerów i znajdujących się na nich programów. Administratorzy systemów powinni używać tych narzędzi do monitorowania, które programy działają na poszczególnych komputerach w ich sieci. Za ich pomocą można wykryć niepoprawnie skonfigurowane programy na komputerach i zainstalować na nich poprawki.
    11. Instrukcje postępowania w sytuacjach krytycznych.W każdej sieci, niezależnie od tego, jak bezpieczna jest, wystąpią pewne zdarzenia związane z bezpieczeństwem (być może nawet fałszywe alarmy). Pracownicy organizacji muszą z wyprzedzeniem wiedzieć, co należy zrobić w konkretnym przypadku.
    12. Polityki bezpieczeństwa.Organizacje powinny napisać politykę bezpieczeństwa określającą oczekiwany poziom ochrony, która musi być konsekwentnie wdrażana. Najbardziej ważny aspekt zasadą jest opracowanie jednolitych wymagań dotyczących ruchu przepuszczanego przez zapory sieciowe. Polityka powinna również określać, w jaki sposób i jakie środki bezpieczeństwa (na przykład narzędzia do wykrywania ataków lub skanery podatności) powinny być stosowane w sieci. Aby osiągnąć jednolity poziom bezpieczeństwa, polityka powinna definiować standardowe bezpieczne konfiguracje dla różnych typów komputerów.
    13. Testowanie zapór sieciowych i serwerów WWW pod kątem odporności na próby ich blokowania.Ataki blokujące komputer są powszechne w Internecie. Atakujący nieustannie powodują awarię witryn WWW, przeciążanie komputerów lub zalewanie sieci bezsensownymi pakietami. Sieci dbające o bezpieczeństwo mogą przeprowadzać ataki przeciwko sobie, aby określić, jakie szkody można im wyrządzić.

12.12.2005 Aleksiej Markow, Siergiej Mironow, Walentin Cirłow

Nowoczesne ramy regulacyjne, metodologiczne i instrumentalne służące identyfikacji niezadeklarowanych możliwości programów nie zapewniają skutecznie bezpieczeństwa zasobów oprogramowania. Problemem tym zajmują się laboratoria badawcze Ministerstwa Obrony, FSB i FSTEC Rosji, jednak większość luk jest wykrywana niezgodnie z dokumentami regulacyjnymi, a nawet wbrew nim. Co więcej, istnieje tendencja do zwiększania liczby luk w kodzie programu.

Dzisiejsze ramy regulacyjne, metodologiczne i instrumentalne służące identyfikacji niezadeklarowanych możliwości programów nie zapewniają skutecznie bezpieczeństwa zasobów oprogramowania. Problemem tym zajmują się laboratoria badawcze Ministerstwa Obrony Narodowej, FSB i FSTEC Rosji, jednak większość luk nie jest wykrywana zgodnie z dokumentami regulacyjnymi, a czasem nawet wbrew nim. Co więcej, istnieje tendencja do zwiększania liczby luk w kodzie programu.

Problemem ochrony programu zajmują się laboratoria badawcze Ministerstwa Obrony, FSB i FSTEC Rosji, które w swojej pracy opierają się na Dokumencie Wytycznym (RD) Państwowej Komisji Technicznej Rosji w sprawie kontroli niezadeklarowanych zdolności. Jednak doświadczenie autorów w identyfikacji ponad 20 zakładek i tysięcy błędów w kodzie pokazało, że większość z nich została znaleziona nie tylko niezgodnie ze wskazanym dokumentem, ale czasem nawet z nim. Istniejące ramy regulacyjne, metodologiczne i instrumentalne służące identyfikacji niezadeklarowanych możliwości oprogramowania nie pozwalają na skuteczne zapewnienie bezpieczeństwa programu.

Obiektywnymi przyczynami pojawiania się luk w oprogramowaniu są niezwykle duża złożoność strukturalna kodu programu, dynamiczny rozwój wersji i łatwość modyfikacji kodu. Do tego można dodać problem wiarygodnej identyfikacji celowo stworzonych zakładek oprogramowania, niedoskonałość bazy regulacyjnej i metodologicznej oraz opóźnienie w bazie instrumentalnej do testów certyfikacyjnych. Na przykład, w przeciwieństwie do narzędzi kontroli antywirusowej, nie ma środków gwarantujących wykrycie zakładek oprogramowania w oprogramowaniu o złożonej strukturalnie. Pół wieku badań teoretycznych nie zapewniło opracowania matematycznego aparatu do oceny stopnia bezpieczeństwa oprogramowania, opartego na testach certyfikacyjnych potwierdzających brak zakładek oprogramowania. Dlatego jakość rozwoju oprogramowania krajowego w instytucje rządowe, a także poziom zaufania do produktów zagranicznych.

Podstawą teorii bezpieczeństwa informacji są pojęcia zagrożenia (obecność podatności) i ryzyka (możliwość realizacji zagrożenia). Luka w kodzie oprogramowania to wada implementacyjna oprogramowania, która potencjalnie zmniejsza jego bezpieczeństwo. Istotne cechy klasyfikacyjne podatności w kodzie: celowość wprowadzenia podatności w kodzie (błąd logiczny w kodowaniu, błąd oprogramowania), poziom podatności i funkcjonowanie (w kodzie źródłowym i wykonywalnym, w środowisku), podsystem bezpieczeństwa zagrożony przez podatność (hasło, szyfrowanie, itp.).

Testy certyfikacyjne

Ograniczenia dokumentu zawierającego wytyczne

Dokument zawierający wytyczne dotyczące niezadeklarowanych zdolności powstał w latach 90. XX w. w celu rozwiązania problemu kontroli nad zagranicznymi produktami dostarczanymi do Rosji i wówczas niewątpliwie bardzo ważne. Metody określone w RD wywodzą się z teorii niezawodności programu, dlatego też kwestie ochrony samego kodu nie są w dokumencie jasno odzwierciedlone. Zgodnie z RD głównymi rodzajami kontroli, które powinny przeprowadzać laboratoria badawcze, są statyczna i dynamiczna analiza strukturalna tekstów źródłowych (struktura programu, tworzenie i przejście wszystkich jego ścieżek).

Do zalet dokumentu zalicza się wymóg udostępnienia kodu źródłowego i dokumentacji, kontrolę nad redundancją (która pozwala na wykluczenie niektórych elementów osadzonych) oraz obecność definicji pełnego testowania trasy. To ostatnie, przy odpowiednim monitorowaniu i audycie pracy, pozwala zidentyfikować większość podatności w prostych programach, jednak w przypadku programów złożonych jest to bardzo problematyczne. Wymieńmy najpoważniejsze wady RD.

Najbardziej niebezpiecznymi produktami pozostają te, które zostały certyfikowane na trzeci lub czwarty poziom kontroli. Poziom czwarty sprowadza się do sprawdzenia możliwości kompilacji i montażu Produkt oprogramowania, a także brak zbędnych plików w jego dystrybucji. Stwarza to iluzję sprawdzenia programu zgodnie z wymogami bezpieczeństwa. Na trzecim poziomie podejście do identyfikacji niezadeklarowanych zdolności jest niezwykle długim badaniem struktury programu, które nie obejmuje analizy funkcji, procedur i metod pod kątem oznak zakładek programu i błędów kodowania kodu.

Instrumentalna baza testowa

Aby uzyskać certyfikat akredytacji FSTEC w zakresie identyfikacji zdolności niezadeklarowanych, laboratorium badawcze musi posiadać certyfikowane przyrządy („AIST”, EMU). Pojawiają się tutaj dwa pytania.

Po pierwsze, czy wskazane jest wprowadzenie obowiązku stosowania narzędzi, które opierają się na niedoskonałych ramach regulacyjnych i nie pozwalają na skuteczną identyfikację luk w kodzie? Przykładowo przeprowadzone przez nas badania (w eksperymencie wzięło udział kilkudziesięciu ekspertów) program testowy, który zawierał 28 prostych zakładek, pokazał, że przy użyciu wskazanych środków nie udało się zidentyfikować ani jednej z nich.

Po drugie, czy certyfikacja takich produktów powinna być obowiązkowa? Ze względu na długi proces certyfikacji narzędzia do testowania podatności nigdy nie mogą zagwarantować wyniku „od kuli do pancerza”. Oczywiste jest, że narzędzia te nie pozwalają na szybkie uwzględnienie wskaźników luk w nowoczesnym kodzie w zmieniającym się środowisku bezpieczeństwa i w nowych środowiskach programistycznych.

Przykładowo do analizy kodu w języku C polecany jest program „AIST-S” (niekwestionowany „autorytet” w dziedzinie analizy kodu pod kątem obecności niezadeklarowanych możliwości). Jednak mimo oczywistych zalet stwierdzono, że nie przetwarza poprawnie struktur programów obiektowych, np. nie analizuje konstruktora i destruktora. Teksty źródłowe zawarte w dyrektywach #include również nie są analizowane - sprawdzany jest jedynie tekst źródłowy programu. Ponadto normalna praca analizatora jest możliwa tylko wtedy, gdy objętość tekstów źródłowych nie przekracza kilku megabajtów: diagramy blokowe programów są budowane niepoprawnie nawet dla programów większych niż kilka kilobajtów. Te same ograniczenia dotyczą budowy matrycy połączeń w oparciu o informacje, a raporty nie w pełni odpowiadają wymaganiom RD w zakresie zdolności niezadeklarowanych. Jednak głównym opóźnieniem w stosunku do ówczesnych realiów jest to, że narzędzie to w ogóle nie posiada bazy sygnatur i może analizować jedynie programy w języku C/C++.

Problemy organizacyjne certyfikacji

Zasadniczą wadą przyjętej procedury certyfikacji jest brak uwzględnienia polityki bezpieczeństwa korzystania z oprogramowania w ramach obiektu informatyzacji. Poza tym pojawia się szereg pytań.

Metody identyfikacji podatności

Obecnie stosuje się dwa główne podejścia do identyfikowania luk w kodzie. Po pierwsze, jest to strukturalna statyczna i dynamiczna analiza kodu źródłowego, regulowana przez RD. Po drugie, analiza sygnaturowo-heurystyczna potencjalnie niebezpiecznych operacji, która polega na skanowaniu kodu programu pod kątem obecności takich operacji i późniejszej ręcznej lub automatycznej analizie fragmentu kodu w celu zidentyfikowania realnego zagrożenia dla oprogramowania.

Oczywiście drugie podejście nie ma wad w postaci nadmiernego strukturyzacji całego oprogramowania i „przekleństwa wymiarowości” testów pełnościeżkowych. Ponieważ liczba potencjalnie niebezpiecznych operacji z reguły nie przekracza 5-10% objętości oprogramowania, czas „ręcznej” analizy tekstu źródłowego zmniejsza się dziesięć do dwudziestu razy. W odniesieniu do analizy statycznej i dynamicznej należy podkreślić, że wyniki analizy statycznej są porównywalne z tekstami źródłowymi pod względem złożoności interpretacji, a analiza dynamiczna wymaga dodatkowo opracowania i wdrożenia odpowiednich badań trasy. W ten sposób analiza heurystyczna sygnatur skraca czas spędzony na poszukiwaniu niezadeklarowanych możliwości dziesiątki razy. Z naszego doświadczenia wynika, że ​​większość luk w kodzie zidentyfikowanych podczas testów certyfikacyjnych została odkryta przy użyciu drugiego podejścia.

Zgromadzone doświadczenie w testach certyfikacyjnych pod kątem braku niezadeklarowanych możliwości i wad oprogramowania pozwala nam nakreślić sposoby ulepszenia ram regulacyjnych w oparciu o wykorzystanie sygnaturowych metod analizy kodu.

Rozwój ram regulacyjnych jest możliwy poprzez zastosowanie nowych standardów i dokumentów zawierających wytyczne w ramach „Kryteriów Ogólnych”.

Literatura

  1. Dokument przewodni. Ochrona przed nieuprawnionym dostępem do informacji. Część 1. Oprogramowanie zabezpieczające informacje. Klasyfikacja według poziomu kontroli braku niezadeklarowanych zdolności. M.: Państwowa Komisja Techniczna Rosji, 1998.
  2. Kalaida I.A. Niezadeklarowane możliwości oprogramowania zabezpieczającego informacje. Informacje o Jetie, 2000, nr 8.
  3. Markov A.S., Szczerbina S.A. Testowanie i monitorowanie zasobów oprogramowania. Bezpieczeństwo Informacji, 2003, nr 6.
  4. Dustin E., Reschke D., Paul D. Zautomatyzowane testowanie oprogramowania: wdrażanie, zarządzanie, działanie. M.: Lori, 2003.
  5. GOST R ISO/IEC 15408-2002. Technologia informacyjna. Metody i środki zapewnienia bezpieczeństwa. Kryteria oceny bezpieczeństwa technologii informatycznych. Części 1, 2, 3. M.: IPK „Wydawnictwo Standard”, 2002.
  6. Wytyczne metodyczne oceny jakości funkcjonowania systemów informatycznych. M.: Wydawnictwo 3 Centralny Instytut Badawczy Ministerstwa Obrony Federacji Rosyjskiej, 2003.
  7. GOST RV 51719-2001. Testowanie produktów oprogramowania. M.: IPK „Standardy Wydawnicze”, 2001.
  8. Dokument przewodni. Bezpieczeństwo technologii informatycznych. Kryteria oceny bezpieczeństwa technologii informatycznych. Części 1, 2, 3. - M.: Państwowa Komisja Techniczna Rosji, 2002.
  9. Ukryte kanały, // Informacje o Jetie, 2002, nr 11.
  10. Hogland G., McGraw G. Oprogramowanie hakerskie: analiza i wykorzystanie kodu. M.: Williams, 2005.

Aleksiej Markow ([e-mail chroniony] , [e-mail chroniony] ), Siergiej Mironow, Walentin Cirłow - pracownicy Centrum Testowego Przedsiębiorstwa Badawczo-Produkcyjnego „BIT” (Moskwa).

Przykłady zidentyfikowanych zakładek oprogramowania

Oczywiście identyfikacja takich zakładek metodami analizy strukturalnej jest trudna, ponieważ kod nie ma jasno określonych cech strukturalnych. Zakładki są jednak wykrywane przy użyciu metod analizy sygnatur (na przykład podczas identyfikacji znaczących stałych).



luki, jakie może uzyskać atakujący nieautoryzowany dostęp do systemu informatycznego poprzez złamanie hasła przy użyciu metody brute-force lub wyszukiwania słownikowego;
  • obecność w systemie odblokowanych wbudowanych kont użytkowników, za pomocą których potencjalny sprawca może zbierać dane Dodatkowe informacje konieczne do przeprowadzenia ataku. Przykładami takich kont jest wpis „ Gość„w systemach operacyjnych lub nagraniu” Anonimowy" na serwerach FTP;
  • w niewłaściwy sposób ustalone prawa Dostęp użytkownika do zasobów informacyjnych IS. Jeżeli w wyniku błędu administratora użytkownicy pracujący z systemem posiadają więcej uprawnień dostępu, niż jest to konieczne do wykonywania ich obowiązków funkcjonalnych, może to prowadzić do nieuprawnionego wykorzystania dodatkowych uprawnień do przeprowadzania ataków. Przykładowo, jeśli użytkownicy mają uprawnienia do odczytu treści tekstów źródłowych skryptów serwerowych wykonywanych po stronie serwera WWW, to potencjalny intruz może to wykorzystać do zbadania algorytmów działania mechanizmów bezpieczeństwa aplikacji WWW i wyszukania w nich luki;
  • obecność w IS niewykorzystanych, ale potencjalnie niebezpiecznych usługi sieciowe I komponenty oprogramowania. Na przykład większość usług serwerów sieciowych, takich jak serwery sieci Web i serwery baz danych, jest dostarczana z przykładowymi programami demonstrującymi funkcjonalność te produkty. W niektórych przypadkach programy te mają wysoki poziom poziom przywilejów w systemie lub zawierają luki, których wykorzystanie przez osobę atakującą może doprowadzić do uszkodzenia systemu. Przykładami takich programów są próbki Grafika komputerowa-moduły dostarczane z aplikacjami internetowymi, a także przykłady procedury składowane w serwerach DBMS.
  • Metody identyfikacji i eliminacji podatności

    W celu wykrycia podatności w systemie informatycznym przeprowadzana jest procedura audytu. bezpieczeństwo informacji, który składa się z dwóch etapów – analizy aktualnego poziomu bezpieczeństwa IP oraz opracowania propozycji eliminacji zidentyfikowanych podatności. Audyt składa się z zestawu kontroli, z których część ma na celu wykrycie i wyeliminowanie luk opisanych powyżej. Przyjrzyjmy się różnym metodom, które można zastosować do wykrywania słabe punkty w oprogramowaniu IS.

    Identyfikacja luk w zabezpieczeniach, takich jak „przepełnienie bufora”, „wstrzyknięcie SQL” i „ciąg formatu”, jest możliwa albo poprzez analizę kodu źródłowego potencjalnie podatnego na ataki programu, albo poprzez wykorzystanie zachowania analizy bezpieczeństwa już działającego programu. Pierwsza metoda polega na eksperckiej analizie kodu źródłowego programu w celu znalezienia i skorygowania błędów, które powstały podczas jego tworzenia. W większości przypadków w celu wyeliminowania zidentyfikowanych podatności konieczne jest dodanie nowych funkcji zapewniających poprawność danych wejściowych wprowadzanych do programu. Na przykład, aby naprawić luki w zabezpieczeniach związane z przepełnieniem bufora, należy dodać procedurę sprawdzającą, która powinna zapewnić, że ilość danych wejściowych nie przekracza maksymalnego rozmiaru zmiennej, dla której są przeznaczone. Naprawa podatności „SQL Injection" możliwa jest poprzez zabezpieczenie przed wstawieniem znaku """, co w większości przypadków pozwala na modyfikację oryginalnego zapytania SQL. Aby wyeliminować podatności typu "format string" należy zastosować format wywołania funkcji, w którym ciąg formatujący jest wyraźnie określony przez twórcę programu. Z reguły metoda analizy tekstu źródłowego jest bardzo pracochłonna i jest stosowana tylko w firmach tworzących oprogramowanie.

    Druga metoda identyfikacji podatności wykorzystywana jest do analizy bezpieczeństwa oprogramowania już zainstalowanego i funkcjonującego w systemie IS. Metoda polega na zastosowaniu specjalistycznych oprogramowanie- tak zwane skanery bezpieczeństwa lub systemy analizy bezpieczeństwa. Narzędzia te umożliwiają wykrywanie podatności w oparciu o metody aktywne i pasywne. Metodą pasywną zbierane są informacje o ustawieniach oprogramowania znajdującego się w IS i na ich podstawie wyciągany jest wniosek o obecności lub braku podatności w systemie. Na przykład, jeśli obecność systemu operacyjnego bez zainstalowany moduł Service Pack, oznacza to, że jest podatny na szereg luk. Aktywne metody analizy bezpieczeństwa aplikacji symulują ataki informacyjne a następnie na podstawie analizy wyników wyciąga się wniosek o obecności podatności w systemie. Łączne zastosowanie pasywnych i aktywnych metod analizy bezpieczeństwa aplikacji IS pozwala zidentyfikować nie tylko podatności na „przepełnienie bufora”, „wstrzyknięcie SQL” i „ciąg formatujący”, ale także podatności operacyjne konfiguracji oprogramowania. W takim przypadku wyeliminowanie luki możliwe jest poprzez zainstalowanie odpowiednich modułów aktualizacyjnych ( pakiety usług, poprawki, łaty itp.) lub zmianę ustawień używanego oprogramowania. Rozważane metody aktywne i pasywne najczęściej wykorzystywane są do analizy bezpieczeństwa oprogramowania, w oparciu o które działają systemy informacyjne organizacji.

    Co to jest atak informacyjny?

    Zanim zaczniemy mówić o sposobach identyfikacji ataki informacyjne, ustalmy, co stanowi inwazję intruza. Zatem atak to zespół działań atakującego, do których prowadzi naruszenie bezpieczeństwa informacji JEST. W wyniku skutecznie przeprowadzonego ataku osoba atakująca może np. uzyskać nieuprawniony dostęp do informacji przechowywanych w systemie informatycznym, zakłócić funkcjonalność systemu, czy też zniekształcić zawartość danych systemu informatycznego. Potencjalnymi celami ataku mogą być serwery, stacje robocze użytkowników lub sprzęt komunikacyjny JEST. Ogólnie każdy atak można podzielić na cztery etapy (ryc. 23.5):

    1. etap rozpoznawczy. Na tym etapie sprawca stara się uzyskać jak najwięcej więcej informacji o przedmiocie ataku, na podstawie którego planowane są dalsze etapy ataku. Przykładami takich danych są: rodzaj i wersja systemu operacyjnego zainstalowanego na hostach IS, lista użytkowników zarejestrowanych w systemie, informacje o używanym oprogramowaniu aplikacyjnym itp.;
    2. Etap inwazji IP. Na tym etapie atakujący uzyskuje nieautoryzowany dostęp do zasobów atakowanych hostów;
    3. etap ataku na adres IP. Ten etap ataku ma na celu osiągnięcie przez intruza celów, dla których atak został podjęty. Przykładami takich działań może być zakłócenie funkcjonalności adresu IP, kradzież poufna informacja zapisane w systemie, usunięcie lub modyfikacja danych systemowych itp. W tym przypadku atakujący może także dokonać działań, które mogą mieć na celu usunięcie śladów jego obecności w systemie informatycznym;
    4. etap dalszego rozwoju ataku. Na tym etapie wykonywane są czynności niezbędne do kontynuowania ataku na inne obiekty IP.


    Ryż. 23,5.

    Spójrzmy na konkretne przykłady jak można realizować różne etapy atak informacyjny. Na etapie rozpoznania działania sprawcy mogą mieć na celu uzyskanie następujących informacji:

    • informacje o strukturze i topologii układu scalonego. Aby uzyskać tego typu informacje, osoba atakująca może użyć standardowych narzędzi, takich jak „ Trasa", zawarty w prawie każdym systemie operacyjnym (OS). Te narzędzia pozwalają wygenerować listę adresów IP routery, przez który pakiety przechodzą z komputera intruza do hosta będącego celem ataku. Osoba atakująca może również uzyskać potrzebne informacje na temat struktury adresu IP, kontaktując się DNS- serwer, na którym mogą być przechowywane dane o hostach IS;
    • informacje o typie systemu operacyjnego zainstalowanego w IS. Jedna z najczęstszych metod określania typu systemu operacyjnego opiera się na fakcie, że różne systemy w różny sposób realizują wymagania norm. RFC, które definiują zasady interakcji w oparciu o różne protokoły sieciowe. Tym samym, generując te same żądania sieciowe, różne systemy operacyjne odpowiadają różniącymi się od siebie danymi, na podstawie których z dużym prawdopodobieństwem można określić charakterystykę wykorzystywanego systemu operacyjnego. Ta metoda pozwala także określić rodzaj platformy sprzętowej, na której działa dany system operacyjny;
    • informacje o rodzaju usług aplikacyjnych obecnych w IS. Sprawca może określić które

    W ta sekcja opisuje proponowaną metodę wykrywania podatności aplikacji webowych w oparciu o monitorowanie zachowania aplikacji webowej.

    Zastosowanie metody

    Jak zauważono we wstępie, istniejące narzędzia do wykrywania podatności wykorzystują metody białej i czarnej skrzynki. W pierwszym przypadku przeprowadzana jest analiza kody źródłowe I / lub pliki konfiguracyjne aplikacji internetowej. Zidentyfikowano sekcje kodu, które potencjalnie zawierają luki lub niebezpieczne ustawienia konfiguracyjne. W drugim przypadku poszukiwanie podatności odbywa się „z zewnątrz” – do aplikacji internetowej wysyłane są żądania HTTP, a odpowiedzi są analizowane. W tym przypadku powstają zadania identyfikacji struktury aplikacji internetowej, określenia rodzaju serwera i budynku zestaw testowyŻądania HTTP i późniejsza analiza odpowiedzi HTTP. Narzędzia te nie kontrolują jednak zachowania aplikacji internetowej w sensie zdefiniowanym w Rozdziale 3, natomiast niewykryte luki mogą objawiać się właśnie w dostępie do obiektów otoczenia. Proponowana metoda wykrywania podatności polega na porównaniu przychodzącego ruchu HTTP z wewnętrznym działaniem aplikacji internetowej. Metoda ma na celu wykrycie podatności, które prowadzą do działań aplikacji webowych na obiektach środowiska, które są nieakceptowalne z punktu widzenia normalnego profilu zachowania i/lub zmian wartości dopuszczalnych operacji.

    Metoda ma na celu wykrycie luk w dowolnej liczbie aplikacji internetowych. Zakłada się, że kontrola zachowania zostanie wdrożona dla wszystkich aplikacji internetowych, do których można uzyskać dostęp do informacji o zachowaniu narzędzie, wdrażając metodę. Dla każdej aplikacji internetowej tworzony jest profil normalnego zachowania. Bieżące zachowanie jest porównywane z opisanym w normalnym profilu zachowania, a w przypadku odchylenia rejestrowana jest anomalia i zakładana jest podatność. Celem jest przechowywanie profili normalnego zachowania w postaci plików lub wpisów w bazie danych dzielenie się profile za pomocą kilku narzędzi do wykrywania podatności w oparciu o wspólną metodę. Ten schemat przechowywania profili umożliwia również równoległe procesy konstruowania profili normalnego zachowania i wykrywania podatności na podstawie wygenerowanych profili.