Surowy dostęp do pamięci jest przydatny podczas analizy danych lub hakowania urządzeń. Czasami potrzebujesz migawki pamięci, aby móc przeanalizować, co dzieje się z zablokowanymi programami ładującymi, uzyskaj plik migawkę lokalizacji pamięci, aby wyśledzić błąd lub po prostu znaleźć właściwą lokalizację pamięci Angry Punktacja ptaków. W tym miejscu Linux Memory Extractor, znany również jako. LiME kryminalistyka, wchodzi. LiME to ładowalny moduł jądra, który umożliwia dostęp do pełnego zakresu pamięci urządzenia. Gdy tylko moduł jądra zostanie załadowany do pamięci, po prostu wykonuje migawkę, umożliwiając bardzo wydajne debugowanie.
Poprosiłem Joe Sylve, autora LiME Forensics, aby wyjaśnił zalety LiME w porównaniu z tradycyjnymi narzędziami, takimi jak viewmem:
Aby odpowiedzieć na Twoje pytania, narzędzia zostały zaprojektowane z myślą o różnych zastosowaniach. LiME jest przeznaczony do pobierania pełnego zrzutu układu pamięci fizycznej RAM na potrzeby analiz kryminalistycznych lub badań bezpieczeństwa. Robi to wszystko w przestrzeni jądra i może zrzucić obraz do lokalnego systemu plików lub przez TCP. Został zaprojektowany tak, aby zapewnić możliwie najwierniejszą kopię pamięci fizycznej, minimalizując jednocześnie jej interakcję z systemem.
Wygląda na to, że viewmem to program użytkownika, który odczytuje zakres adresów pamięci wirtualnej z urządzenia pamięci, takiego jak /dev/mem lub /dev/kmem i wypisuje zawartość na standardowe wyjście. Nie jestem pewien, czy robi to więcej niż zwykłe użycie dd na jednym z tych urządzeń.
Jest to mniej akceptowalne w kryminalistyce z kilku powodów. Po pierwsze, /dev/mem i /dev/kmem są wycofywane i coraz więcej urządzeń nie jest dostarczanych z tymi urządzeniami. Po drugie, /dev/mem i /dev/kmem ograniczają odczyt z pierwszych 896MB RAM. Ponadto narzędzie powoduje kilka przełączeń kontekstu między obszarem użytkownika a obszarem jądra dla każdego odczytanego bloku pamięci i nadpisuje pamięć RAM swoimi buforami.
Powiedziałbym, że każde narzędzie ma swoje zastosowanie. Jeśli chcesz tylko poznać zawartość adresu znajdującego się w pierwszych 896 MB pamięci RAM, a Twoje urządzenie ma /dev/mem i /dev/kmem i nie zależy ci na przechwyceniu obrazu dźwiękowego z punktu widzenia medycyny sądowej, wtedy byłoby viewmem (lub dd) użyteczne. Jednak LiME nie został zaprojektowany specjalnie do tego przypadku użycia.
Najważniejszą rzeczą dla was, hakerów pamięci, jest to, że viewmem opiera się na /dev/mem I /dev/kmem urządzenia. Od /dev/mem I /dev/kmem urządzenia umożliwiają bezpośredni dostęp do pamięci urządzenia, stanowią one lukę w zabezpieczeniach. Te urządzenia z systemem Linux są wycofywane, ponieważ ostatnio stały się celem wielu exploitów. LiME nie tylko zastępuje narzędzie viewmem, ale robi to lepiej.
Producenci pamiętają: blokując funkcje pożądane przez programistów, promujesz rozwój lepszych narzędzi.
Źródło: LiME kryminalistyka i wywiad z autorem Joe Sylve
[Źródło zdjęcia: Prezentacja LiME autorstwa Joe Sylve’a]