Luka w zabezpieczeniach (informatyka) — Vulnerability (computing)

W bezpieczeństwa komputerowego , o wrażliwość to słabość, która może być wykorzystana przez aktora zagrożeń , takich jak atakujący, aby przekraczać granice uprawnień (tj wykonywać nieautoryzowane działania) w ramach systemu komputerowego. Aby wykorzystać lukę w zabezpieczeniach, osoba atakująca musi dysponować co najmniej jednym odpowiednim narzędziem lub techniką, która może połączyć ze słabością systemu. W tej ramce luki są również nazywane powierzchnią ataku .

Zarządzanie podatnościami to cykliczna praktyka, która różni się teoretycznie, ale zawiera wspólne procesy, które obejmują: wykrywanie wszystkich zasobów, ustalanie priorytetów zasobów, ocenę lub wykonanie pełnego skanowania podatności, raportowanie wyników, usuwanie luk w zabezpieczeniach, weryfikację działań naprawczych - powtórz. Ta praktyka ogólnie odnosi się do luk w oprogramowaniu w systemach komputerowych. Zwinne zarządzanie podatnościami odnosi się do zapobiegania atakom poprzez jak najszybsze zidentyfikowanie wszystkich podatności.

Zagrożenie bezpieczeństwa jest często błędnie klasyfikowane jako luka w zabezpieczeniach. Wykorzystanie podatności w tym samym znaczeniu ryzyka może prowadzić do nieporozumień. Ryzyko to potencjalny znaczący wpływ wynikający z wykorzystania podatności. Następnie istnieją luki bez ryzyka: na przykład, gdy dany zasób nie ma wartości. Luka z jednym lub większą liczbą znanych przypadków pracy i w pełni realizowane napadów sklasyfikowany jako użytecznym podatności-luki dla których wykorzystać istnieje. Okno podatności to czas od momentu wprowadzenia lub ujawnienia się luki w zabezpieczeniach we wdrożonym oprogramowaniu do momentu usunięcia dostępu, udostępnienia/wdrożenia poprawki zabezpieczeń lub wyłączenia atakującego — patrz atak typu zero-day .

Błąd bezpieczeństwa ( wada bezpieczeństwa ) to węższe pojęcie. Istnieją luki, które nie są związane z oprogramowaniem: luki w zabezpieczeniach sprzętu , witryny i personelu to przykłady luk, które nie są błędami bezpieczeństwa oprogramowania.

Konstrukcje w językach programowania, które są trudne w użyciu, mogą wykazywać dużą liczbę luk w zabezpieczeniach.

Definicje

ISO 27005 definiuje podatność jako:

słabość zasobu lub grupy aktywów, która może zostać wykorzystana przez jedno lub więcej zagrożeń, gdzie zasób to wszystko, co ma wartość dla organizacji, jej operacji biznesowych i ich ciągłości, w tym zasoby informacyjne, które wspierają misję organizacji

Luka IETF RFC 4949 jako:

Usterka lub słabość w projekcie, implementacji lub działaniu i zarządzaniu systemu, która może zostać wykorzystana do naruszenia polityki bezpieczeństwa systemu

Komisja krajowych systemów zabezpieczenia w Stanach Zjednoczonych Ameryki zdefiniowane lukę w CNSS Zarządzenie nr 4009 z dnia 26 kwietnia 2010 Narodowy Information Assurance Glossary :

Luka — słabość systemu informatycznego, procedur bezpieczeństwa systemu, kontroli wewnętrznych lub implementacji, która może zostać wykorzystana przez źródło zagrożenia.

Wiele publikacji NIST definiuje podatność w kontekście IT w różnych publikacjach: termin FISMApedia zawiera listę. Pomiędzy nimi SP 800-30 podaj szerszy:

Usterka lub słabość w procedurach bezpieczeństwa systemu, projektowaniu, implementacji lub wewnętrznych mechanizmach kontroli, które mogą być zastosowane (przypadkowo uruchomione lub celowo wykorzystane) i skutkować naruszeniem bezpieczeństwa lub naruszeniem polityki bezpieczeństwa systemu.

ENISA definiuje podatność jako:

Istnienie słabości, projektu lub błędu implementacji, które mogą prowadzić do nieoczekiwanego, niepożądanego zdarzenia [G.11] zagrażającego bezpieczeństwu systemu komputerowego, sieci, aplikacji lub zaangażowanego protokołu.(ITSEC)

The Open Group definiuje podatność w

Prawdopodobieństwo, że zdolność zagrożenia przewyższa zdolność do przeciwstawienia się zagrożeniu .

