Jak cyberprzestępcy wykorzystują luki w oprogramowaniu?

Jak cyberprzestępcy wykorzystują luki w oprogramowaniu?
Źródło zdjęć: © Jupiterimages

26.11.2010 13:17, aktual.: 26.11.2010 14:11

Zalogowani mogą więcej

Możesz zapisać ten artykuł na później. Znajdziesz go potem na swoim koncie użytkownika

System bezpieczeństwa był dość szczelny, ale włamywacz dokładnie wiedział, gdzie znajduje się słaby punkt. Przeszedł specjalne szkolenie, na którym nauczono go, jak prześlizgnąć się niepostrzeżenie przez takie luki i przeniknąć do sieci. Włamywacz tworzy lukę, która pozwala przedostać się do systemu innym - szpiegom, złodziejom czy tajnym agentom, którzy sprawiają, że system działa tak, jak chcą ich szefowie. Tak długo, jak luka pozostaje otwarta...

To wcale nie jest scena z gry komputerowej, taki scenariusz rozgrywa się z udziałem exploitów - programów, które wykorzystują luki w zabezpieczeniach oprogramowania i ukradkowo przenikają do atakowanych komputerów.

Obraz
© (fot. Jupiterimages)

Luki w zabezpieczeniach i exploity

Luka w zabezpieczeniu to błąd w kodzie oprogramowania, który szkodliwi użytkownicy mogą w pewnych warunkach wykorzystać do własnych celów. Exploit to program, który wykorzystuje do własnych, szkodliwych celów lukę w oprogramowaniu na lokalnym lub zdalnym komputerze.

Głównym celem exploitów jest zainfekowanie komputera przy użyciu określonego szkodliwego programu. W większości przypadków exploit ma niewielkie rozmiary, dlatego pełni funkcję downloadera - aplikacji pobierającej inne programy. Z reguły wszystkie szkodliwe działania odbywają się w tle i pozostają niezauważone przez użytkownika. Czasami w wyniku działania szkodnika przestaje działać przeglądarka internetowa, jednak przeciętny użytkownik prawdopodobnie nie zauważy niczego podejrzanego.

Luki w zabezpieczeniach można znaleźć w każdym typie oprogramowania, popularne programy nie są tu wyjątkiem. Wydaje się, że niektórzy producenci nie przejmują się błędami w kodzie swoich programów. Luki znajdują się w programach wykorzystywanych do przetwarzania różnych formatów plików, jak również w wirtualnych maszynach, które uruchamiają skrypty. Pozwala to szkodliwym użytkownikom dodawać exploity do plików w różnych formatach, takich jak JPEG, TIFF, BMP, GIF, ANI oraz LNK, z pomocą różnych protokołów. Czasami sam plik jest exploitem, tak jak w przypadku plików napisanych w JavaScript, które atakują luki w zabezpieczeniach Internet Explorera.

W przeważającej większości przypadków exploity zawierają tak zwany “shell code”, który wygląda jak sekwencja bajtów i stanowi grupę instrukcji maszynowych, które mogą być wykonywane przez procesor. Kod zwykle jest pobierany na komputer użytkownika, a następnie zostaje uruchomiony pełny szkodliwy program. Jednak istnieją również luki, które nie wymagają wykonania shell code. Na przykład exploit, który wykorzystuje lukę CVE-2010-188. w systemie help desk i centrum pomocy technicznej Microsoftu wykonuje kod HTML, zawierający znacznik