Seguridad de instantáneas bajo X11

Seguridad de instantáneas bajo X11

Con instantáneas llegando a 16.04 LTS, hay unaentrada en el blogpor Matthew Garrett, un conocido colaborador del kernel de Linux y desarrollador principal del sistema operativo, diciendo:

...los snaps se ejecutan ilimitadamente y tienen acceso a prácticamente todo el sistema

Si el objetivo de tener instantáneas era imponer el aislamiento de las aplicaciones de todo el sistema, ¿por qué pueden acceder al sistema y ejecutarse sin restricciones? ¿Se debe presentar un informe de error? ¿Se van a tomar medidas para abordar este problema?

Respuesta1

Esto se relaciona específicamente con las instantáneas que usan X11. En otras palabras, las instantáneas sonnoejecutándose sin límites, pero si el confinamiento del complemento incluye acceso a X, entonces sí: tiene acceso a X. No involucra complementos que no usan las interfaces unity7o x11. El problema descrito en esa publicación de blog es una limitación bien conocida de X y es una de las razones por las que se están desarrollando tecnologías alternativas (por ejemplo, Mir).

Gustavo Niemeyer ha escrito unbuena publicación de blog que trata esto. Citaré aquí para la posteridad y para que esté completo:

Quienes se preocupan por la seguridad observarán que X11 no es, de hecho, un protocolo seguro. Una serie de abusos del sistema son posibles cuando le otorgamos este permiso a una aplicación. Otras interfaces como home darían acceso instantáneo a todos los archivos no ocultos en el directorio $HOME del usuario (aquellos que no comienzan con un punto), lo que significa que una aplicación maliciosa podría robar información personal y enviarla a través de la red (asumiendo también define un enchufe de red).

Algunos podrían sorprenderse de que este sea el caso, pero se trata de un malentendido sobre el papel de Snaps y Snappy como plataforma de software. Cuando instala software desde el archivo de Ubuntu, es una declaración de confianza hacia los desarrolladores de Ubuntu y Debian. Cuando instala los archivos binarios de Chrome o MongoDB de Google desde sus respectivos archivos, es una declaración de confianza hacia esos desarrolladores (¡estos tienen raíz en su sistema!). Snappy no elimina la necesidad de esa confianza, ya que una vez que le das acceso a un software a tus archivos personales, cámara web, micrófono, etc., debes creer que no utilizará esos permisos de manera maliciosa.

El objetivo del confinamiento de Snappy en esa imagen es habilitar un ecosistema de software que pueda controlar exactamente qué está permitido y a quién de una manera clara y observable, además del mismo cuidado procesal que todos hemos aprendido a apreciar en el mundo Linux. , no en lugar de eso. Impedir que las personas utilicen todos los recursos relevantes del sistema simplemente los obligaría a utilizar ese mismo software a través de mecanismos menos seguros en lugar de solucionar el problema.

Y lo que tenemos hoy es sólo el comienzo. Estas interfaces pronto serán mucho más ricas y detalladas, incluida la selección de recursos (por ejemplo, ¿qué puerto serie?), y algunas de ellas desaparecerán por completo en favor de opciones más seguras (Unity 8, por ejemplo).

Respuesta2

El problema no está en las instantáneas, sino en X11, que es una tecnología de 30 años diseñada sin muchas consideraciones de seguridad.

Para "abordar el problema", simplemente necesita deshacerse de X11. Los sistemas sin él, como los servidores, pueden beneficiarse del aislamiento instantáneo en este momento. El nuevoMirque reemplazará a xserver, con suerte más temprano que tarde, se supone que solucionará los problemas de seguridad de X11.

Eres más que bienvenido a leer el libro de Matthew Garrett.entrada en el blogpara satisfacer tu curiosidad. Dice:

El problema aquí es el sistema de ventanas X11. X no tiene un concepto real de los diferentes niveles de confianza en las aplicaciones. Cualquier aplicación puede registrarse para recibir pulsaciones de teclas de cualquier otra aplicación. Cualquier aplicación puede inyectar eventos clave falsos en el flujo de entrada. Una aplicación que de otro modo estaría limitada por fuertes políticas de seguridad puede simplemente escribir en otra ventana. Una aplicación que no tiene acceso a ninguno de sus datos privados puede esperar hasta que su sesión esté inactiva, abrir una terminal ilimitada y luego usar curl para enviar sus datos a un sitio remoto. Mientras el escritorio de Ubuntu siga usando X11, el formato Snap le proporciona muy poca seguridad significativa.

información relacionada