Analiza statyczna
Napisy i nagłówki
Analiza statyczna to bezpłatna lekcja Ethical Hacking Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Ethical Hacking Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Ethical Hacking Academy zawiera 4 lekcji w sumie.
Czym jest analiza statyczna?
Analiza statyczna bada próbkę malware'u bez jej uruchamiania. Sprawdzasz zawartość, strukturę i metadane pliku, aby ustalić, co może on robić.
Jest bezpieczniejsza niż uruchamianie nieznanego kodu i zwykle stanowi pierwszy etap każdej analizy malware'u.
Pracuj bezpiecznie
Nawet analiza statyczna powinna odbywać się w izolowanym środowisku: na dedykowanej maszynie wirtualnej bez poufnych danych, najlepiej z wyłączoną siecią.
Nigdy nie analizuj malware'u na głównym komputerze. Przypadkowe uruchomienie lub złośliwe archiwum może doprowadzić do jego przejęcia.
Obliczanie skrótu próbki
Najpierw oblicz skrót pliku (MD5, SHA-1, SHA-256). Skrót jest odciskiem palca używanym do identyfikowania próbki i wyszukiwania jej w bazach danych threat intelligence.
Przesłanie samego skrótu do VirusTotal pozwala uniknąć wysyłania całej próbki.
sha256sum sample.exeWyodrębnianie ciągów znaków
Polecenie strings wyodrębnia z pliku binarnego tekst możliwy do wyświetlenia. Może ujawnić adresy URL, adresy IP, ścieżki plików, klucze rejestru i komunikaty o błędach.
Te artefakty wskazują na możliwości malware'u i jego infrastrukturę command-and-control.
strings -n 8 sample.exe | lessIdentyfikowanie typu pliku
Nie ufaj rozszerzeniu pliku. Użyj polecenia file (i sprawdź bajty sygnatury), aby potwierdzić rzeczywisty format.
Plik wykonywalny systemu Windows zaczyna się od MZ (format PE), a binarny plik ELF systemu Linux od 0x7F ELF. Znajomość typu wyznacza dalszy przebieg analizy.
file sample.exe
# sample.exe: PE32 executable (GUI) Intel 80386Nagłówki PE
Pliki wykonywalne systemu Windows używają formatu Portable Executable (PE). Nagłówki opisują sekcje, punkt wejścia i znaczniki czasu.
Narzędzia takie jak PEview, pefile czy PE-bear analizują tę strukturę za Ciebie.
import pefile
pe = pefile.PE('sample.exe')
print(pe.FILE_HEADER.TimeDateStamp)Importy i IAT
Import Address Table (IAT) zawiera funkcje API, które program wywołuje z innych bibliotek DLL. Jest to jedno z najbogatszych źródeł wskazówek dotyczących zachowania programu.
Importy takie jak InternetOpenUrl, CreateProcess czy RegSetValue sugerują odpowiednio komunikację sieciową, uruchamianie procesów i utrzymywanie dostępu.
Sekcje i entropia
Pliki PE są podzielone na sekcje, takie jak .text (kod), .data i .rsrc (zasoby).
Wysoka entropia sekcji często wskazuje na pakowanie lub szyfrowanie, sugerując, że właściwy kod jest ukryty do momentu uruchomienia.
Mało ciągów znaków, mało importów?
Jeśli próbka zawiera bardzo mało czytelnych ciągów znaków i prawie żadnych importów, prawdopodobnie jest spakowana. Spakowane malware rozpakowuje się w pamięci podczas działania.
Oznacza to, że sama analiza statyczna nie ujawni wszystkiego; później będzie potrzebna analiza dynamiczna i rozpakowywanie.
Reguły YARA
Reguły YARA opisują wzorce ciągów znaków lub bajtów służące do klasyfikowania i wykrywania rodzin malware'u. Przeskanowanie próbki za pomocą zestawu reguł może szybko zidentyfikować znane zagrożenia.
Analitycy tworzą także własne reguły na podstawie artefaktów znalezionych podczas analizy statycznej.
yara malware_rules.yar sample.exeDokumentowanie ustaleń
Podczas całej analizy statycznej zapisuj każdy artefakt: skróty, podejrzane ciągi znaków, importy i anomalie sekcji. Stają się one IOC i pomagają zaplanować kolejne działania.
Dobre notatki pozwalają także powiązać próbkę ze znanymi rodzinami i uniknąć powtarzania pracy przy jej ponownej analizie.
Szybki sprawdzian
Przypomnij sobie, na co zwykle wskazuje wysoka entropia sekcji.
Podsumowanie
Rozumiesz już analizę statyczną malware'u:
- Badaj próbkę bez jej uruchamiania, na izolowanej maszynie wirtualnej.
- Obliczaj skróty, wyodrębniaj ciągi znaków i potwierdzaj typ pliku.
- Analizuj nagłówki PE, importy (IAT) i sekcje; wysoka entropia wskazuje na pakowanie.
- Używaj YARA do klasyfikowania znanych rodzin.
W następnym etapie zobaczysz zachowanie malware'u podczas analizy dynamicznej.
Często zadawane pytania
Czy lekcja „Analiza statyczna” jest bezpłatna?
Tak — pełny tekst „Analiza statyczna” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Ethical Hacking Academy, przejdź na CoddyKit PRO. Kurs Ethical Hacking Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Analiza statyczna”?
Napisy i nagłówki Ćwiczysz Ethical Hacking Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Ethical Hacking Academy?
Nie wymagamy żadnego doświadczenia. Ethical Hacking Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.
Ile czasu zajmuje lekcja „Analiza statyczna”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Ethical Hacking Academy?
Tak. Każda lekcja Ethical Hacking Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Analiza statyczna
- Analiza dynamiczna
- Podstawy dezasemblacji
- Rozpakowywanie