Nie, nie dam mojego memory dump

Jak być może pamiętacie pisałem o problemie związanym z memory leak (Miałem memory leak). Poprzez blog Network Monitor przesłałem zapytanie, czy problem jest znany. Okazało się, że nie. Rozpoczął się proces diagnostyki błędu, przesłanie informacji o konfiguracji, sposobu odtworzenia błędu, (...). W końcu pojawiła się pytanie o możliwość wykonania memory dump i przesłania go do analizy. Niestety, musiałem odmówić.

Jednym z moich pobocznych (przynajmniej jak na razie) zainteresowań jest tematyka związana z forensic. Tu z kolei w ciągu ostatniego czasu (kilka ostatnich lat) dokonał się ogromny postęp w dziedzinie analizy pamięci operacyjnej. Nic w tym dziwnego, w pamięci jest (prawie) wszystko. Jeśli się do tego doda fakt, iż tej pamięci w obecnych komputerach jest sporo, ilość informacji możliwych do uzyskania jest duża. Wcześniej ta sama informacja oczywiście również była dostępna, przy czym często znajdowała się w pliku wymiany, tak więc analiza była o tyle utrudniona, że przykładowo przestrzeń adresową procesu trzeba było składać z kawałków rozsianych po pamięci fizycznej i pliku (plikach) wymiany (co oczywiście nadal może być wymagane, nawet dziś).

W pamięci znajduje się wszystko, korzystając z narzędzi typu Volatility czy Memoryze każdy może się o tym przekonać. Można też użyć innych “zaawansowanych” narzędzi do analizy, takich jak strings i grep , można potraktować obraz pamięci jako “uszkodzony dysk” i spróbować “odzyskać z niego dane” przy pomocy carvera typu PhotoRec. Wszystko to można wykonywać zdalnie na działającym systemie korzystając z F-Response (mój krótki opis narzędzia). Na stronie Forensic Wiki: List of Volatility Plugins dostępna jest lista rozszerzeń dla wspomnianego Volatility , które umożliwiają między innymi wyszukiwanie w zrzucie pamięci kluczy kryptograficznych, czy kluczy rejestrów zawierających na przykład hashe haseł.

Z ciekawych wpisów w tym temacie (szybkie przeszukanie subskrybowanych przeze mnie blogów):

Temat analizy pamięci jest poruszany również w książce Windows Forensic Analysis.

Gdybym nie wiedział o tym wszystkim, o czym napisałem, pewnie z przekazaniem memory dump nie byłoby większego problemu. Gdyby maszyna, na której występuje problem, nie była maszyną produkcyjną, pewnie też. A tak... nie, nie dam mojego memory dump.

Oryginał tego wpisu dostępny jest pod adresem Nie, nie dam mojego memory dump

Autor: Paweł Goleń