¿Tiene sentido verificar la integridad de los comandos después de ejecutarlos como root?

0

El otro día, Dave se apresuraba para su proyecto por la noche. Quería instalar homebrew en su Mac. Tecló "homebrew" en la barra de búsqueda de Safari, presionó regresar y hizo clic en el primer enlace. Copió el comando en la página web, lo pegó en el terminal y luego ingresó su contraseña de sudo.

Después de eso, Alice pasó y le preguntó si había verificado el comando antes de ingresar la contraseña de sudo. Dave lo comprobó de inmediato: se desplazó hacia arriba y /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" todavía estaba allí. Safari mostraba brew.sh y el certificado era válido. El portapapeles contenía el mismo comando.

Sin embargo, Alice dijo que es demasiado tarde porque Dave ya ha escrito su contraseña de sudo, dando privilegio aumentado a un comando desconocido. ¿Dave hizo algo inseguro esta vez?

    
pregunta tonychow0929 17.11.2018 - 12:53
fuente

1 respuesta

0
  

¿Dave hizo algo inseguro esta vez?

Sí.//strong>

Hora de la historia:

Tenía un amigo Ramin en la universidad que solía comprobar si su jugo de naranja estaba cerrado correctamente agitando la botella boca abajo. Nosotros acuñamos un término después de él:

  

Def: Ramin Test : una prueba en la que solo estás preparado para uno de los posibles resultados.

Tu Dave sacó una prueba clásica de Ramin; instale algún software arbitrario, ejecútelo con sudo, luego pregunte si fue malicioso. ¿Qué hubiera hecho si la respuesta fuera "Sí"? ¿Destruir el portátil y comprar uno nuevo? ¿Cambiar todas sus contraseñas y llamar al banco para cancelar sus tarjetas de crédito? No creo que estuviera preparado para ese resultado.

Metáfora: digamos que abro un paquete de polvo blanco en un lugar público abarrotado, y luego pregunto si era ántrax. ¿Que voy a hacer? Todas estas personas ya están infectadas; el daño ya esta hecho. Del mismo modo, preguntar si algo es malware después de que se le haya permitido controlar su computadora es casi inútil.

Lo correcto es verificar que el software es confiable antes y le da el control de su computadora (también puede ejecutarla). Este es el punto de verificar la suma de comprobación de un archivo antes de abrirlo. Esta es la razón por la cual los administradores de paquetes de Unix adecuados o el sistema de firma de códigos de Windows verifican la firma digital en el momento de la instalación, y posiblemente también cada vez que se ejecute para asegurarse de que no se haya modificado.

    
respondido por el Mike Ounsworth 17.11.2018 - 17:06
fuente

Lea otras preguntas en las etiquetas