Table of Contents

Pojęcia Cyberbezpieczeństwa

Projektanci i inżynierowie IoT muszą rozumieć pojęcia z zakresu cyberbezpieczeństwa. Pomaga to zrozumieć różne ataki, jakie mogą zostać przeprowadzone na urządzenia IoT, oraz sposoby wdrażania mechanizmów bezpieczeństwa chroniących je przed cyberatakami. W tym rozdziale omówiono wybrane pojęcia cyberbezpieczeństwa niezbędne do zrozumienia bezpieczeństwa IoT.

Czym jest cyberbezpieczeństwo

Cyberbezpieczeństwo to technologie, strategie i praktyki mające na celu zapobieganie cyberatakom oraz ograniczanie ryzyka, jakie stwarzają one dla systemów informatycznych i innych systemów cyberfizycznych. Bywa ono nazywane bezpieczeństwem technologii informacyjnych i obejmuje opracowywanie oraz wdrażanie technologii, protokołów i polityk chroniących systemy informatyczne przed kradzieżą danych, ich nielegalną modyfikacją oraz przerwami w działaniu usług. Głównym celem systemów cyberbezpieczeństwa jest ochrona sprzętu, oprogramowania, sieci i danych osób oraz organizacji przed atakami, które mogą naruszyć poufność, integralność i dostępność tych systemów.

Po zrozumieniu, czym jest cyberbezpieczeństwo, należy również wyjaśnić, czym jest cyberatak. Cyberatakiem można nazwać każde celowe naruszenie poufności, integralności lub dostępności systemu informatycznego, czyli nieuprawniony dostęp do sieci, systemu komputerowego lub urządzenia cyfrowego w złośliwym zamiarze kradzieży, ujawnienia, zmiany, wyłączenia lub zniszczenia danych, aplikacji bądź innych zasobów. Udany cyberatak może wyrządzić ofierze poważne szkody – od utraty danych po straty finansowe. Organizacja, której systemy zostały skutecznie zaatakowane, może utracić reputację i zostać zobowiązana do pokrycia szkód poniesionych przez klientów.

Nasuwa się pytanie: dlaczego powinniśmy przejmować się cyberatakami, zwłaszcza w kontekście IoT? Powszechne wykorzystanie IoT do usprawniania procesów biznesowych i poprawy jakości życia wykładniczo zwiększyło możliwości przeprowadzania cyberataków przez przestępców, a tym samym ryzyko dla firm i osób prywatnych. Podkreśla to potrzebę, aby inżynierowie IoT, inżynierowie IT oraz pozostali pracownicy spoza branży IT rozumieli pojęcia cyberbezpieczeństwa.

Triada poufności, integralności i dostępności (CIA)

Triada CIA to ramy koncepcyjne łączące trzy pojęcia cyberbezpieczeństwa – poufność (ang. confidentiality), integralność (ang. integrity) i dostępność (ang. availability) – w prostą i kompletną listę kontrolną służącą do wdrażania, oceny i doskonalenia systemów cyberbezpieczeństwa. Tworzą one zbiór wymagań, które dobrze zaprojektowany system cyberbezpieczeństwa musi spełniać, aby zapewnić poufność, integralność i dostępność systemów informatycznych. Triada ta stanowi skuteczne narzędzie identyfikacji podatności i zagrożeń w systemach informatycznych, a następnie wdrażania odpowiednich technologii i polityk chroniących te systemy przed kompromitacją. Zapewnia ogólne ramy, którymi kierują się organizacje i eksperci ds. cyberbezpieczeństwa przy projektowaniu, wdrażaniu, ocenie i audycie systemów informatycznych. W kolejnych akapitach krótko omówiono elementy triady CIA (rysunek 1).

Diagram triady CIA: duży trójkąt podzielony na trzy mniejsze trójkąty – u góry Poufność (P), w lewym dolnym rogu Integralność (I), w prawym dolnym rogu Dostępność (D); w środku napis Triada bezpieczeństwa informacji.
Fig. 1: Triada CIA

Poufność

