Meltdown - PoC - La lectura de la dirección física con KASLR deshabilitado no funciona

3

Trabajando con este PoC

enlace

Ejecutándolo:

# ./secret 
[+] Secret: Sample text
[+] Virtual address of secret: 0x4af528
[+] Physical address of secret: 0x172bc3528
[+] Exit with Ctrl+C if you are done reading the secret

Sin embargo, la lectura no muestra nada:

$ ./physical_reader 0x172bc3528
[+] Physical address       : 0x172bc3528
[+] Physical offset        : 0xffff880000000000
[+] Reading virtual address: 0xffff880172bc3528

Tengo KASLR deshabilitado.

 BOOT_IMAGE=/boot/vmlinuz-4.4.0-93-generic root=UUID=6c2b06f8-b8dd-4117-a77e-2425b27fb749 ro quiet splash crashkernel=384M-2G:128M,2G-:256M vt.handoff=7

La prueba de confiabilidad funciona bien:

# ./reliability 
[-] Success rate: 99.40% (read 166 values)

¿Alguien tiene una idea de por qué no puede leer la dirección de memoria de un secreto?

Sin KASLR, el desplazamiento físico permanecerá siempre 0xffff880000000000, ¿verdad?

Gracias,

    
pregunta android_dev 11.01.2018 - 14:46
fuente

1 respuesta

1

OK lo descubrió. Basado en esto:

enlace

Con 4 núcleos instalé y ejecuté la utilidad de estrés:

stress -i 4

Y pude leer la memoria con mis dos PoC que tenía.

Sí, el desplazamiento físico fue 0xffff880000000000

    
respondido por el android_dev 11.01.2018 - 16:12
fuente

Lea otras preguntas en las etiquetas