Wielu administratorów zastanawia się co dalej po cyber ataku. Najbardziej gorący moment minął. Atak został zażegnany. Systemy przywrócone, a dane odzyskane. To scenariusz optymistyczny. Wszystko wróciło do normy.
Wydaje się, że chyba nie. Przecież w realnym życiu nie pozostawiasz sprawy włamania do pomieszczenia bez działań następczych. Zwykle powiadamiamy organa ścigania, firmy ubezpieczeniowe, dokonujemy wraz z nimi pierwszych oględzin, a eksperci śledczy sporządzają protokoły. Jednym słowem zabezpieczają materiały dowodowe.
Takie zachowania powinny być również w świecie wirtualnym. Czynności po kradzieży, czy też włamaniu w zasadzie nie różnią się co do zabezpieczenia miejsca przestępstwa. Przenosząc zdarzenia przestępcze do świata wirtualnego można powiedzieć, że w cyber świecie jest więcej miejsc lokalizacyjnych (śladów), w których przestępca z pewnością zapomniał wymazać swoją nielegalną obecność w systemie. Dziedziną zajmującą się badaniem takich miejsc jest kryminalistyka cyfrowa. Dziedzina ta nie jest młodą i ulega takiej samej ewolucji jak każda dziedzina życia społecznego. Zmiennym w niej są techniki badawcze, natomiast niezmiennym jest samo badanie komponentów komputerów i systemów np. obrazy dysków twardych, obrazy nośników zewnętrznych, układy elektroniczne pamięci RAM, flash itp., czy też zrzuty połączeń sieciowych. Należy mieć świadomość, że powyższe materiały są kluczowymi w ustaleniu stanu z przed zdarzenia. Zbierając materiały dowodowe po cyberataku powinniśmy być zainteresowani przede wszystkim procesami:
- Uruchamiania i zamykania systemu (ponowne uruchomienie, zatrzymanie);
- Odczytu i zapisu plików systemowych oraz zmianą praw dostępu do nich;
- Inicjowaniu połączenia sieciowego i zmianą ustawień sieciowych;
- Zmiany informacji o użytkowniku lub grupie;
- Zmiany daty i godziny, w tym synchronizacją zegarów;
- Instalacji, usuwaniu, uruchamianiu i zatrzymywaniu usług serwerowych i demonów;
- Nawiązywaniu połączeń między systemowych.
W powyżej wyliczonej grupie głównym nośnikiem informacji są tzw. logi systemowe zwane również dziennikami systemowymi. Analiza zapisu z tych logów jest cenną informacją, która przybliży nas do wskazania źródła awarii (ataku). Warto zwrócić uwagę, że konfiguracja zapisu logów może być dowolna i dowolnie „głęboka”. Jest to oczywiście związane z potrzebą „schodzenia” to takiego stopnia szczegółowości ale również i z pojemnością dysków.
Dzienniki systemowe powinny być archiwizowane, o czym administratorzy często świadomie lub nieświadomie zapominają. Niewielka grupa podmiotów jest prawnie zobligowana do utrzymywania dzienników systemowych w odpowiednich ramach czasowych (operatorzy telekomunikacyjni, podmioty realizujące zadania publiczne etc.).
Ważnym jest, aby zapisy do tych dzienników oraz ramy czasowe były możliwe do wykorzystania po cyberataku. Dobrym rozwiązaniem ochrony logów jest umieszczenie ich poza środowiskiem produkcyjnym np. chmurowym. Daje to możliwość kontroli zapisów i gwarancję, że dziennik systemowy może być nie osiągalny i nie zmodyfikowany przez potencjalnego włamywacza.
W przypadku głębszej analizy komponentów komputera np. systemu Windows wiodącym staje się rejestr, w którym w magicznie brzmiących nazwach drzewa znajdują się zapisy stanowiące o naruszeniach integralności systemowych lub zmianach dokonanych przez potencjalnego złoczyńcę.
Od początku istnienia systemów Windows, rejestr był zawsze agentem czuwającym nad systemem i czynnościami użytkowników w nim pracujących.
Oczywiście, czytelność tych zapisów nie jest zbyt otwarta. Wystarczy jednak niewielkie zaangażowanie ze strony osób analizujących rejestr oraz znajomość klucza szyfrującego, aby zapisy w rejestrach były zrozumiałe dla „języka ludzkiego”.
Popularne systemy Linux również tworzą zapisy czynności systemowych. Każdy demon, usługa, aplikacja posiada swój, dedykowany plik do którego są „zrzucane” logi. Zwykle, są to zapisy w języku otwartym pozwalającym na bieżące ich odczytywanie. W rzadkich przypadkach, ale przy aplikacjach (usługach) krytycznych z punktu widzenia systemu, logi są zapisywane w postaci szyfrowanej, a do odczytu są dedykowane aplikacje odczytujące.
Warto pamiętać, że Linux jako system, jest od początku w swojej instalacji przygotowany do wysyłania dobowych raportów logów na wskazaną w konfiguracji skrzynkę mailową np. administratora (root-a).
Przy zabezpieczaniu dowodów kryminalistycznych w przypadku systemu Linux, należy brać pod uwagę:
– listę użytkowników, grup oraz ich uprawnień;
– identyfikację procesów działających z uprawnieniami root-a;
– planowane zadania przez cron-a;
– pliki z ustawionym bitem suid i sgid,
– zapisy w pliku /etc/sudoers;
– interface sieciowe, połączenia, porty oraz tablice routingu;
– iptables, dzienniki fail2ban;
– konfigurację zdalnych usług logowania (ssh, ftp, sftp, telent);
– stan SELinux;
– lista załadowanych modułów jądra.
Wszystkie opisane powyżej materiały mogą stanowić cenny materiał dowodowy w postępowaniu śledczym po cyberataku. Budując Politykę Bezpieczeństwa warto pamiętać o aspekcie gromadzenia cyfrowych danych dowodowych. O tym się zwykle zapomina, skupiając się na zachowaniu ciągłości działania i działaniach odtworzeniowych, natomiast aspekt kryminalistyczny jest mniej brany pod uwagę, a w przypadku pełnego przywrócenia systemu w 90% służby śledcze nie są zawiadamiane. A jeżeli są zawiadomione to dostarczany materiał przez administratorów jest niepełny i nie pozwala na badania śledcze. Warto również zaopatrzyć się w normę ISO/IEC 27037:2016 będącą wytycznymi dotyczącymi identyfikowania, gromadzenia, przejmowania i przechowywania cyfrowego materiału dowodowego.