devmem: „/dev/mem“ kann nicht geöffnet werden: Berechtigung verweigert

devmem: „/dev/mem“ kann nicht geöffnet werden: Berechtigung verweigert

Ich habe 2 Telefone (Samsung Galaxy S4 LTE I9505, Android 4.4.2 Kitkat), die ich bereits gerootet habe und auf die ich Root-Zugriff habe. Zuvor konnte ich auf meinem gerooteten Samsung Galaxy S3 LTE I9505 mit Android 4.1.2 Jelly Bean über das DD-Verfahren von /dev/mem auf Teile des Gerätespeichers zugreifen.

Ich möchte den Kernelcode-Teil des RAM abrufen, um Reverse Engineering des laufenden Kernels des Telefons durchzuführen, und ich kenne den genauen Adressbereich, in dem sich der Kernelcode befindet (durch Verwendung von cat /proc/iomem). Auf dem 2 S4 mit Kitkat 4.4.2 kann ich jedoch /dev/mem nicht auf dem Telefon gemountet sehen, wenn ich die ADB-Shell (mit su) verwende. Wenn ich versuche, „cat /dev/mem“ oder „busybox devmem 0x80208000“ zu verwenden, erhalte ich die Fehlermeldung „Berechtigung verweigert“.

Wenn ich jedoch ES File Explorer mit aktiviertem Root Explorer verwende, kann ich sowohl mem als auch kmem in /dev sehen. Weiß jemand, wie man mit diesem Problem umgeht? Ich muss mit dem Busybox-Befehl devmem auf /dev/mem zugreifen, um den Speicher im laufenden Betrieb zu bearbeiten.

Ausgabe von „cat /dev/mem“:

1|root@jflte:/ # cat /dev/mem | wc                                             
tmp-mksh: cat: /dev/mem: Permission denied
    0         0         0

Ausgabe von „busybox devmem“:

root@jflte:/ # busybox devmem 0x80208000 16
devmem: can't open '/dev/mem': Permission denied

Antwort1

Denn unter 4.4.2 (zumindest auf Samsung S4) ist Selinux auf „Erzwingen“ eingestellt, was dazu führt, dass Sie /dev/mem nicht auflisten oder sogar lesen können.

Da Sie das Telefon gerootet haben, gehen Sie von der ADB-Shell aus in „su“ und verwenden Sie den Befehl „getenforce“. Er sollte Ihnen „Enforcing“ zurückgeben. Sie können Selinux vorübergehend deaktivieren, indem Sie „setenforce 0“ verwenden. Dadurch wird der Selinux-Modus auf „Permissive“ geändert und Sie können /dev/mem lesen oder auflisten.

verwandte Informationen