Este artículo describe un error en el que ingresar root cuando se le solicita un desbloqueo permite a cualquier usuario desbloquear las preferencias del sistema. Advierte que:
No hay necesidad de hacerlo usted mismo para verificarlo. Hacerlo crea una cuenta "raíz" que otros podrán aprovechar si no la deshabilita.
El artículo no describe qué hacer si un ingeniero demasiado ansioso reprodujo el problema y ahora necesita eliminar o deshabilitar la cuenta raíz.
¿Cómo se puede desactivar o eliminar esta cuenta de forma segura?
Esta página de Apple describe cómo deshabilitar la cuenta, pero esto no protege contra la falla porque la falla solo puede volver a habilitar la cuenta. Funcionará para restaurar el sistema a su estado normal con la raíz deshabilitada una vez que se solucione el error de seguridad.
Actualización 2017-11-29 16:43 UTC
Consulte Acerca del contenido de seguridad de la Actualización de seguridad 2017-001 para actualizar macOS High Sierra para evitar eludir la autenticación del administrador sin proporcionar la contraseña del administrador.
fuente
Respuestas:
Parche disponible, haga clic aquí, o simplemente actualice en la máquina
Curiosamente, todavía no hay parche para las versiones beta y de desarrollador de OSX, que yo sepa. Actualizaré esta respuesta tan pronto como escuche de ellos.
Descargue el parche de arriba. Dejando el resto de la publicación para la historia :-)
El CVE es CVE-2017-13872 y NIST actualizará el análisis en un futuro próximo.
Respuesta original, relevante sin parche
En primer lugar, no deshabilite la cuenta raíz a través de la GUI, tener una cuenta raíz "deshabilitada" es la causa del problema.
Deberá habilitar al usuario root y darle una contraseña. Esto es importante , ya que la vulnerabilidad también está disponible de forma remota, a través de VNC y Apple Remote Desktop (por nombrar algunos) (otra fuente) .
Hay dos formas básicas de hacer esto; GUI y terminal.
Primero apagado, GUI
Para habilitar la cuenta raíz, vaya a "Utilidad de directorio", es decir, cmd + espacio y busque. Presione el candado para desbloquear el "modo administrador", luego habilite la cuenta raíz mediante la edición -> "Habilitar usuario raíz".
Debería solicitar una contraseña de root, por ahora ingrese su contraseña normal (para que no la olvide). Si no solicita una contraseña, use Editar -> "Cambiar contraseña de root ..." arriba.
Terminal
Si eres más una persona terminal, usa lo siguiente:
Esto es suficiente con un terminal, el problema con la forma de la GUI es que tenemos que habilitar la cuenta para establecer una contraseña, lo que no tenemos que hacer con el terminal.
Notas
Incluso si tiene una contraseña establecida para la cuenta raíz, su computadora se volverá vulnerable si deshabilita la cuenta raíz. La acción de deshabilitar la cuenta raíz parece ser la culpable. Entonces, repito, el usuario root debería estar habilitado y tener una contraseña si usa la GUI, mientras que a través de la terminal solo usando 'passwd' es "ok" (aunque este estado es inalcanzable solo a través de la GUI). Parece que el "Deshabilitar usuario raíz" en "Utilidad de directorio" elimina la contraseña de la cuenta raíz, en cierto sentido, proporcionándole una cuenta raíz sin contraseña que es vulnerable.
Parece que intentar iniciar sesión con "root" en una ventana de inicio de sesión del sistema habilita la cuenta root si está deshabilitada previamente. Es decir, con una cuenta raíz deshabilitada, debe ingresar la raíz dos veces en las ventanas de inicio de sesión de los sistemas para obtener acceso a la raíz, y (según mis pruebas) en el primer intento, la cuenta raíz está habilitada (sin contraseña si no se establece a través de
passwd
), y en el segundo intento que atraviesas.Parece que el problema ha estado abierto desde al menos 2017-11-13 (13 de noviembre), cuando se menciona en el foro de soporte de Apple .
Por favor, demuéstrame que estoy equivocado, realmente agradecería estar equivocado en este momento.
Actualización de miedo
Después de habilitar la cuenta raíz sin contraseña (es decir, a través del panel de preferencias del sistema y hacer clic en un "bloqueo" e ingresar "root" con una contraseña en blanco una, dos o tres veces (el número depende del estado inicial)) es posible iniciar sesión en la computadora desde la pantalla de inicio de sesión principal usando "root" y una contraseña en blanco (!). SSH / Telnet no parece funcionar, pero Apple Remote Desktop, Screen Sharing y VNC son vulnerables.
Por lo tanto, para los administradores de redes puede ser interesante dejar temporalmente los paquetes en los siguientes puertos:
Lectura adicional:
Un valiente intento de hacer referencia a otras fuentes que tratan el tema. Edite y actualice mi respuesta si tiene más.
fuente
/dev/null
para root. De esta manera, el acceso a la cuenta raíz se produce a través desu
syscalls para usuarios con ese permiso.Si no puede instalar el parche oficial o no quiere confiar en que funcionó, entonces
No desea deshabilitar el usuario root solo en High Sierra.
Para asegurar su Mac, habilite root con una contraseña segura larga.
No vamos a cambiar esto en el trabajo hasta que salga la próxima versión completa para macOS, que probablemente sea 10.13.2
A menos que tome medidas, el usuario root está deshabilitado de inmediato y esto es malo si su Mac no está parcheada correctamente.
Si lo desea, opcionalmente endurezca la carcasa hasta que Apple tenga un parche o corrección oficial.
Aquí hay un gran script para establecer una contraseña raíz aleatoria y cambiar / configurar el shell raíz para
/usr/bin/false
que, incluso si se adivina la contraseña, el shell raíz no puede iniciar sesión:Básicamente hace tres cosas clave:
La creación de UserShell es si el shell no está configurado, y el script completo busca un shell existente y
-change
lo encuentra en lugar de-create
usarlo.¿Cómo me protejo de la vulnerabilidad raíz en macOS High Sierra?
fuente
Ejecute una actualización de software desde la App Store. Apple lanzó una actualización de seguridad esta mañana.
Acerca del contenido de seguridad de la Actualización de seguridad 2017-001
Actualizaciones de seguridad de Apple
fuente
Debe iniciar sesión como usuario root y cambiar la contraseña a algo seguro. Si realmente crea una nueva cuenta (en lugar de habilitar la cuenta raíz ya existente), primero debe eliminar esa cuenta.
fuente
Apple acaba de lanzar una actualización para solucionar el problema.
Actualización de seguridad 2017-001 https://support.apple.com/en-us/HT208315
Además, para evitar el acceso no autorizado a sus computadoras Mac, debe habilitar la cuenta de usuario root y establecer una contraseña específicamente para el usuario root.
https://support.apple.com/en-ph/HT204012
Si su cuenta de usuario raíz ya está activa, asegúrese de cambiar la contraseña solo para asegurarse de que la vulnerabilidad de contraseña en blanco no esté establecida.
fuente
¡No! ¡No elimines la cuenta raíz!
En primer lugar,
root
ha estado presente en todas las versiones de macOS, Mac OS X, Mac OS e incluso en versiones antiguas del sistema operativo. macOS no creó recientemente esta cuenta debido a una vulnerabilidad. Simplemente lo expuso por accidente.Eliminar
root
sería una muy mala idea, y déjame decirte por qué.Esto paralizaría por completo a macOS, ya que no habría una cuenta con suficientes privilegios para ejecutar servicios críticos (como WindowServer, que ejecuta la GUI). Existen medidas de seguridad para evitar que los usuarios despistados se eliminen
root
, y no debe intentar evitarlas.Averigüemos quién ejecuta los primeros procesos en el sistema, los procesos más importantes (usando Activity Monitor):
¡Hola, es nuestro vecindario amigable
root
nuevamente! El primer proceso (con PID 0) en realidad está controlado por el kernel, y probablemente tendrá permisos completos de todos modos, pero su proceso hijolaunchd
(responsable de iniciar servicios como la ventana de inicio de sesión y el servidor de ventana en sí) se inicia con los privilegios deroot
. Siroot
no existiera, este proceso nunca habría comenzado o no tendría permisos.Asegurar la cuenta raíz
Otras respuestas han proporcionado un parche lanzado por Apple que debería solucionar el problema. Sin embargo, si no puede o no desea instalarlo ...
Funciona porque macOS vuelve a codificar la contraseña ingresada como una "actualización" porque la cuenta deshabilitada (root) se detectó incorrectamente como un hash antiguo. Todavía dirá que es incorrecto, pero la próxima vez, los hash coincidirán (porque macOS lo cambió) y le permitirá ingresar.
Para asegurar
root
, deberá usar la Utilidad de directorio. Hay dos formas de acceder a él:/System/Library/CoreServices/Applications/
y presiona Ir (o presiona Intro). Luego, abre la Utilidad de directorio desde allí.Una vez que haya abierto Directory Utility, deberá
Una vez que hayas hecho eso, selecciona
Change Root Password
oEnable Root User
desde el menú Editar. Lo muestroChange Root Password
ya que mi cuenta raíz ya está habilitada con una contraseña segura.Elija una contraseña, y ahora la contraseña en blanco ya no funcionará.
¡Felicidades! Ya no eres vulnerable al hack de root.
fuente
!
(que, como tipo UNIX, probablemente reconocerá) correctamente.