bezpieczeństwo IT, informatyka śledcza, reagowanie na incydenty...

Praktyczna analiza powłamaniowa. Aplikacja webowa w środowisku Linux

Praktyczna analiza powłamaniowa. Aplikacja webowa w środowisku Linux

Adam Ziaja • Wydawnictwo Naukowe PWN • ISBN 978-83-01-19347-8

W dzisiejszych czasach bezpieczeństwo aplikacji webowych jest jednym z najważniejszych elementów bezpieczeństwa Internetu, w tym serwerów udostępniających usługi w sieci. Włamania na serwery HTTP niosą jednak za sobą o wiele większe ryzyko niż podmiana zawartości strony. Cyberprzestępcy mogą uzyskać dostęp nie tylko do poświadczeń logowania użytkowników danej witryny ale również plików serwera co niesie za sobą o wiele szersze konsekwencje.

Książka o tematyce DFIR (Digital Forensics and Incident Response) z jednej strony pokazuje tradycyjne podejście informatyki śledczej, a z drugiej reagowania na incydenty (Live Forensics). Tematem przewodnim jest analiza powłamaniowa aplikacji webowej w środowisku Linux. Szczegółowo ukazuje techniczne podejście w tym analizę logów serwera Apache2 i systemu plików Linux Debian oraz zwraca uwagę na możliwości anti-forensics. Z książki czytelnicy dowiedzą się jak przeanalizować incydent związany z włamaniem na stronę w tym jakie operacje przeprowadzał atakujący dzięki analizie osi czasu czy pamięci procesu backdoora. Poruszone zostały też tematy pokrewne takie jak pisanie jednolinijkowych skryptów w powłoce bash czy wykorzystywanie narzędzi anti-forensics do analizy.

Pozycja ta polecana jest osobom związanym z bezpieczeństwem informatycznym. Zawiera informacje przydatne szczególnie w pracy na stanowiskach technicznych wliczając w to informatyków śledczych, specjalistów bezpieczeństwa w SOC oraz CERT jak również biegłych sądowych z zakresu informatyki. Książka może być również z powodzeniem wykorzystywana do nauki przez studentów kierunków szczególnie związanych z informatyką śledczą czy samym bezpieczeństwem komputerowym.

Autor

Adam Ziaja <adam@adamziaja.com> jest związany z bezpieczeństwem IT od kilkunastu lat, swoją karierę zawodową zaczynał od administracji systemami Linux w największym polskim portalu internetowym. Następnie pracował jako informatyk śledczy, tworząc ekspertyzy dla organów ścigania oraz wymiaru sprawiedliwości. Zajmował się przy tym głównie cyberprzestępczością i brał udział w zabezpieczaniu sprzętu komputerowego na miejscu przestępstw. Kolejnym krokiem w karierze była praca w zespole CSIRT (Computer Security Incident Response Team), gdzie zajmował się reagowaniem na incydenty naruszenia bezpieczeństwa oraz CTI (Cyber Threat Intelligence).

Był członkiem zwycięskiej drużyny w największych europejskich cywilnych ćwiczeniach z zakresu ochrony cyberprzestrzeni Cyber Europe 2014. Jest współautorem, materiałów dydaktycznych Europejskiej Agencji ds. Bezpieczeństwa Sieci i Informacji (ENISA) dla zespołów CERT poświęconych m.in. informatyce śledczej oraz wykrywaniu i zwalczaniu cyberprzestępczości. Regularnie, od paru lat jest prelegentem na międzynarodowej konferencji naukowej Techniczne Aspekty Przestępczości Teleinformatycznej (TAPT) organizowanej przez Wyższą Szkołę Policji w Szczytnie.

Od kilku lat zajmuje się przede wszystkim ofensywnym bezpieczeństwem teleinformatycznym, przeprowadzając legalne, autoryzowane ataki w postaci testów penetracyjnych oraz red teamingu[1] głównie dla podmiotów wchodzących w skład infrastruktury krytycznej. Pracował jako tester penetracyjny w międzynarodowej grupie bankowej oraz starszy konsultant cyberbezpieczeństwa w firmie wchodzącej w skład tzw. „wielkiej czwórki”.

Prywatnie zajmuje się bug huntingiem, za co otrzymał dziesiątki podziękowań od instytucji z całego świata, m.in. Adobe, Apple, BlackBerry, Deutsche Telekom, eBay, Harvard University, Nokia, VMware, Yahoo, Yandex, jak również polskich, takich jak Onet, Interia, Wirtualna Polska oraz Empik. Posiada certyfikaty z zakresu praktycznych sieciowych ataków, m.in. Offensive Security Certified Professional (OSCP), Offensive Security Wireless Professional (OSWP) oraz eLearnSecurity Web application Penetration Tester (eWPT).

Jest członkiem grupy non-profit MMD zrzeszającej osoby aktywnie zwalczające internetowe zagrożenia oraz biegłym sądowym z listy Sądu Okręgowego w Warszawie z zakresu informatyki, a szczególnie informatyki śledczej, analizy powłamaniowej w systemach Linux, hackingu i cyberprzestępczości.

Aktualnie prowadzi firmę Red Team Red Team zajmującą się szeroko pojętym bezpieczeństwem teleinformatyczny – od testów penetracyjnych i red teamingu, przez informatykę śledczą i reagowanie na incydenty naruszenia bezpieczeństwa komputerowego, po threat hunting i threat intelligence.


  1. Autoryzowane ataki (symulacja) odzwierciedlające realne możliwości atakujących od warstwy sieciowej i socjotechniki po aspekty fizycznego bezpieczeństwa.

