Kto czyta paski adresu?

0
883

No właśnie. Kto? Do napisania tego artykułu zainspirował mnie kontakt z klientem, z którym nawiązałem niedawno współpracę. Podczas pierwszej rozmowy telefonicznej dyskutowaliśmy o szkodzie, a w zasadzie o szkodach cyber, które czterokrotnie dotknęły spółkę.

Errare humanum est…

Błądzić jest rzeczą ludzką… Gdy doszliśmy do omawiania przyczyn szkody, mój rozmówca wyznał z rozbrajającą szczerością: „Panie Łukaszu, nie sprawdziliśmy. Ale kto czyta paski adresu?”.

Ktoś może powiedzieć – elementarz. Warto jednak przypomnieć, że to czynnik ludzki jest odpowiedzialny za 75% wszystkich incydentów cybernetycznych. Jak widać errare humanum est.

…in errore perservare stultum

…pozostawać w błędzie – głupotą. Zatem by poznać swego wroga, przyjrzyjmy się dziś najczęściej występującym zagrożeniom czyhającym na nas w sieci:

  • Backdoors (tylne drzwi) – metoda omijania środków uwierzytelniania i bezpieczeństwa w oprogramowaniu lub systemie komputerowym.

Backdoory są często legalną częścią oprogramowania. Twórcy oprogramowania używają ich, np.: w celu odblokowania kont użytkowników lub redukcji liczby błędów w oprogramowaniu. Niebezpieczne w rękach przestępców.

  • Denial of Service (DoS) – rodzaj ataku sieciowego powodujący, że atakowany system przestaje działać właściwie. Może to być defekt tylko jednej usługi internetowej (np. e-mail) lub całego serwera. Przy prowadzeniu ataków typu DoS korzysta się z błędów i luk występujących już w systemie.

Atak ten nie wiąże się nigdy z kradzieżą danych lub ich utratą, ale przynosi wielkie straty firmom, które na skutek ataku nie mają możliwości świadczenia swoich usług.

  • Distributed Denial of Service (DDoS) – odmiana ataku typu DoS stworzona w celu całkowitego uniemożliwienia normalnego działania witryny internetowej, sieci, serwera lub innych zasobów.

Atak DDoS różni się od ataku DoS jedynie wykorzystywaną metodą. Atak DDoS prowadzony jest równocześnie przez wiele komputerów.

  • Hacking – poszukiwanie i wykorzystywanie słabych punktów w systemie komputerowym lub sieci, zazwyczaj w celu uzyskania korzyści finansowych.
  • Luki Dnia Zero (Zero-day) – luki, które nie są znane twórcom oprogramowania ani społeczności zajmującej się bezpieczeństwem. Nazwa odnosi się do czasu, przez który twórca oprogramowania był świadomy istnienia luki.

Gdy przestępcy odkrywają lukę Dnia Zero, rozpoczynają atak, który tę słabość wykorzystuje.

  • Luki w zabezpieczeniach – fragmenty kodu zawierające błąd, które pozwalają hakerowi naruszyć integralność, dostępność lub poufność danych.

Po zidentyfikowaniu luk przestępcy mogą tworzyć tzw. exploity, czyli programy wykorzystujące te luki.

Łukasz Cichowski
  • Malware – złośliwe oprogramowanie, które powoduje utrudnienia i przeszkody w pracy na komputerze, może mieć również działanie przestępcze (zdobywanie poufnych danych) lub w jakikolwiek sposób szkodzić użytkownikowi.
  • Pharming – haker stara się przekierować użytkownika odwiedzającego legalną stronę internetową do strony sfałszowanej. Może to osiągnąć, modyfikując plik hosts w komputerze ofiary lub wprowadzając zmiany w systemie DNS (Domain Name System).
  • Phishing – polega na wysyłaniu do przypadkowych osób korespondencji e-mailowej, w której odbiorcy pod wymyślonym pretekstem namawiani są do zalogowania się pod fałszywy adres. Zwykle udaje on stronę logowania banku, urzędu lub popularnego portalu.

Po kliknięciu w załączony w e-mailu link następuje przekierowanie na stronę sfałszowaną przez przestępców. W trakcie logowania nieświadomy klient podaje swój login i hasło przestępcom.

  • Ransomware – rodzaj oprogramowania używanego w przestępczości internetowej. Jego działanie polega na przeniknięciu wirusa do atakowanego systemu i zaszyfrowaniu danych należących do użytkownika.