Poufność obejmuje technologie i strategie zapewniające, że wrażliwe dane pozostają prywatne i niedostępne dla osób nieuprawnionych. Oznacza to, że wrażliwe dane mogą być przeglądane wyłącznie przez upoważnione osoby w organizacji i muszą być chronione przed osobami nieupoważnionymi. Część danych zbieranych przez czujniki IoT jest bardzo wrażliwa i nie może być dostępna dla osób o złych zamiarach. Poufność danych obejmuje zestaw technologii, protokołów i polityk zaprojektowanych i wdrożonych w celu ochrony danych przed niezamierzonym, bezprawnym lub nieuprawnionym dostępem, ujawnieniem lub kradzieżą. Aby zapewnić poufność danych, należy odpowiedzieć na następujące pytania:

Aby zapewnić poufność danych przechowywanych w systemach komputerowych i przesyłanych przez sieci komputerowe i telekomunikacyjne, należy przestrzegać następujących wytycznych:

Integralność

Integralność w cyberbezpieczeństwie obejmuje technologie i strategie zapewniające, że dane nie zostaną zmodyfikowane ani usunięte przez osoby nieuprawnione podczas przechowywania lub przesyłania. Utrzymanie integralności danych jest niezbędne, aby były one spójne, dokładne i wiarygodne. W kontekście IoT integralność oznacza pewność, że dane zebrane przez czujniki IoT nie zostaną bezprawnie zmienione podczas przesyłania, przetwarzania i przechowywania, co uczyniłoby je niekompletnymi, niedokładnymi, niespójnymi i niewiarygodnymi. Dane mogą być modyfikowane wyłącznie przez osoby uprawnione do dostępu do nich. Zebrane dane muszą pozostać kompletne, dokładne, spójne i bezpieczne przez cały cykl życia, w następujący sposób 1):

Projektanci, producenci, deweloperzy i operatorzy systemów IoT powinni dbać o to, aby zebrane dane nie zostały utracone, ujawnione ani uszkodzone podczas przesyłania, przetwarzania lub przechowywania. Ponieważ ilość danych zbieranych przez czujniki IoT rośnie, a wiele firm opiera decyzje na wynikach ich przetwarzania, zapewnienie integralności danych ma kluczowe znaczenie. Należy zagwarantować, że zebrane dane IoT są kompletne, dokładne, spójne i bezpieczne przez cały cykl życia, ponieważ dane skompromitowane mają dla organizacji i użytkowników niewielką wartość lub nie mają jej wcale. Niepożądane są również utraty danych wynikające z błędów ludzkich i cyberataków. Na integralność danych mogą wpływać czynniki fizyczne i logiczne.

Fizyczną integralność danych można zapewnić poprzez:

Projektanci, producenci i deweloperzy systemów IoT mogą stosować różne technologie i polityki zapewniające integralność sprzętu – od urządzeń IoT, przez komunikację, po centra danych mgły/chmury.

Zapewnienie integralności danych jest złożonym zadaniem, wymagającym starannej integracji narzędzi cyberbezpieczeństwa, polityk, regulacji i ludzi. Do sposobów zapewnienia integralności danych należą m.in. następujące strategie:

Dostępność

Systemy obliczeniowe, komunikacyjne oraz systemy przechowywania i odczytu danych powinny być dostępne w dowolnym momencie, gdy są potrzebne. Dostępność w kontekście cyberbezpieczeństwa to możliwość niezawodnego uzyskania dostępu do systemów informatycznych przez uprawnionych użytkowników lub aplikacje w dowolnym momencie, gdy jest to konieczne. Jest to jeden z elementów triady CIA, stanowiący wymaganie przy projektowaniu bezpiecznych i niezawodnych systemów informacyjno-komunikacyjnych, takich jak IoT. Ponieważ węzły IoT są integrowane z infrastrukturą krytyczną oraz inną istniejącą infrastrukturą firm i osób prywatnych, dłuższe przestoje są niedopuszczalne, co czyni dostępność wymaganiem kluczowym. Utrata dostępności może wynikać z następujących przyczyn:

Do sposobów zapewnienia dostępności systemów informatycznych i danych należą m.in.:

Wybrane podstawowe terminy cyberbezpieczeństwa

Aby zrozumieć zaawansowane pojęcia i technologie cyberbezpieczeństwa, trzeba dobrze znać pojęcia podstawowe. Poniżej przedstawiono wybrane z nich.

