Speicher auslesen für Einsteiger

Diesmal soll es um ein etwas technisches gehen und zwar das Auslesen des Hauptspeichers. Zunächst wird in Linux ein Prozess im Hintergrund gestartet und zwar “top”. Von diesem benötigt man zuerst die PID, die dann wiederum für gcore benutzt wird um den Inhalt des RAMs zu sichern. Die sogenannte Core-Datei lässt sich jetzt nach Mustern absuchen. Im Beispiel wird nach dem Textstring “load average” gesucht, der bei top an prominenter Stelle angezeigt wird.

top
ps -e
sudo gcore 3431
objdump -s core.3431 | grep -i 'load average'

Aber geht das auch mit größeren Anwendungen? Ja, wenn man den Coredump von Firefox erzeugt, hat man eine Datei die 500 MB groß ist. Erzeugt wird dabei nur die Momentaufnahme, also das was gerade im Speicher war.

Ebenfalls interessant ist ein Coredump vom Geoclue Prozess. Wenn man diesen nach bekannten SSID Namen durchsucht wird man feststellen, dass Geoclue im RAM alle Namen bereithält die es aktuell empfangen kann. Um beispielsweise zu testen, ob Geoclue auch brav die Fritzbox bei sich im Speicher hält reicht folgender Befehl:

objdump -s core.1170 | grep -i 'fritz'
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.