El por qué de los peligros de acceder como root en las X

En relación con el hilo que pongo a continuación

http://www.esdebian.org/foro/34493/quitar-mensajeaviso-cuando-inicio-root-gnome-buscado-cielo-tierra

se ha suscitado una polémica dentro de los cauces de la cordialidad, donde se aconseja encarecidamente no acceder a un entorno gráfico logueado como root, ya que entraña una serie de peligros.
Había leído ya anteriormente que se desaconsejaba esta práctica por razones de seguridad.
Curioso que es uno, he estado buscado los porqués de no hacerlo, y la verdad no doy con ellos -seguramente no utilizo las palabras adecuadas en el buscador-; sólo se limitan a desaconsejar este logueo.
Entiendo que un peligro pueda ser que por error borres alguna cosa que no debieras, pero esto también se puede hacer utilizando su, o que a mayor cantidad de paquetes, más posibilidades de aparecer un bug, por el cual se pudiera acceder al sistema.
Os agradecería, a los que conocéis en profundidad el tema, que expusieseis las razones para no realizar "esta práctica de riesgo", y así satisfacer mi curiosidad, y espero que la de más gente. Saludos.

En español no hay demasiada documentación al respecto, por lo que tendrás que buscar en inglés.

Pero vamos que teniendo sólo en cuenta el factor humano, de cara a troyanos no es lo mismo que un troyano se cuele en una cuenta no privilegiada, que se cuele en una cuenta de root, y por no hablar de las cagadas de usuario.

Pero no solo eso, sino que las Xs son de por si inseguras ya que corren como root vía setuid-bit debido a que es (era) necesario para poder hablar con el hardware gráfico de forma directa. Ahora con Kernel Mode Setting y Graphics Execution Manager se puede hacer que el servidor X no hable directamente con el hardware gráfico, de este modo las llamadas al sistema no se hacen directamente.

Entonces imagínate si de por si el código de las Xs que tiene varias décadas y de por si una ejecución insegura y no solo eso sino que además los programas que hay por encima corren directamente como root, un fallo en uno de ellos (natural o artificial) dejaría abierta la puerta a un escalado de privilegios de forma directa.

Y esto sin meternos en profundidad en el funcionamiento de las Xs.

chacal escribió:

...las Xs son de por si inseguras ya que corren como root vía setuid-bit debido a que es (era) necesario para poder hablar con el hardware gráfico de forma directa. Ahora con Kernel Mode Setting y Graphics Execution Manager se puede hacer que el servidor X no hable directamente con el hardware gráfico, de este modo las llamadas al sistema no se hacen directamente...
Y esto sin meternos en profundidad en el funcionamiento de las Xs.

Vale, por fin algo de luz.
Entiendo que el propio funcionamiento de las X hace que éstas se ejecuten, ¿o hayan tenido que ejecutarse hasta ahora? como root,y que su diseño venga arrastrando este problema desde hace décadas, con lo cual, en sí mismas son un agujero en la seguridad.
Gracias chacal.

Gracias gomalaca por esas preguntas, que en sintesis no tenia ni idea de eso, la verdad a partir de tus dudas me etoy informando un poco sobre Kernel Mode Setting y Graphics Execution Manager (que lo dijo chacal) y esas dudas que fueron muy bienvenidas para mi que desconocia eso.

Gracias por haber preguntado eso, que no sabia nada de ese tema. dumb

Pero todos los dias aprendo algo nuevo en este foro tongue

Nota: Si llego a econtrar informacion relevante, la posteo aquí.

Saludos wink

Además, pones en peligro a todo el sistema antes posibles bugs de aplicaciones gráficas.

por ejemplo, hace algún tiempo, nautilus tenía un bug que hacía que cuando vaciabas la papelera borraba también la carpeta superior de donde había estado el archivo...

En un usuario normal, si era un archivo en $HOME, nautilus intentaba borrar toda /home, con lo que solo podia borrar el direcotrio de ese desafortunado usuario.

¿Pero que hubiera pasado si hubiera sido desde la cuenta de root? El $HOME de root es /root. Pues hubiera borrado /. Y como root.

Este es solo un ejemplo, puede que un poco drástico, pero sirve para mostrar cómo un bug que puede ser más o menos dañino para el usuario (o incluso imperceptible), puede resultar letal para el sistema ejecutado como root.

Y aunque se reduzca al simple hecho de ejecutar, por ejemplo, un navegador web como root. Hay programas que no están pensados para ejecutarse con permisos de superusuario, que son propensos a destapar vulnerabilidades con una facilidad pasmosa, ejecutar código malicioso, etc.

PD. Lo ideal siempre es rebajar privilegios lo máximo posible. La mayoría de aplicaciones de las X no necesitan ni deben tener ciertos poderes.