¿Cómo puede el usuario promedio validar fácilmente la integridad del firmware de su Mac?

9

¿Cómo puede el usuario promedio validar fácilmente la integridad del firmware de su Mac?

Antes de que desestime esta pregunta o me dé una conferencia sobre cómo soy paranoico y nadie debería necesitar hacerlo, lea a continuación.

En julio de 2015, CVE-2015-3692 reveló que un atacante remoto podría hackear el firmware EFI de una Mac. (Los vectores disponibles para esto se encuentran en otros CVE, pero hipotéticamente podrían ser cualquier cosa, incluidos elementos como instaladores de actualizaciones Flash maliciosas falsas).

Esta vulnerabilidad se hizo pública al menos cuatro semanas antes de que Apple la parcheara el 30 de julio para OS X 10.8, 10.9 y 10.10 con EFI Firmware Security Update 2015-001 .

El mismo investigador de seguridad que anunció esta vulnerabilidad también afirma haber visto una demostración en una conferencia de un hack de firmware que no puede eliminarse ni sobrescribirse.

Por lo tanto, una vez que el EFI de una Mac ha sido propiedad, si el atacante lo hizo bien, entonces la única forma de actualizar el EFI con un firmware válido de Apple sería conectar un flasher directamente al chip EFI en la placa lógica ( no intente esto en casa).

Los artículos de noticias que informaron sobre esta vulnerabilidad lo minimizaron, diciendo que la mayoría de los usuarios no deberían preocuparse, y que todo lo que debe hacer para protegerse es nunca dejar que su Mac entre en modo de suspensión y deshabilitar al usuario raíz, o nunca autenticar nada No confíes al 100%. Los hilos de comentarios sobre esos artículos lo resumieron así: si todas sus aplicaciones provienen de fuentes confiables como la App Store oficial, y nunca ejecuta nada que no esté firmado por código por un desarrollador conocido por Apple, entonces no debería tener nada de qué preocuparse.

Pero luego, en septiembre de 2015, supimos sobre el exploit XCodeGhost , que se sabe que resultó en numerosas aplicaciones infectadas con malware que aparecen en la tienda oficial de aplicaciones de iOS, pero ¿qué pasa con las aplicaciones OS X? En el artículo vinculado, Malwarebytes escribió:

Wardle señaló en marzo que Xcode era vulnerable a este tipo de cosas, pero atemorizante, también señaló con el dedo a muchas otras aplicaciones de OS X. Cualquiera de esas aplicaciones podría ser vulnerable a ataques similares.

También escribieron, "el usuario promedio no debe entrar en pánico", el mismo mantra que a menudo veo en los foros de soporte de Apple y en otros lugares cada vez que un usuario publica un hilo sobre toneladas de problemas extraños que están teniendo. "Simplemente formatee su unidad y realice una instalación limpia del sistema. El problema es probablemente una modificación del sistema de un tercero", nos dicen. Cuando eso no lo soluciona, a las personas se les dice que debe ser un problema de hardware, como un HDD defectuoso, una GPU defectuosa o una RAM defectuosa. He visto hilos en los que las personas reemplazan literalmente todos los componentes de su Mac, y el problema siempre volvería.

Ahora sabemos que es hipotéticamente posible que el firmware EFI de los usuarios haya sido pirateado, por lo que incluso si su placa base fuera reemplazada, cuando reinstalaran sus aplicaciones, ¡el malware podría volver a actualizarse nuevamente por el malware! Y si la placa base no fue reemplazada, entonces serían mangueras sin importar qué.

Eso me lleva de vuelta a la pregunta principal.

¿Cómo puede el usuario promedio validar fácilmente la integridad del firmware de su Mac? Es decir, ¿cómo puede verificar para asegurarse de que el firmware de su Mac nunca haya sido comprometido por malware? No pude encontrar ningún método compatible con El Capitan que no requiera deshabilitar SIP. Para versiones anteriores del sistema operativo, existe una herramienta de terceros complicada llamada DarwinDumper que puede volcar el contenido de su EFI en un archivo de texto, pero aún necesita tener el firmware válido de Apple para compararlo; este no es un método con el que el usuario promedio es capaz de hacer

Decirles a las personas que no se preocupen por algo de lo que podrían ser víctimas, y que no tienen forma de verificar si lo son, es lo que permite que este tipo de exploits sean rentables para los piratas informáticos, que dependen de la complacencia y la falta de vigilancia sobre el parte de los usuarios.

==