Ryzyko cyberbezpieczeństwa: prawdopodobieństwo narażenia na cyberatak lub naruszenia któregokolwiek z wymagań poufności, integralności lub dostępności, co może skutkować kradzieżą, wyciekiem, uszkodzeniem lub zniekształceniem danych. Może ono również prowadzić do zakłóceń lub przestojów usług, w wyniku których firma traci przychody, a infrastruktura ulega uszkodzeniu. Organizacja, która padła ofiarą udanego cyberataku, może stracić reputację i zostać zobowiązana do wypłaty odszkodowań klientom lub zapłaty kary organom nadzorczym. Ryzyko cyberbezpieczeństwa to zatem potencjalne straty, jakie organizacja lub osoby mogą ponieść w wyniku udanych cyberataków lub awarii systemów informatycznych, prowadzących do utraty danych, klientów, przychodów i zasobów (aktywów oraz strat finansowych).

Zagrożenia: działanie podejmowane w celu naruszenia któregokolwiek z wymagań cyberbezpieczeństwa, które może skutkować kradzieżą, wyciekiem, uszkodzeniem, zniekształceniem lub utratą danych. Działanie takie może ujawnić dane osobom nieuprawnionym lub bezprawnie je zmienić. Może też prowadzić do zakłócenia usług wskutek przestoju systemu, jego niedostępności lub niedostępności danych. Zagrożenia obejmują m.in. infekcje urządzeń wirusami lub złośliwym oprogramowaniem, ataki ransomware, odmowę usługi, phishing, ataki socjotechniczne, ataki na hasła, wstrzykiwanie SQL, naruszenia ochrony danych, ataki typu man-in-the-middle, ataki wyczerpujące energię (w przypadku urządzeń IoT) i wiele innych wektorów ataku. Zagrożenia cyberbezpieczeństwa mogą pochodzić od takich podmiotów jak państwa, cyberprzestępcy, haktywiści, niezadowoleni pracownicy, a także wynikać z błędów projektowych, błędnej konfiguracji systemów, wad lub błędów oprogramowania, działań terrorystów i szpiegów, błędów uprawnionych użytkowników oraz klęsk żywiołowych 2).

Podatność: słabość, wada lub błąd w systemie informatycznym lub systemie cyberbezpieczeństwa, który cyberprzestępcy mogą wykorzystać do naruszenia bezpieczeństwa systemu. Istnieje wiele podatności i wciąż odkrywane są nowe. Do najczęstszych należą wstrzykiwanie SQL, przepełnienie bufora, cross-site scripting, błędna konfiguracja zabezpieczeń 3), słabe mechanizmy uwierzytelniania i autoryzacji oraz niezaszyfrowane dane podczas przesyłania lub przechowywania. Podatności można identyfikować za pomocą skanerów podatności i testów penetracyjnych. Po wykryciu podatności należy podjąć kroki w celu jej usunięcia lub ograniczenia związanego z nią ryzyka.

Exploit: różne sposoby wykorzystywania przez cyberprzestępców podatności do przeprowadzania cyberataków naruszających poufność, integralność i dostępność systemów informatycznych. Exploit może obejmować zaawansowane techniki (np. polecenia, skrypty lub programowanie) oraz narzędzia programowe (komercyjne lub otwartoźródłowe) służące do identyfikacji i wykorzystania podatności w celu kradzieży danych, zakłócenia usług, uszkodzenia danych lub przejęcia danych bądź systemów w zamian za okup.

Wektor ataku: różne sposoby, w jakie atakujący mogą naruszyć bezpieczeństwo systemu informatycznego, np. systemów obliczeniowych, komunikacyjnych lub systemów przechowywania i odczytu danych. Do typowych wektorów ataku należą:

Do sposobów eliminowania wektorów ataku w celu zmniejszenia szans na udany atak należą 4):