Analiza czynników ryzyka informacji (FAIR) definiuje podatność jako:

Prawdopodobieństwo, że zasób nie będzie w stanie oprzeć się działaniom agenta zagrożenia

Według FAIR podatność jest powiązana z Siłą Kontroli, czyli siłą kontroli w porównaniu do standardowej miary siły i Zdolności zagrożenia , czyli prawdopodobnym poziomem siły, jaką agent zagrożenia jest w stanie zastosować przeciwko zasobowi.

ISACA definiuje podatność w ramach analizy ryzyka jako:

Słabość w projektowaniu, wdrażaniu, działaniu lub kontroli wewnętrznej

Bezpieczeństwo danych i komputerów: Słownik pojęć i terminów standardów, autorzy Dennis Longley i Michael Shain, Stockton Press, ISBN  0-935859-17-9 , definiuje podatność jako:

1) W bezpieczeństwie komputerowym, słabość w zautomatyzowanych procedurach bezpieczeństwa systemów, kontrolach administracyjnych, kontrolach Internetu itp., która może zostać wykorzystana przez zagrożenie uzyskania nieautoryzowanego dostępu do informacji lub zakłócenia krytycznego przetwarzania. 2) W bezpieczeństwie komputerowym, słabość w fizycznym układzie, organizacji, procedurach, personelu, zarządzaniu, administracji, sprzęcie lub oprogramowaniu, która może zostać wykorzystana do wyrządzenia szkody systemowi lub działalności ADP. 3) W bezpieczeństwie komputerowym wszelkie słabości lub wady istniejące w systemie. Atak lub szkodliwe zdarzenie albo możliwość, do której agent zagrożenia ma dostęp do przeprowadzenia tego ataku.

Matt Bishop i Dave Bailey podają następującą definicję luki w zabezpieczeniach komputera :

System komputerowy składa się ze stanów opisujących aktualną konfigurację podmiotów tworzących system komputerowy. System wykonuje obliczenia poprzez zastosowanie przejść stanów, które zmieniają stan systemu. Wszystkie stany osiągalne z danego stanu początkowego przy użyciu zestawu przejść stanów należą do klasy autoryzowanych lub nieautoryzowanych, zgodnie z definicją polityki bezpieczeństwa. W niniejszym artykule definicje tych klas i przejść uważane są za aksjomatyczne. Stan podatny to stan autoryzowany, z którego można uzyskać dostęp do nieautoryzowanego stanu za pomocą autoryzowanych przejść między stanami. Stan skompromitowany to stan tak osiągnięty. Atak to sekwencja autoryzowanych przejść między stanami, które kończą się stanem skompromitowanym. Z definicji atak rozpoczyna się w stanie podatnym na ataki. Podatność to charakterystyka podatnego stanu, która odróżnia go od wszystkich stanów bez podatności. Jeśli jest ogólna, podatność może charakteryzować wiele podatnych stanów; jeśli jest konkretny, może charakteryzować tylko jeden...

Narodowe Centrum Szkoleniowo-Edukacyjne Zapewniania Informacji określa podatność :

Słabość w zautomatyzowanych procedurach bezpieczeństwa systemu, kontrolach administracyjnych, kontrolach wewnętrznych itd., która może zostać wykorzystana przez zagrożenie uzyskania nieautoryzowanego dostępu do informacji lub zakłócenia krytycznego przetwarzania. 2. Słabość procedur bezpieczeństwa systemu, konstrukcji sprzętu, kontroli wewnętrznych itp., która może zostać wykorzystana do uzyskania nieautoryzowanego dostępu do informacji niejawnych lub wrażliwych. 3. Słabość w fizycznym układzie, organizacji, procedurach, personelu, zarządzaniu, administracji, sprzęcie lub oprogramowaniu, które mogą zostać wykorzystane do wyrządzenia szkody systemowi lub działalności ADP. Obecność luki sama w sobie nie powoduje szkody; podatność jest jedynie warunkiem lub zestawem warunków, które mogą pozwolić na uszkodzenie systemu ADP lub działania w wyniku ataku. 4. Twierdzenie dotyczące przede wszystkim podmiotów środowiska wewnętrznego (aktywów); mówimy, że składnik aktywów (lub klasa aktywów) jest wrażliwy (w pewien sposób, prawdopodobnie z udziałem agenta lub zbioru agentów); piszemy: V(i,e) gdzie: e może być zbiorem pustym. 5. Podatność na różne zagrożenia. 6. Zbiór właściwości określonej jednostki wewnętrznej, który w połączeniu ze zbiorem właściwości określonej jednostki zewnętrznej implikuje ryzyko. 7. Cechy systemu, które powodują jego zdecydowaną degradację (niezdolność do wykonywania wyznaczonej misji) w wyniku poddania go pewnym skutkom w nienaturalnym (wytworzonym przez człowieka) środowisku nieprzyjaznym.