EDITAR: Encontré el último instalador oficial de firmware de Apple en el sitio de soporte de Apple . El instalador no se ejecuta en 10.10 o 10.11, por extraño que parezca. Usando Pacifist extraje el archivo .scap para mi Macbook Pro 9,1. Comparé el binario en HexFiend con el biosdump que extraje usando DarwinDump después de reiniciar en el modo de recuperación y ejecutar csrutil disableen la terminal para deshabilitar rootless y habilitar la capacidad de ejecutar kexts sin firmar. Recuperé este encabezado de BIOS:

   $IBIOSI$   MBP91.88Z.00D3.B0B.1506081214Copyright (c) 2005-2015 Apple Inc.  All rights reserved.ˇˇˆ´5µ}ñÚC¥î°Îé!¢é_i@Ÿ¯¡Apple ROM Version
   BIOS ID:      MBP91
   Built by:     root@saumon
   Date:         Mon Jun  8 12:14:35 PDT 2015
   Revision:     svn 39254 (B&I)
   Buildcave ID: 6
   ROM Version:  00D3_B0B

El BIOS oficial del encabezado de Apple:

   $IBIOSI$   MBP91.88Z.00D3.B0B.1506081214Copyright (c) 2005-2015 Apple Inc.  All rights reserved.ˇˇˆ´5µ}ñÚC¥î°Îé!¢é_i@Ÿ¯¡Apple ROM Version
   BIOS ID:      MBP91
   Built by:     root@saumon
   Date:         Mon Jun  8 12:14:35 PDT 2015
   Revision:     svn 39254 (B&I)
   Buildcave ID: 6
   ROM Version:  00D3_B0B

Aparte de eso, los archivos tienen un aspecto muy diferente, pero supongo que el archivo .scap tiene algún tipo de compresión. Al menos eso me dice que tenía el último firmware instalado, el que se lanzó después de que se anunciaron los hacks. Soy muy bueno. Sin embargo, sería bueno poder confirmar que soy bueno a través de algún tipo de verificación de suma de verificación. ¡Te estoy mirando, Apple!

Tostada Coma
fuente
2
¿Es esta una pregunta (bastante bien investigada) o una solicitud de función? Si se trata de una pregunta, ¿puede reducirlo un poco para centrarse más en lo que está buscando ("¿cómo puede un usuario final verificar la integridad del firmware")?
nohillside
Pregunta. La parte que busco está en negrita y se repite dos veces y es el título. Confío en los lectores para instalar más RAM en sus cerebros o tomar ritalin si los detalles de soporte son un "problema".
CommaToast
2
Sin embargo, podría mejorar las cosas convirtiendo su edición (al final de su pregunta) en una primera respuesta (con probablemente algunos detalles más sobre cómo el usuario ocasional puede realizar los pasos necesarios). Además, si desea que Apple escuche (y creo que deberían), una solicitud de función es la mejor manera :-)
nohillside
No quiero que Apple "escuche" ... quiero que sean un tipo diferente de compañía de lo que son, y eso nunca sucederá a menos que me contraten como "
asegurador de la genialidad

Respuestas:

2

Para verificar el firmware de un sistema Intel UEFI, como Mactel, inicie la distribución Intel LUV (Validación de Linux UEFI), luv-live, ejecute Intel CHIPSEC. Verificará la mayoría de las vulnerabilidades de firmware conocidas públicamente. Debe ejecutar CHIPSEC la primera vez que obtenga su caja, guardar la ROM, luego volver a ejecutar CHIPSEC y comparar las ROM para ver los cambios. Puede usar UEFItool, CHIPSEC o UEFI-Firmware-Parser , o un puñado de otras herramientas para un examen forense de la ROM.

Para obtener más información sobre el tema y las herramientas involucradas, vea mis diapositivas para una presentación que hice recientemente.

Lee Fisher
fuente
Además, hay un proyecto llamado Firmware Vault que recopila ROM de Apple, que también podría ser útil para estudiar.
Lee Fisher
2

El título de "cómo puede un usuario promedio" es un poco como una zona peligrosa, ya que no considero a nadie que use el promedio de la Terminal, sin emitir un juicio, solo que la audiencia aquí está muy por encima del promedio para saber que deberían validar el firmware . Espero que no parezca demasiado pretencioso con este breve resumen de lo que creo que el usuario promedio de mac debería hacer:

El instalador de macOS actualiza el firmware cuando instala / reinstala el sistema operativo, por lo que simplemente iniciando la recuperación y reinstalando la versión actual de macOS, no perderá ningún programa, configuración, datos y tendrá la oportunidad de asegurarse de que su firmware esté actualizado. Incluso si instaló el sistema operativo hace varios meses, si el firmware más nuevo está presente cuando el instalador verifica mientras se prepara para la instalación, obtendrá esa actualización como parte del ejercicio.


