Ataki w wykorzystaniem złośliwego kodu obejmują szereg rodzajów programów komputerowych, które zostały utworzone z zamiarem spowodowania utraty danych lub ich uszkodzenia. Są trzy główne typy złośliwego oprogramowania: wirusy, konie trojańskie i robaki.
Wirusem jest złośliwe oprogramowanie, które jest dołączone do innego programu w celu wykonania konkretnych niechcianych działań przez stację roboczą. Przykładem jest program, który jest dołączony do command.com (główny interpreter na systemach Windows) i usuwa niektóre pliki oraz zaraża inne wersje command.com, który może znaleźć.
Koń trojański różni się tylko tym, że cała aplikacja została napisana, aby wyglądać jak coś innego, podczas gdy w rzeczywistości jest to narzędzie ataku. Przykładem konia trojańskiego jest aplikacja, która uruchamia prostą grę na stacji roboczej. Podczas gdy użytkownik jest zajęty grą, koń trojański wysyła mailem swoją kopię do każdego adresu w książce adresowej użytkownika. Pozostali użytkownicy otrzymują grę i grają w nią tym samym rozprzestrzeniając dalej konia trojańskiego na adresy z każdej książki adresowej.
Wirusy zazwyczaj wymagają mechanizmu dostarczenia takiego jak np. plik zip lub inny plik wykonywalny dołączonym do wiadomości e-mail, do przenoszenia kodu wirusa z jednego systemu do drugiego. Kluczowym elementem, który odróżnia robaka komputerowego od wirusa komputerowego jest to, że jest wymagana interakcja człowieka, aby ułatwić rozprzestrzenianie się wirusa.
Robaki to samodzielne programy, które atakują system i starają się wykorzystać lukę w zabezpieczeniach konkretnego celu. Po udanym wykorzystaniu luki robak kopiuje swój program z opanowanego hosta do nowego rozpoczynając na nowo cykl rozprzestrzeniania. Anatomia ataku robaka jest w następująca:
- Wykorzystanie podatności - robak instaluje się wykorzystując znane luki w systemach, np. naiwnych użytkowników, którzy otwiera niezweryfikowane wykonywalne załączniki w e-mailach.
- Mechanizm propagacji - po uzyskaniu dostępu do hosta, robak kopiuje się do tego komputera, a następnie wybiera nowe cele.
- Działanie - po zainfekowaniu hosta robakiem, atakujący uzyskuje dostęp do hosta, często jako uprzywilejowany użytkownik. Atakujący może wykorzystać lokalny exploit do podniesienia poziom uprawnień administratora.