Modele podatności i czynników ryzyka

Zasób (fizyczny lub logiczny) może zawierać co najmniej jedną lukę, którą może wykorzystać podmiot atakujący. Rezultat może potencjalnie zagrozić poufności , integralności lub dostępności zasobów (niekoniecznie tych wrażliwych) należących do organizacji i/lub innych zaangażowanych stron (klientów, dostawców). Tak zwana triada CIA jest kamieniem węgielnym bezpieczeństwa informacji .

Atak może być aktywny, gdy próbuje zmienić zasoby systemowe lub wpłynąć na ich działanie, naruszając integralność lub dostępność. „ Atak pasywny ” próbuje nauczyć się lub wykorzystać informacje z systemu, ale nie wpływa na zasoby systemu, naruszając poufność.

OWASP: związek między agentem zagrożeń a wpływem na biznes

OWASP (patrz rysunek) przedstawia to samo zjawisko w nieco innych terminach: agent zagrożenia poprzez wektor ataku wykorzystuje słabość (podatność) systemu i powiązane kontrole bezpieczeństwa, powodując techniczny wpływ na zasób IT (zasób) podłączony do wpływ na biznes.

Ogólny obraz przedstawia czynniki ryzyka scenariusza ryzyka.

System zarządzania bezpieczeństwem informacji

Opracowano zestaw polityk dotyczących Systemu Zarządzania Bezpieczeństwem Informacji (SZBI) w celu zarządzania, zgodnie z Zasadami Zarządzania Ryzykiem , środkami zaradczymi zapewniającymi opracowanie strategii bezpieczeństwa zgodnie z zasadami i przepisami obowiązującymi w danej organizacji. Te środki zaradcze są również nazywane kontrolami bezpieczeństwa , ale gdy są stosowane do przesyłania informacji, nazywane są usługami bezpieczeństwa .

Klasyfikacja

Podatności są klasyfikowane według klasy aktywów, z którą są powiązane:

  • sprzęt komputerowy
    • podatność na wilgoć i kurz
    • podatność na niezabezpieczone przechowywanie
    • zużycie ze względu na wiek, które powoduje awarię
    • przegrzanie
  • oprogramowanie
    • niewystarczające testy
    • niezabezpieczone kodowanie
    • brak ścieżki audytu
    • wada projektu
  • sieć
  • personel
  • strona fizyczna
    • obszar objęty klęskami żywiołowymi (np. powódź, trzęsienie ziemi)
    • przerwa w zasilaniu
  • organizacyjny
    • brak regularnych audytów
    • brak planów ciągłości
    • brak zabezpieczeń

Powoduje

  • Złożoność: Duże, złożone systemy zwiększają prawdopodobieństwo usterek i niezamierzonych punktów dostępu .
  • Znajomość: Używanie wspólnego, dobrze znanego kodu, oprogramowania, systemów operacyjnych i/lub sprzętu zwiększa prawdopodobieństwo, że atakujący ma lub może znaleźć wiedzę i narzędzia do wykorzystania luki.
  • Łączność: Więcej fizycznych połączeń, uprawnień, portów, protokołów i usług oraz czas, w którym każdy z nich jest dostępny, zwiększa podatność na zagrożenia.
  • Wady zarządzania hasłami: Użytkownik komputera używa słabych haseł, które mogą zostać wykryte przez brutalną siłę. Użytkownik komputera przechowuje hasło na komputerze, z którego program może uzyskać do niego dostęp. Użytkownicy ponownie używają haseł między wieloma programami i witrynami.
  • Podstawowe wady projektowe systemu operacyjnego : Projektant systemu operacyjnego decyduje się na egzekwowanie nieoptymalnych zasad dotyczących zarządzania użytkownikami/programami. Na przykład systemy operacyjne z zasadami, takimi jak domyślne zezwolenie, zapewniają każdemu programowi i każdemu użytkownikowi pełny dostęp do całego komputera. Ta usterka systemu operacyjnego umożliwia wirusom i złośliwemu oprogramowaniu wykonywanie poleceń w imieniu administratora.
  • Przeglądanie witryn internetowych: Niektóre witryny internetowe mogą zawierać szkodliwe oprogramowanie szpiegujące lub adware, które mogą być automatycznie instalowane w systemach komputerowych. Po odwiedzeniu tych witryn systemy komputerowe zostają zainfekowane, a dane osobowe będą gromadzone i przekazywane osobom trzecim.
  • Błędy oprogramowania : programista pozostawia w programie błąd, który można wykorzystać. Błąd oprogramowania może umożliwić osobie atakującej niewłaściwe użycie aplikacji.
  • Niezaznaczone dane wejściowe użytkownika : program zakłada, że ​​wszystkie dane wejściowe użytkownika są bezpieczne. Programy, które nie sprawdzają danych wejściowych użytkownika, mogą pozwolić na niezamierzone bezpośrednie wykonanie poleceń lub instrukcji SQL (znane jako przepełnienia bufora , wstrzykiwanie SQL lub inne niesprawdzone dane wejściowe).
  • Nieuczenie się na błędach z przeszłości: na przykład większość luk wykrytych w oprogramowaniu protokołu IPv4 została wykryta w nowych implementacjach IPv6 .

