Ich benutze Ubuntu 12.04
Ich habe das folgende Tutorial gelesen, wie man unter Linux auf den Inhalt des RAM zugreift ....
http://www.rootninja.com/using-dd-to-search-for-strings-in-memory-or-devices/
Code:
dd if=/dev/mem | hexdump -C | grep “string to search for”
Also führe ich den Code aus ...
Code:
sudo dd if=/dev/mem | hexdump -C > NAMEOFOUTPUTFILEHERE.txt
Und ... es beginnt, HEX-Code abzupumpen, bis einige Sekunden später steht:
dd: reading `/dev/mem': Operation not permitted
2056+0 records in
2056+0 records out
1052672 bytes (1.1 MB) copied, 0.44834 s, 2.3 MB/s
Im Grunde genommen kann ich ungefähr 3,3 MB RAM-Dump-Inhalt abrufen - bis das Programm stoppt und sagt "Operation nicht erlaubt".
Ich frage mich also, warum ich nicht den gesamten RAM-Inhalt ausgeben kann. Ist dies eine absichtliche Einschränkung in Ubuntu, um böswillige Hacker zu stoppen? Oder ist es etwas anderes? Weiß das jemand? Vielen Dank
1052672 bytes (1.1 MB) copied
. Nicht 3,3 MB (noch 2,3 MB / s, was eine Geschwindigkeit war).Antworten:
Der Linux-Kernel auf Ihrer Ubuntu-Installation wird mit einer Einstellung * ausgeliefert, die die RAM-Extraktion auf 1 MB begrenzt.
Wenn Sie nicht möchten, dass Sie den Kernel entweder ohne ihn neu kompilieren können (offensichtliche Einschränkung: Sie verringern die Sicherheit!), Oder Sie können das forensische Kernelmodul fmem herunterladen und modifizieren, um dies zu umgehen. Das bietet ein / dev / fmem-Gerät ohne Sicherheit.
Wie von Opello erwähnt: Sie können auch
strict-devmem=0
im Kernel cmdline verwenden.* :
STRICT_DEVMEM=y
(siehe zB / boot / config-KERNELVERSION)quelle
strict-devmem=0
die Kernel-Cmdline übergeben.