Si no puede o no desea ejecutar una instalación, se vuelve mucho más difícil informar / validar que está realmente actualizado. Supongo que depende de por qué cree que no recibió las actualizaciones como parte del proceso normal de actualización / actualización. Como no hay una verificación general de todo el firmware, diría que el usuario promedio no puede validar el firmware e incluso los usuarios excepcionales tienen dificultades para realizar el nivel de análisis requerido. Los usuarios promedio luchan con la diferencia entre autenticación y autorización . A los usuarios expertos les resulta tedioso verificar las sumas de verificación y las cadenas criptográficas de confianza y la naturaleza humana si no hacemos bien esas actividades, incluso en entornos bien diseñados, bien motivados y bien respaldados.

Abriría un ticket de soporte con Apple para cada instancia en la que quisiera verificar el firmware y participar en la lista de correo oficial de Notificaciones de seguridad de Apple para que esté al tanto cuando las cosas cambien.

Lamento si esta no es la respuesta que deseaba, pero también sentí que esta era mi pequeña entrada en una respuesta para todos los que ven su pregunta y se preguntan cómo comenzar a aprender. A medida que más usuarios soliciten ayuda a Apple, eventualmente se escribirán artículos de base de conocimiento. En algún punto de inflexión, se agregarían fondos y el problema se diseñaría para que coincida con los niveles de educación del usuario. Estamos en los primeros días desde donde veo las cosas.

bmike
fuente
0

Solo como una actualización, macOS 10.13 High Sierra verificará automáticamente la integridad del firmware de una Mac una vez por semana. Si se encuentra un problema con el firmware, su Mac le ofrecerá enviar un informe a Apple. Una publicación de The Eclectic Light Company dice esto sobre los informes;

Si está ejecutando una Mac real, en lugar de un 'Hackintosh', Kovah le pide que acepte enviar el informe. Esto permitirá que eficheck envíe los datos binarios del firmware EFI, preservando su privacidad al excluir los datos almacenados en NVRAM. Apple podrá analizar los datos para determinar si han sido alterados por malware o cualquier otra cosa.

AppleInsider dice esto también;

El informe enviado a Apple excluye los datos almacenados en NVRAM. Apple luego mirará los datos transmitidos para evaluar si ha habido un ataque de malware

Consulte aquí para obtener más información sobre esta nueva función: macOS High Sierra realiza automáticamente una verificación de seguridad en el firmware EFI cada semana

Jake3231
fuente
0

Solo una actualización de esta pregunta ya que hay un nuevo programa disponible.

Se llama eficheck. Está en el directorio / usr / libexec / firmwarecheckers / eficheck , probablemente no está en su camino, por lo que es un poco más complejo que otros, pero hay una página de manual que documenta su uso.

Es importante tener en cuenta que cualquier cosa lo suficientemente modestamente sofisticada como para entrar en su EFI probablemente pueda evadir la detección hasta cierto punto. Esa es una de las razones por las cuales las comprobaciones de antivirus son inútiles, aunque las personas que regurgitan "las comprobaciones de antivirus son basura" no tienen idea de por qué y están repitiendo la conclusión de que alguien más inteligente de lo que sacaron es que las compañías de antivirus tienden a no saber que tienen la capacidad analizar correctamente el malware específico de Mac para que no agreguen el valor hash único de un archivo a su base de datos para que su computadora pueda calcular los hash de sus propios archivos y luego los de una base de datos de hash de malware conocidos. Casi todos los análisis de virus no hacen nada más y no buscan comportamientos maliciosos.

Al final del día, aunque el EFI de Apple es el UEFI de Intel, entonces confías en que Apple haga algo correctamente que sea realmente complejo y técnico. Apple ni siquiera puede descifrar su propia PKI y ¿alguna vez has visto el manual del desarrollador para un procesador Intel? Son miles de páginas de griego antiguo. Quiero decir, no creías que Apple fuera bonita e inteligente, ¿verdad?

La lista de correo de seguridad es una notificación simple cuando se lanzan actualizaciones y nada más. Usted estaría al tanto de nuevos parches para problemas identificados por CVE identificados por mucho tiempo y fácilmente explotados que afectan el último sistema operativo y los más antiguos, también conocidos como los que están en uso. No hay nada que evite futuras vulnerabilidades en las actualizaciones ... al menos que mencionarán alguna vez debido a su política de no hablar de tales cosas. Los únicos elementos de seguridad abordados serán decir que la actualización ha solucionado un problema muy específico.

Si identificaran un "ataque de malware" (¿no se quedó después?), Violaría su propia política si lo confirmaran e informaran al usuario, además de ser una mala decisión comercial ya que muchos de ellos sus clientes aún no creen en el malware. Observe que no dice nada sobre contactar al usuario o solucionar el problema. Podría ver los titulares ahora. Toda la mala prensa últimamente ha estado realmente lastimando su ego y parece que se está acercando a un punto de inflexión.

David Smith
fuente