Badania wykazały, że najbardziej wrażliwym punktem w większości systemów informatycznych jest użytkownik, operator, projektant lub inny człowiek: dlatego ludzi należy traktować w różnych rolach jako aktywa, zagrożenie, zasoby informacyjne. Inżynieria społeczna jest coraz większym problemem w zakresie bezpieczeństwa.

Konsekwencje

Wpływ naruszenia bezpieczeństwa może być bardzo duży. W większości przepisów nieumiejętność menedżerów IT w usuwaniu luk w zabezpieczeniach systemów IT i aplikacji, jeśli są one im znane, uważa się za wykroczenie; Menedżerowie IT są odpowiedzialni za zarządzanie ryzykiem IT . Prawo prywatności zmusza menedżerów do działania w celu zmniejszenia wpływu lub prawdopodobieństwa tego zagrożenia bezpieczeństwa. Audyt bezpieczeństwa technologii informatycznych jest sposobem na umożliwienie innym niezależnym osobom poświadczenia, że ​​środowisko IT jest zarządzane właściwie i zmniejszenie odpowiedzialności, przynajmniej po wykazaniu się dobrą wiarą. Test penetracyjny jest formą weryfikacji słabości i środków zaradczych przyjętych przez organizację: haker White hat próbuje zaatakować zasoby informatyczne organizacji, aby dowiedzieć się, jak łatwo lub trudno jest naruszyć bezpieczeństwo IT. Właściwym sposobem profesjonalnego zarządzania ryzykiem informatycznym jest przyjęcie Systemu Zarządzania Bezpieczeństwem Informacji, takiego jak ISO/IEC 27002 lub IT Ryzyka i przestrzeganie ich, zgodnie ze strategią bezpieczeństwa określoną przez wyższe kierownictwo.

Jedną z kluczowych koncepcji bezpieczeństwa informacji jest zasada obrony w głąb , czyli stworzenie wielowarstwowego systemu obronnego, który może:

  • zapobiec nadużyciom
  • wykryć i przechwycić atak
  • znajdź agentów zagrożenia i ścigaj ich

System wykrywania włamań jest przykładem klasy systemów wykorzystywanych do wykrywania ataków .

Bezpieczeństwo fizyczne to zestaw środków służących do fizycznej ochrony zasobu informacyjnego: jeśli ktoś może uzyskać fizyczny dostęp do zasobu informacyjnego, powszechnie przyjmuje się, że atakujący może uzyskać dostęp do wszelkich informacji na nim zawartych lub uczynić zasób niedostępnym dla uprawnionych użytkowników.

Opracowano zestaw kryteriów, które komputer, jego system operacyjny i aplikacje muszą spełniać, aby zapewnić dobry poziom bezpieczeństwa: dwa przykłady to kryteria ITSEC i wspólne .

Ujawnienie podatności

Skoordynowane ujawnianie (niektórzy nazywają to „ odpowiedzialnym ujawnianiem ”, ale przez innych uważane jest za tendencyjne) luk w zabezpieczeniach jest tematem wielkiej debaty. Jak donosi The Tech Herald w sierpniu 2010 r., „ Google , Microsoft , TippingPoint i Rapid7 wydały wytyczne i oświadczenia dotyczące tego, jak będą postępować z ujawnianiem informacji w przyszłości”. Inną metodą jest zazwyczaj pełne ujawnienie , gdy wszystkie szczegóły dotyczące luki w zabezpieczeniach są upubliczniane, czasami z zamiarem wywarcia presji na autorze oprogramowania, aby szybciej opublikował poprawkę. W styczniu 2014 r., kiedy Google ujawnił lukę w zabezpieczeniach firmy Microsoft, zanim firma Microsoft wydała poprawkę, aby ją naprawić, przedstawiciel firmy Microsoft wezwał do skoordynowanych praktyk wśród producentów oprogramowania w zakresie ujawniania ujawnień.

