Intentando acceder a RAM / dev / mem ... dice "Operación no permitida"

9

Estoy usando Ubuntu 12.04

Leí el siguiente tutorial sobre cómo acceder a los contenidos de RAM en Linux ...

http://www.rootninja.com/using-dd-to-search-for-strings-in-memory-or-devices/

Código:

dd if=/dev/mem | hexdump -C | grep “string to search for”

Entonces, ejecuto el código ...

Código:

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

Y ... comienza a bombear código HEX, hasta unos segundos más tarde, donde dice:

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

Básicamente, puedo obtener unos 3,3 MB de contenido de volcado de RAM, hasta que el programa se detiene y dice "Operación no permitida"

Y entonces me pregunto por qué no puedo volcar todo el contenido de RAM. ¿Es esta una limitación deliberada en Ubuntu para detener a los hackers maliciosos? ¿O es otra cosa? ¿Alguien sabe? Gracias


fuente
3
OK ... olvídalo ... resulta que Ubuntu tiene un límite de 1 MB en la extracción de RAM, como se define en el kernel ... y obviamente, eso es una buena seguridad, porque entonces un hacker no puede extraer tus contraseñas de RAM, etc. Y entonces ... sí ... este hilo ahora está RESUELTO Aquí está la información completa, para cualquier persona interesada ...
1
si su núcleo se compiló con STRICT_DEVMEM = y (consulte, por ejemplo, / boot / config-KERNELVERSION), solo se lee el primer 1MB de / dev / mem. Esto no es tanto un problema de versión del núcleo, como resultado de cómo se compiló el núcleo de su propia máquina; la mayoría de los núcleos de distribución tendrán esta restricción en su lugar por una buena razón. Puede descargar e insertar el módulo forense del núcleo fmem para solucionar esto; ¡bajo tu propio riesgo! mmmod lo más pronto posible después. El módulo fmem proporciona un dispositivo / dev / fmem sin restricciones de seguridad.
1
"soy capaz de obtener unos 3,3 MB de contenido de volcado de RAM-". Uhm, eres? Todo lo que veo es 1052672 bytes (1.1 MB) copied. No 3.3MB (ni 2.3MB / seg que era una velocidad).
Hennes

Respuestas:

4

El kernel de Linux en su instalación de Ubuntu se envía con una configuración * que limita la extracción de RAM a 1 MB.

Si no desea que pueda volver a compilar el núcleo sin él (obvio: ¡está disminuyendo la seguridad!) O puede descargar e insertar el módulo de núcleo forense fmem para solucionar este problema. Eso proporciona un dispositivo / dev / fmem sin ninguna seguridad.

Como mencionó Opello: también se puede usar strict-devmem=0en el cmdline del núcleo.


* : STRICT_DEVMEM=y(ver por ejemplo / boot / config-KERNELVERSION)

Hennes
fuente
3
También puedes pasar strict-devmem=0el cmdline del kernel.
opello
Solo en Fedora y distribuciones relacionadas, si * incluso * este día
mirh