Potem wirus wyświetla notatkę. Haker pisze w niej, co musi zrobić właściciel cennych plików, aby je odzyskać. Zwykle domaga się przelania pieniędzy na konto bankowe i obiecuje, że w zamian wyśle klucz oraz instrukcje, jak odszyfrować dane. Niestety nie zawsze wywiązuje się z tej obietnicy.

  • Spoofing – fałszowanie adresów IP mające na celu udawanie innego serwera w istniejącym połączeniu sieciowym.

Technika ta ma na celu uniknięcie zabezpieczeń, jakie wprowadzają na danym serwerze administratorzy sieci wewnętrznej, oraz „podszycie” się pod użytkownika sieci, co umożliwia atakującemu przechwytywanie wszystkich danych, które miały trafić do prawdziwego komputera.

  • Vishing – przestępcy, wykorzystując telefonię internetową, starają się podszywać przede wszystkim pod instytucje finansowe. Jedną z praktykowanych przez nich metod jest rozesłanie spamu, w którym podawany jest numer 0-800, pod którym odbiorca e-maila powinien zaktualizować swoje dane konta bankowego.

Po wykręceniu podanego numeru włącza się automat, który prosi ofiarę o podanie konkretnych danych dostępu do konta.

  • Whaling (CEO fraud / na prezesa) – atak phishingowy polegający na podszywaniu się pod pracownika kadry menedżerskiej.

To jest już koniec?

Nie! To dopiero początek! Rozwój technologii IT generuje wciąż nowe zagrożenia, których dzisiaj nie potrafimy sobie jeszcze wyobrazić. Żeby uświadomić sobie, jak nieoczywiste mogą być przyczyny incydentu, prześledźmy, z jakim ryzykiem wiąże się używanie nawet dobrze znanego i popularnego oprogramowania.

  • Liczba twórców – liczba osób tworzących oprogramowanie stale wzrasta. Każdy dodatkowy programista zwiększa ryzyko powstania błędów w oprogramowaniu. W środowisku programistów powszechnie przyjmuje się, że kod nigdy nie jest wydawany bezbłędnie, a średnia liczba błędów na każde 1000 linijek kodu wynosi od 15 do 50 błędów.
  • Kod programu – oprócz rosnącej liczby twórców oprogramowania rośnie również liczba linijek kodu. Więcej linijek kodu oznacza możliwość wystąpienia większej liczby błędów.

Na potrzeby misji Apollo 11 użyto 145 tys. linijek kodu. Dla porównania współczesne auta potrzebują ponad 100 mln linijek kodu.

  • Złożoność – wraz ze wzrostem możliwości oprogramowania rośnie także jego złożoność. Większa złożoność oprogramowania to większe ryzyko jego wadliwego działania.
  • Oprogramowanie open source – ruch open source doprowadził do wielu innowacyjnych inicjatyw. Wiele bibliotek o otwartym kodzie źródłowym jest przesyłanych online i chociaż zakłada się, że zostały sprawdzone pod kątem ich funkcjonalności i bezpieczeństwa, nie zawsze tak jest.

Wszelkie błędy obecne w kodzie podstawowym można nieświadomie skopiować do kolejnych iteracji.

  • Przestarzałe oprogramowanie – im dłużej oprogramowanie jest dostępne na rynku, tym więcej luk i podatności można w nim znaleźć. Gorzej, jeśli twórcy nie wspierają już swojego produktu, np. nie udostępniają aktualizacji usuwających dostrzeżone w nim błędy.

Wiele firm korzysta z przestarzałego oprogramowania, pomimo istnienia bezpieczniejszych alternatyw. Przestępcy, znając wszelkie mankamenty oprogramowania, tylko czekają na taką okazję.

  • Nowe wersje oprogramowania – nowe oprogramowanie jest zwykle oparte na już istniejącym kodzie. To sprawia, że jego testowanie i korekta ewentualnych błędów są bardzo trudne i wymagają dużych zasobów ze strony producenta.

W rezultacie więcej programistów zajmuje się utrzymaniem istniejącego kodu niż pracą nad nowymi implementacjami, a i tak nie zapewnia to pełnej kompatybilności wstecznej.

  • Oprogramowanie generowane automatycznie – oprogramowanie może być tworzone za pomocą zautomatyzowanych procesów, które celowo można modyfikować, by móc później wykorzystać wprowadzoną do programu lukę.

Łukasz Cichowski
starszy broker w MAI Insurance Brokers Poland Sp. z o.o.