Jak odkryć dane ulotne poprzez analizę Live RAM…

Dlaczego Live RAM jest taki ważny? Przechwytywanie i analiza danych ulotnych (danych zawartych w pamięci RAM) jest niezbędna do odkrywania istotnych dowodów elektronicznych, a wśród nich fragmentów czatów, list uruchomionych procesów, klucz deszyfracyjnych dla szyfrowanych woluminów działających w czasie analizy i wielu innych.

Wykonywanie zrzutu pamięci RAM (Live RAM) powinno stać się standardową procedurą podczas zabezpieczania materiału dowodowego jeszcze przed wyciągnięciem wtyczki i zabraniem dysku twardego.

Oczywiście analiza RAM na żywo ma swoje ograniczenia. Żywotność wielu rodzajów artefaktów przechowywanych w pamięci ulotnej komputera jest krótkotrwała. Chociaż informacje dotyczące uruchomionych procesów nie znikną dopóki nie zostaną zakończone, fragmenty czatów i innej komunikacji mogą być w każdej chwili zastąpione innymi treściami, z uwagi na wymagania systemu operacyjnego żądającego dodatkowego miejsca w pamięci.

Poza tym zbieranie danych ulotnych posiada ograniczenia prawne, organizacyjne i techniczne. Dobór metod i narzędzi do ich przechwytywania jest niezwykle ważny. Niewłaściwe narzędzia lub niepoprawne ich użycie może spowodować że analiza zakończy się niepowodzeniem. Próba użycia niewłaściwego narzędzia może nie tylko nie dać oczekiwanych rezultatów ale również nieodwracalnie zniszczyć istniejące dowody. Jak wiadomo wiele rodzajów gier komputerowych, czatów, programów szyfrujących czy złośliwego oprogramowania posiada wbudowaną ochronę przed zrzutami pamięci.

Istnieje szeroki wybór narzędzi i metod do przechwytywania danych ze zrzutu pamięci RAM (Live RAM).

Z punktu widzenia informatyki śledczej istnieją pewne wymagania, którym takie narzędzia muszą ściśle odpowiadać. Poniżej, w przypadkowej kolejności, wykaz najważniejszych wymagań.

Działanie w kernel-mode jest niezbędne w zakresie doboru narzędzi informatyki śledczej służących do przechwytywania pamięci. Wiele aplikacji aktywnie chroni swoje zestawy pamięci przed dumpowaniem. Użycie narzędzi działających w trybie użytkownika jest czystym samobójstwem. W najlepszym przypadku, takie narzędzia będą czytać losowe dane zamiast rzeczywistych informacji. W najgorszym przypadku, ich proaktywna ochrona przed debugowaniem podejmie natychmiastowe działania aby skutecznie zniszczyć chronione informacje, a następnie zamknąć i/lub ponownie uruchomić komputer, przez co dalsza analiza będzie niemożliwa. Aby tego uniknąć śledczy muszą użyć narzędzia umożliwiającego pozyskiwanie danych z pamięci z poziomu jądra – najbardziej uprzywilejowanego poziomu systemu.

Możliwie małe „footprint”. Im mniej śladów zostanie pozostawionych przez narzędzie do pozyskiwania danych z pamięci tym lepiej. Wszystkie narzędzia zostawiają ślady co potencjalnie może doprowadzić do zniszczenia dowodów. Im mniej śladów tym lepiej.

Mobilność

Narzędzia do zrzutu pamięci muszą być przenośne i gotowe do pracy na urządzeniu, które dostarczy śledczy (np. pamięć przenośna lub lokalizacja sieciowa). Narzędzia wymagające instalacji są niedopuszczalne z wiadomych powodów.

Dostęp tylko do odczytu. Na koniec, każde wartościowe narzędzie śledcze nie będzie nigdy niczego zapisywać na badanym dysku, nie będzie tworzyć lub modyfikować wartości rejestru itp.

Na tą chwilę nie ma narzędzia informatyki śledczej mogącego wyodrębnić wszystkie dane ze zrzutu pamięci.