Inwentaryzacja podatności

Mitre Corporation utrzymuje niepełną listę publicznie ujawnionych luk w systemie o nazwie Common Vulnerabilities and Exposures . Informacje te są natychmiast udostępniane Narodowemu Instytutowi Standardów i Technologii (NIST), gdzie każda podatność otrzymuje ocenę ryzyka za pomocą systemu punktacji Common Vulnerability Scoring System (CVSS), schematu Common Platform Enumeration (CPE) i Common Weakness Enumeration .

OWASP utrzymuje listę klas podatności w celu edukacji projektantów systemów i programistów, zmniejszając w ten sposób prawdopodobieństwo niezamierzonego zapisania podatności w oprogramowaniu.

Data ujawnienia podatności

Czas ujawnienia luki jest różnie definiowany w środowisku bezpieczeństwa i branży. Jest to najczęściej określane jako „rodzaj publicznego ujawnienia informacji dotyczących bezpieczeństwa przez określoną stronę”. Zazwyczaj informacje o luce są omawiane na liście dyskusyjnej lub publikowane w witrynie internetowej poświęconej bezpieczeństwu, a następnie publikowane jest powiadomienie dotyczące bezpieczeństwa.

Czas ujawnienia jest pierwsza data luka w zabezpieczeniach opisana jest na kanale w którym ujawniono informacje o luce musi spełniać następujące wymagania:

  • Informacje są swobodnie dostępne dla opinii publicznej
  • Informacje o luce są publikowane przez zaufany i niezależny kanał/źródło
  • Podatność została poddana analizie przez ekspertów w taki sposób, że informacje o ocenie ryzyka są uwzględniane po ujawnieniu
Identyfikowanie i usuwanie podatności

Istnieje wiele narzędzi programowych, które mogą pomóc w wykrywaniu (a czasem usuwaniu) luk w systemie komputerowym. Chociaż narzędzia te mogą zapewnić audytorowi dobry przegląd możliwych istniejących luk w zabezpieczeniach, nie mogą one zastąpić osądu człowieka. Poleganie wyłącznie na skanerach przyniesie fałszywe alarmy i ograniczony zakres wglądu w problemy występujące w systemie.

Luki zostały znalezione w każdym głównym systemie operacyjnym, w tym Windows , macOS , różnych formach Unix i Linux , OpenVMS i innych. Jedynym sposobem na zmniejszenie prawdopodobieństwa wykorzystania luki w systemie jest stała czujność, w tym staranne utrzymanie systemu (np. stosowanie poprawek oprogramowania), najlepsze praktyki we wdrażaniu (np. korzystanie z zapór sieciowych i kontroli dostępu ) oraz audyt (zarówno podczas rozwoju i przez cały cykl życia wdrożenia).

Lokalizacje, w których pojawiają się luki

Podatności są powiązane i mogą się objawiać w:

  • fizyczne środowisko systemu
  • personel (tj. pracownicy, kierownictwo)
  • procedury administracyjne i polityka bezpieczeństwa
  • prowadzenie działalności gospodarczej i świadczenie usług
  • sprzęt, w tym urządzenia peryferyjne
  • oprogramowanie (tj. lokalnie lub w chmurze)
  • łączność (tj. sprzęt i urządzenia komunikacyjne)

Oczywiste jest, że podejście czysto techniczne nie zawsze może chronić majątek fizyczny: należy dysponować procedurą administracyjną umożliwiającą wejście do obiektów personelowi konserwacyjnemu oraz osobom z odpowiednią znajomością procedur, zmotywowanym do jego przestrzegania z należytą starannością. Jednak zabezpieczenia techniczne niekoniecznie powstrzymują ataki socjotechniczne (bezpieczeństwo) .

Przykłady podatności:

  • osoba atakująca znajduje i wykorzystuje słabość przepełnienia bufora, aby zainstalować złośliwe oprogramowanie, aby następnie wykraść wrażliwe dane;
  • osoba atakująca przekonuje użytkownika do otwarcia wiadomości e-mail z dołączonym złośliwym oprogramowaniem;
  • powódź uszkadza systemy komputerowe zainstalowane na parterze.

Luki w oprogramowaniu

Typowe typy luk w oprogramowaniu, które prowadzą do luk, obejmują:

Opracowano pewien zestaw wytycznych dotyczących kodowania i użyto dużej liczby statycznych analizatorów kodu w celu sprawdzenia, czy kod jest zgodny z wytycznymi.

Zobacz też

Bibliografia

Zewnętrzne linki