¿Existe algún problema de seguridad en Linux que permita que cualquier aplicación monitoree la pantalla?

5

Por lo que entiendo, /dev/fb0 contiene información de los datos mostrados en la pantalla.
¿No es un problema de seguridad que puedo leer de él como un usuario sin privacidad? ¿No significa esto que cualquier aplicación puede espiar la pantalla?

Además, ¿hay un problema similar en otros sistemas operativos?

    
pregunta Markonius 20.02.2018 - 21:24
fuente

1 respuesta

2

Hah, interesante. Acabo de probar esto en una consola y tienes razón:

unprivileged $ echo "ABABABABABAB" > /dev/fb0

(escribe unos pocos píxeles en la esquina superior izquierda de la pantalla)

unprivileged $ dd if=/dev/fb0 of=read_fb.dat bs=12 count=1
unprivileged $ cat read_fb.dat
ABABABABABAB

Por lo tanto, un usuario sin privilegios puede escribir y leer desde el framebuffer. No funcionó en mi servidor X porque no lo he configurado para usar el framebuffer, pero podría funcionar si cambié mi configuración (nuevamente, ya que X no tiene aislamiento y una aplicación puede escucharlo en cualquier otro (incluidos los movimientos del mouse y los golpes de teclas), esto realmente no agrega nada a la superficie de ataque si está ejecutando bajo X - Wayland debería mejorar esto).

Entonces, si lograba que un usuario confiado ejecutara un programa que leía la pantalla, podría obtener sus planes para dominar el mundo (o las partes de la misma). que son visibles en la pantalla, de todos modos):

$ cat my-secret-plan-for-world-domination.txt
$ ...
$ program-which-reads-screen

O incluso peor:

unprivileged $ sudo /bin/bash
root $ output-some-privileged-information-to-screen
root $ exit
unprivileged $ program-which-reads-screen

Pero si piensas en esto, esto realmente no es muy sorprendente, porque cada vez que tomas una captura de pantalla, haces lo mismo (en Linux, una búsqueda rápida revela que fbgrab toma una captura de pantalla usando el framebuffer). Así que diría que cualquier sistema operativo que te permita instalar programas que puedan realizar capturas de pantalla a pantalla completa tiene los mismos problemas.

Lo que hay que tener en cuenta, creo, es que alguien podría instalar una grabadora de pantalla sin tu conocimiento, que luego grabaría toda tu sesión, incluso si no estás ejecutando bajo X y no lo esperas. Es el colgante de un escenario de keylogging.

En el sistema operativo Qubes, el gestor de marcos es manejado por el dom0, por lo que asumo que los otros vms no pueden acceder a toda la pantalla, sino solo a la parte que muestra sus ventanas. Esto todavía significa que las aplicaciones que se ejecutan en la misma VM pueden espiarse entre sí, pero no en la salida generada en otra VM, y solo un proceso dom0 podría registrar toda la pantalla.

    
respondido por el Pascal 20.02.2018 - 23:28
fuente

Lea otras preguntas en las etiquetas