Powierzchnia ataku: miejsca lub możliwe wektory ataku, które cyberprzestępcy mogą wykorzystać do naruszenia poufności, integralności i dostępności danych i systemów informatycznych. Organizacje i osoby prywatne powinny dążyć do minimalizacji swojej powierzchni ataku – im jest ona mniejsza, tym mniejsze prawdopodobieństwo kompromitacji danych lub systemów. Dlatego należy stale monitorować powierzchnię ataku, aby jak najszybciej wykrywać i blokować ataki oraz minimalizować ryzyko ich powodzenia. Typowe elementy powierzchni ataku to słabo zabezpieczone urządzenia (np. komputery, telefony komórkowe, dyski twarde i urządzenia IoT), słabe hasła, brak zabezpieczeń poczty elektronicznej, otwarte porty oraz nieinstalowanie poprawek oprogramowania, co otwiera atakującym „tylne drzwi”. Inną typową powierzchnią ataku są słabe protokoły webowe, które hakerzy mogą wykorzystać do kradzieży danych w atakach man-in-the-middle (MITM). Wyróżnia się dwie kategorie powierzchni ataku 5):

Skuteczne zarządzanie powierzchnią ataku zapewnia organizacjom i osobom następujące korzyści:

W miarę jak infrastruktura IT rośnie i łączy się z zewnętrznymi systemami przez Internet, staje się coraz bardziej złożona, trudniejsza do zabezpieczenia i częściej atakowana. Do sposobów minimalizacji powierzchni ataku i ograniczenia ryzyka cyberataków należą:

Szyfrowanie: przekształcanie danych w tajny kod (dane zaszyfrowane), który może zostać przekształcony z powrotem do postaci pierwotnej (odszyfrowany) wyłącznie za pomocą unikalnego klucza przez uprawnionych użytkowników lub aplikacje. Szyfrowanie chroni poufność i integralność danych, tzn. zapobiega ich kradzieży lub bezprawnej zmianie przez cyberprzestępców. Stosuje się je do ochrony danych podczas przesyłania, przechowywania i przetwarzania/analizy. Proces szyfrowania polega na użyciu matematycznego algorytmu kryptograficznego (algorytmu szyfrującego) do przekształcenia danych (tekstu jawnego) w szyfrogram, który można przekształcić z powrotem w tekst jawny jedynie za pomocą innego algorytmu (algorytmu deszyfrującego) i odpowiedniego unikalnego klucza. Klucze kryptograficzne powinny być na tyle długie, aby cyberprzestępcy nie mogli ich łatwo odgadnąć atakiem siłowym lub kryptoanalizą. Cele stosowania algorytmów szyfrowania w systemach informatycznych to:

Algorytmy kryptograficzne dzielą się na dwa główne rodzaje:

Choć szyfrowanie jest bardzo cenne dla zabezpieczania danych podczas przesyłania, przetwarzania i przechowywania, ma również wady:

Uwierzytelnianie: mechanizm kontroli dostępu umożliwiający weryfikację, czy użytkownik, urządzenie lub aplikacja jest tym, za kogo się podaje. Dane uwierzytelniające (nazwa użytkownika i hasło) są porównywane z bazą danych uprawnionych użytkowników lub z serwerami uwierzytelniania, co pozwala zweryfikować tożsamość i prawo dostępu do urządzenia, serwerów, aplikacji lub bazy danych. Uwierzytelnianie za pomocą nazwy użytkownika lub identyfikatora i hasła nazywa się uwierzytelnianiem jednoskładnikowym. Obecnie organizacje, zwłaszcza przetwarzające dane wrażliwe (np. banki), wymagają od użytkowników i aplikacji podania wielu składników uwierzytelniania (a nie tylko identyfikatora i hasła), co nazywa się uwierzytelnianiem wieloskładnikowym; w przypadku dwóch składników – dwuskładnikowym. Wykorzystanie cech człowieka, takich jak odcisk palca, skan twarzy lub siatkówki czy rozpoznawanie głosu, nazywa się uwierzytelnianiem biometrycznym 6). Uwierzytelnianie chroni poufność i integralność danych i systemów, dopuszczając do cennych i wrażliwych zasobów (np. komputerów, sieci bezprzewodowych, punktów dostępowych, baz danych, stron internetowych oraz innych aplikacji i usług sieciowych) wyłącznie uwierzytelnionych użytkowników, aplikacje i procesy.

