¿Es más seguro para ssh como usuario privilegiado que para ssh y sudo?

22

Me encontré con este documento anterior, discutiendo la posibilidad de que la información de la longitud de la contraseña se divulgue cuando se usa SSH: Análisis de tiempo de pulsaciones de teclado y ataques de tiempo en SSH . El documento ha sido discutido aquí antes .

Esto me hizo preguntarme: ¿debería evitarse el ingreso de contraseñas a través de SSH? Si ese es el caso, ¿no sería preferible conectarse como usuario privilegiado (usando una clave ssh) que conectarse como usuario sin privilegios y luego sucesivamente sudo en la cuenta raíz? Usando el método anterior, no se transferiría ninguna contraseña, mientras que con el último, podría ser posible adivinar la contraseña. Incluso si ssh está configurado para permitir solo el inicio de sesión sin contraseña, esto podría usarse para leer / enviar correos o acceder a cualquier otro servicio que esté disponible para el usuario.

¿Es este un buen razonamiento? ¿Me salió mal la premisa en algún lugar?

    
pregunta tarleb 01.12.2015 - 12:07
fuente

4 respuestas

19

Es una cuestión de evaluación de riesgos.

Por un lado, tiene un artículo especulativo en el que basa la información efímera en algunos tiempos vagos.

Por otro lado, tiene la capacidad de conectarse a ssh como usuario (lo ideal es usar las teclas ssh), y luego hacer un sudo (posiblemente sin contraseña, depende de su caso específico). Se encuentra en un entorno altamente estándar, con las mejores prácticas implementadas.
Incluso si ssh con una contraseña, entonces ingrese una contraseña para sudo - está en los ámbitos de las mejores prácticas mencionadas anteriormente.

El compromiso del correo electrónico a través de los ataques de tiempo no es realista (lo que se obtiene es, en el mejor de los casos, algunas longitudes de "cosas". Con suerte y entornos específicos, puede correlacionar esta longitud con las contraseñas).

    
respondido por el WoJ 01.12.2015 - 12:44
fuente
12

"conectarse como un usuario sin privilegios y luego sudo sucesivamente en la cuenta raíz" suele ser la forma recomendada de usar los sistemas UNIX. Muchas distribuciones están configuradas de forma predeterminada para no permitir inicios de sesión con root y esperan que los usuarios sudo cuando necesiten privilegios de root. Pero la razón por la que dio no está entre las principales.

  • En un sistema con varios administradores, no es necesario que compartas la misma contraseña de root entre varias personas, ya que cada sudoer puede tener una contraseña de root diferente.
  • En un sistema con varios administradores, sudo puede registrar qué usuario ejecuta un comando. Cuando todos los administradores usan la cuenta root , todas las entradas de registro aparecerán como usuario root y no podrá saber quién lo hizo.
  • Los atacantes que intentan adivinar la contraseña también deben adivinar un nombre de usuario válido.
  • Evita que las personas utilicen privilegios de root para tareas que no lo requieren, porque escribir sudo delante de cada comando es un trabajo adicional.
respondido por el Philipp 01.12.2015 - 12:58
fuente
4

Otra cosa a considerar si inicia sesión como un usuario normal y luego usa sudo es que cualquiera que rompa su cuenta de usuario normal puede modificar su entorno para que la próxima vez que inicie sesión e intente usar sudo, intercepte la solicitud y la capture. su contraseña y / o ejecute su software malvado como root.

En general, aunque desaconsejaría los inicios de sesión basados en contraseñas como root, creo que los inicios de sesión de ssh key como root no suponen un mayor riesgo que otras opciones para obtener acceso a root y son mucho más convenientes que tener que usar sudo.

    
respondido por el Peter Green 01.12.2015 - 16:27
fuente
3

Otras razones para no ssh como root:

  • sudo puede iniciar sesión cada vez que se usa para que puedas hacer un mejor seguimiento de quién hizo qué y cuándo
  • por error, escribir incorrectamente un comando para el que no necesita privilegios es mucho menos probable que cause un daño grave
  • puede tener una contraseña de contraseña diferente a la de su contraseña de usuario, lo que significa que un atacante tendría que tener la contraseña Y 2 contraseñas diferentes para comprometer ese sistema
  • mejores registros ssh para que puedas conocer a John conectado a ssh y luego a linda en lugar de a la raíz misteriosa.
  • Si está preocupado por la posibilidad de que los ataques se utilicen para rastrear una contraseña, debería preocuparse más por reutilizar una contraseña con otros servidores / servicios. Sería mejor aplicar una política de no reutilizar las contraseñas, ya que es mucho más probable que un atacante haya encontrado su nombre de usuario y contraseña de otro servicio que si un atacante tiene suficiente acceso a la red para determinar qué tan rápido se presionan las teclas y cómo se usan. que.
  • Si usa un administrador de contraseñas y tiene que copiar / pegar las contraseñas en su terminal, no podrá calcular cuánto tiempo le lleva a sus dedos moverse de una tecla a otra.
respondido por el Erroneous 01.12.2015 - 17:22
fuente

Lea otras preguntas en las etiquetas