Tentative d'accès à RAM / dev / mem… dit «Opération non autorisée»

9

J'utilise Ubuntu 12.04

J'ai lu le tutoriel suivant sur la façon d'accéder au contenu de la RAM sous Linux ....

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”

Donc, je lance le code ...

Code:

sudo dd if=/dev/mem | hexdump -C > NAMEOFOUTPUTFILEHERE.txt

Et ... il commence à pomper le code HEX, jusqu'à quelques secondes plus tard, où il dit:

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

Donc, fondamentalement .. Je suis capable d'obtenir environ 3,3 Mo de contenu de vidage de RAM - jusqu'à ce que le programme s'arrête, en disant "Opération non autorisée"

Et donc je me demande pourquoi je ne suis pas en mesure de vider l'intégralité du contenu de la RAM? Est-ce une limitation délibérée dans Ubuntu, pour arrêter les pirates malveillants? Ou s'agit-il d'autre chose? Est-ce que quelqu'un sait? Merci


la source
3
OK ... oubliez ça ... il s'avère qu'Ubuntu a une limite de 1 Mo sur l'extraction de RAM, comme défini dans le noyau .. et évidemment, c'est une bonne sécurité, car alors un pirate ne peut pas extraire vos mots de passe de la RAM, etc. Et alors ... ouais .... ce fil est maintenant RESOLU Voici les informations complètes, pour toute personne intéressée ....
1
si votre noyau a été compilé avec STRICT_DEVMEM = y (voir par exemple / boot / config-KERNELVERSION) alors seul le premier 1 Mo est lu depuis / dev / mem. Ce n'est pas tellement un problème de version du noyau, en raison de la façon dont le noyau de votre propre machine a été compilé; la plupart des noyaux de distribution auront cette restriction en place pour une bonne raison. Vous pouvez télécharger et insérer le module fmem du noyau médico-légal pour contourner ce problème; à vos risques et périls! rmmod le plus tôt possible après. Le module fmem fournit un périphérique / dev / fmem sans aucune restriction de sécurité.
1
"suis capable d'obtenir environ 3,3 Mo de contenu de vidage de RAM-". Uhm, tu l'es? Tout ce que je vois, c'est 1052672 bytes (1.1 MB) copied. Pas 3,3 Mo (ni 2,3 Mo / sec qui était une vitesse).
Hennes

Réponses:

4

Le noyau linux de votre installation Ubuntu est livré avec un paramètre * qui limite l'extraction de RAM à 1 Mo.

Si vous ne souhaitez pas que vous puissiez recompiler le noyau sans lui (caverne évidente: vous réduisez la sécurité!) Ou vous pouvez télécharger et insmoder le module fmem du noyau médico-légal pour contourner ce problème. Cela fournit un périphérique / dev / fmem sans aucune sécurité.

Comme mentionné par Opello: vous pouvez également utiliser strict-devmem=0dans le noyau cmdline.


* : STRICT_DEVMEM=y(voir par exemple / boot / config-KERNELVERSION)

Hennes
la source
3
Vous pouvez également passer strict-devmem=0dans la cmdline du noyau.
opello
Uniquement sur Fedora et les distributions associées, si * même * ce jour
mirh