Autoryzacja: podobnie jak uwierzytelnianie, autoryzacja służy ochronie danych i systemów informatycznych przed nadużyciami ze strony cyberprzestępców oraz niezamierzonymi (lub zamierzonymi) działaniami uprawnionych użytkowników. Autoryzacja to proces określania praw dostępu użytkowników i aplikacji w celu sprawdzenia, czy mają prawo wykonać daną czynność. W odróżnieniu od uwierzytelniania, które weryfikuje tożsamość i udziela dostępu do systemu, autoryzacja określa uprawnienia do wykonywania konkretnych czynności. Przykładem autoryzacji jest lista kontroli dostępu (ang. Access Control List, ACL), która zezwala lub odmawia użytkownikom i aplikacjom dostępu do określonych zasobów systemu oraz wykonywania określonych czynności. Zwykli użytkownicy mogą mieć prawo do niektórych czynności, a do innych nie, natomiast superużytkownicy lub administratorzy mogą wykonywać niemal wszystkie czynności w systemie. Niektórzy użytkownicy mają dostęp do części danych, ale nie do danych bardziej wrażliwych – w systemach bazodanowych zwykli użytkownicy mogą mieć dostęp do danych mniej wrażliwych, a administrator do bardziej wrażliwych.

Kontrola dostępu: różne mechanizmy zaprojektowane i wdrożone w celu udzielania uprawnionym użytkownikom dostępu do zasobów systemu informatycznego i kontrolowania czynności, jakie mogą wykonywać (np. przeglądanie, modyfikacja, aktualizacja, instalacja, usuwanie). Może również obejmować fizyczny dostęp do krytycznych zasobów organizacji. Kontrola dostępu chroni poufność i integralność danych i systemów. Fizyczna kontrola dostępu dotyczy fizycznego dostępu do krytycznych zasobów, a logiczna – dostępu do systemów informatycznych (sieci, węzłów obliczeniowych, serwerów, plików i baz danych). Dostęp do miejsc przechowywania krytycznych zasobów (serwerów, sprzętu sieciowego, dokumentów) ogranicza się za pomocą elektronicznych systemów kontroli dostępu wykorzystujących klucze, czytniki kart, klawiatury PIN oraz audyty i raporty śledzące wejścia pracowników. Dostęp do systemów informatycznych ogranicza się mechanizmami uwierzytelniania i autoryzacji weryfikującymi dane logowania, którymi mogą być hasła, kody PIN, skany biometryczne, tokeny bezpieczeństwa lub inne składniki uwierzytelniania 7).

Niezaprzeczalność: sposób zapewnienia, że nadawca danych nie zaprzeczy ich wysłaniu, a odbiorca – ich otrzymaniu. Gwarantuje również, że podmiot, który podpisał dokument, nie może zaprzeczyć swojemu podpisowi. Pojęcie to zaczerpnięto z dziedziny prawa; stało się ono jednym z pięciu filarów zapewniania bezpieczeństwa informacji, obok poufności, integralności, dostępności i uwierzytelniania. Zapewnia autentyczność i integralność wiadomości: potwierdza odbiorcy tożsamość nadawcy, a nadawcy – że wiadomość została dostarczona bez zmian. Dzięki temu ani nadawca, ani odbiorca nie mogą zaprzeczyć wysłaniu, odebraniu lub przetworzeniu danych. Do zapewnienia niezaprzeczalności można stosować podpisy, o ile są unikalne dla każdego podmiotu.

Rozliczalność: rozliczalność wymaga od organizacji podjęcia wszelkich niezbędnych kroków w celu zapobiegania cyberatakom i ograniczania ryzyka ich wystąpienia. Jeśli do ataku dojdzie, organizacja musi wziąć odpowiedzialność za szkody i zaangażować odpowiednich interesariuszy w usuwanie skutków i zapobieganie przyszłym atakom. Musi również przyjąć odpowiedzialność za radzenie sobie z wyzwaniami bezpieczeństwa i konsekwencjami naruszeń.

2)
Abi Tyas Tunggal, What is Cybersecurity Risk? A Thorough Definition, https://www.upguard.com/blog/cybersecurity-risk, 2024
3)
Rapid 7, Vulnerabilities, Exploits, and Threats, https://www.rapid7.com/fundamentals/vulnerabilities-exploits-threats/