Spis treści

1. Wstęp
Strona internetowa, błędy oraz errata
O autorze
Podziękowania
2. Zabezpieczanie danych
3. Podstawowe informacje o systemie Linux
4. Przyspieszony kurs pisania one-linerów
5. Analiza włamania na aplikację webową
5.1. Informacje o konfiguracji Apache2
5.2. Zapytania HTTP
5.3. Format logów
5.4. Najczęściej występujące ataki
5.4.1. SQL Injection (SQLi)
5.4.2. Remote Code Execution (RCE)
5.4.3. Local File Inclusion (LFI)
5.4.4. Remote File Inclusion (RFI)
5.4.5. Cross-Site Scripting (XSS)
5.4.6. Cross-Site Request Forgery (CSRF)
5.4.7. Server-Side Request Forgery (SSRF)
5.4.8. Shellshock (CVE-2014-6271)
5.4.9. Denial-of-Service (DoS)
5.5. Odzyskiwanie skasowanych logów
5.6. Łączenie wielu plików logów
5.7. Selekcja względem czasu
5.8. Wstępne rozpoznanie za pomocą automatycznych narzędzi
5.8.1. Wykorzystanie apache-scalp z regułami PHP-IDS
5.9. Wizualizacja logów
5.10. Wykorzystanie osi czasu
5.11. Analiza z wykorzystaniem programów powłoki
5.11.1. Konfiguracja oprogramowania wtop (logrep)
5.11.2. Wykorzystanie programu logrep (wtop)
5.12. Wykrywanie anomalii w logach
5.13. Analiza z wykorzystaniem programu Splunk
5.14. Wykrywanie backdoorów
5.15. Studium przypadków
5.15.1. Włamanie przez CMS Joomla
5.15.2. Atak słownikowy na CMS Wordpress
5.15.3. Wykonanie kodu z wykorzystaniem podatności LFI
5.16. Pisanie własnych narzędzi do analizy logów
5.17. Podsumowanie
6. Powłamaniowa analiza systemu Linux
6.1. Wykonanie kopii dysku
6.1.1. Zdalne wykonywanie obrazu dysku
6.2. Praca z obrazem dysku
6.2.1. Różnice w systemie plików
6.2.2. Weryfikacja pakietów
6.2.3. Baza hashy
6.2.4. Oś czasu
6.2.5. Weryfikacja na podstawie inode
6.2.6. Jądro systemu (kernel)
6.2.7. Moduły kernela
6.2.8. Narzędzia do wyszukiwania złośliwego oprogramowania
6.2.9. Analiza initrd (RAM dysk)
6.2.10. Logi
6.2.11. Konta użytkowników
6.2.12. Bity SUID i SGID
6.2.13. „Ukryte” pliki i katalogi
6.2.14. Odzyskiwanie usuniętych plików
6.2.15. Słowa kluczowe
6.2.16. Analiza pliku known_hosts
6.3. Praca na działającym systemie (Live Forensics)
6.3.1. Sudoers
6.3.2. Wirtualny system plików /proc
6.3.3. Zmienne środowiskowe
6.3.4. Biblioteki
6.3.5. Pakiety
6.3.6. Wykrywanie rootkitów
6.3.7. Weryfikacja konfiguracji
6.3.8. Otwarte pliki
6.3.9. Otwarte porty
6.3.10. „Ukryte” procesy
6.3.11. Sysdig
6.3.12. Podstawowa analiza działania programów
6.3.13. Zewnętrzne źródła
6.4. Analiza pamięci RAM
6.4.1. Wykonanie zrzutu pamięci
6.4.2. Tworzenie profilu pamięci
6.4.3. Analiza pamięci
6.5. Wykorzystywanie narzędzi anti-forensics do analizy
6.6. Podsumowanie
7. Analiza behawioralna złośliwego oprogramowania
7.1. Reguły Yara
8. Podsumowanie
                                        

Recenzja

Wybrane fragmenty recenzji mł. insp. dr hab. inż. Jerzy Kosiński – profesor Wyższej Szkoły Policji w Szczytnie, biegły sądowy:

Książka jest bogato ilustrowana przykładami, można wręcz powiedzieć, że to praktyczne działania związane z analizą powłamaniową są komentowane i wyjaśniane.
Zaletą książki jest jej aktualność (co nie jest często spotykane w opisywanym obszarze).
Dodatkowym atutem publikacji jest połączenie prezentacji wykorzystywanych narzędzi niekomercyjnych, z wyraźną ich przewagą i narzędzi komercyjnych, ale preferowanie wskazania manualnie przeprowadzonych analiz (włącznie z pisaniem własnych skryptów).
Dzięki takim książkom, każdy zainteresowany tematem użytkownik Internetu jest w stanie samodzielnie wykonać działania, które wydają się nieosiągalne dla niespecjalisty.

Dodatkowo następujące osoby przyczyniły się do recenzji merytorycznej oraz poprawy niedociągnięć: Dawid Skomski, Artur Byszko, Paweł Wyleciał, Dawid Osojca, Kacper Szurek, Mateusz Krzywicki, Dorota Kulas, Błażej Kantak, dr inż. Krystian Mączka (biegły sądowy), Daniel Suchocki (biegły sądowy), Gynvael Coldwind oraz Adam Zabrocki.

Referencje

TBA

Errata

W tym miejscu pojawią się erraty wraz z podziękowaniami, zachęcam do zgłaszania. Przez ten formularz proszę o zgłaszanie również niedziałających odnośników, które pojawiają się w książce.

Download

Skrypty znajdują się w repozytorium git.

Patronat

Patroni medialni książki: