10 votos

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

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

Antes de que voten en contra de esta pregunta o de que me sermoneen diciendo que soy un paranoico y que nadie debería hacer eso, por favor, lean a continuación.

En julio de 2015, CVE-2015-3692 reveló que el firmware EFI de un Mac podía ser hackeado por un atacante remoto. (Los vectores disponibles para esto están en otros CVEs, pero hipotéticamente podría ser cualquier cosa, incluyendo cosas como instaladores de actualizaciones Flash falsos y maliciosos).

Esta vulnerabilidad se hizo pública al menos cuatro semanas antes de que Apple la parchease el 30 de julio para OS X 10.8, 10.9 y 10.10 con Actualización de seguridad del firmware EFI 2015-001 .

El mismo investigador de seguridad que anunció esta vulnerabilidad también afirma haber visto una demostración en una conferencia de un hackeo del firmware que no puede ser eliminado o sobrescrito.

Por lo tanto, una vez que la EFI de un Mac ha sido poseída, si el atacante lo hizo bien, entonces la única forma de reflashear la EFI con un firmware válido de Apple sería conectar un reflasher directamente al chip EFI en la propia placa lógica (hacer no inténtelo en casa).

Los artículos de noticias que informaron de esta vulnerabilidad le restaron importancia, diciendo que la mayoría de los usuarios no deberían preocuparse, y que todo lo que hay que hacer para protegerse es no dejar nunca que el Mac entre en modo de suspensión, y desactivar el usuario Root, o no autenticar nunca nada en lo que no se confíe al 100%. Los hilos de comentarios en esos artículos lo resumían así: si todas tus aplicaciones provienen de fuentes de confianza como la App Store oficial, y nunca ejecutas nada que no esté firmado por un desarrollador conocido por Apple, entonces debe no tienen nada de qué preocuparse.

Pero entonces, en septiembre de 2015, nos enteramos de el exploit XCodeGhost que se sabe que ha provocado la aparición de numerosas aplicaciones infectadas con malware en la tienda oficial de aplicaciones de iOS, pero ¿qué pasa con las aplicaciones de OS X? En el artículo vinculado, Malwarebytes escribió:

Wardle señaló en marzo que Xcode era vulnerable a este este tipo de cosas, pero, lo que es más aterrador, también señaló a muchas otras aplicaciones de OS X. Cualquiera de esas aplicaciones podría ser vulnerable a algo similar ataques similares.

También escribieron que "el usuario medio no debe entrar en pánico", el mismo mantra que a menudo veo repetirse en los foros de soporte de Apple y en otros lugares cada vez que un usuario publica un hilo sobre un montón de problemas extraños que está teniendo. "Simplemente reformatea tu disco y realiza una instalación limpia del sistema. El problema es probablemente una modificación del sistema de terceros", nos dicen. Cuando eso no se soluciona, se dice que debe ser un problema de hardware, como un disco duro que falla, una GPU que falla o una memoria RAM defectuosa. He visto hilos en los que la gente ha sustituido literalmente todos los componentes de su Mac, y el problema siempre vuelve a aparecer.

Ahora sabemos que es hipotéticamente posible que el firmware EFI de los usuarios haya sido hackeado, así que incluso si su placa base fue reemplazada, cuando reinstalaron sus aplicaciones, el firmware podría volver a ser flasheado por el malware. Y si la placa base no se sustituyó, entonces estarían jodidos pase lo que pase.

Esto me lleva a la pregunta principal.

¿Cómo puede el usuario medio validar fácilmente la integridad del firmware de su Mac? Es decir, ¿cómo puedes comprobar que el firmware de tu Mac no ha sido comprometido por un malware? No he podido encontrar ningún método compatible con El Capitán que no requiera desactivar el SIP. Para las versiones anteriores del sistema operativo, hay una complicada herramienta de terceros llamada DarwinDumper que puede volcar el contenido de su EFI a un archivo de texto, pero usted todavía necesita tener el firmware válido de Apple para compararlo - este no es un método que el usuario medio es capaz de hacer.

Decirle a la gente que no se preocupe por algo de lo que muy bien podría ser víctima, y no tener forma de comprobar si lo es, es lo que permite que este tipo de exploits sean rentables para los hackers, que dependen de la complacencia y la falta de vigilancia por parte de los usuarios.

\==

EDIT: He encontrado el último instalador oficial del firmware de Apple en el sitio de soporte de Apple . El instalador no se ejecuta en 10.10 o 10.11, extrañamente. Usando Pacifist extraje el archivo .scap para mi Macbook Pro 9,1. Comparé el binario en HexFiend con el biosdump que saqué usando DarwinDump después de reiniciar en modo Recovery y ejecutar csrutil disable en la terminal para deshabilitar el rootless y habilitar la capacidad de ejecutar kexts sin firmar. He recuperado esta cabecera de la 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

La BIOS oficial de la cabecera 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 publicó después de que se anunciaran los hacks. Probablemente estoy bien. Sin embargo, sería bueno poder confirmar que estoy bien a través de algún tipo de verificación de la suma de comprobación. Te miro a ti, Apple.

2 votos

¿Se trata de una pregunta (bastante bien documentada) o de una solicitud de función? Si es una pregunta, ¿podrías reducirla un poco para centrarte más en lo que buscas ("cómo puede un usuario final verificar la integridad del firmware")?

0 votos

Pregunta. La parte que estoy buscando está en negrita y se repite dos veces y es el título. Confío en que los lectores instalen más RAM en sus cerebros o tomen ritalina si los detalles de apoyo son un "problema".

2 votos

Sin embargo, podrías mejorar las cosas convirtiendo tu edición (al final de tu pregunta) en una primera respuesta (con probablemente algunos detalles más sobre cómo el usuario casual puede realizar los pasos necesarios). Además, si quieres que Apple te escuche (y creo que deberían hacerlo), una solicitud de función es la mejor manera de hacerlo :-)

3voto

Oskar Puntos 1242

El título de "cómo puede un usuario medio" es un poco una zona de peligro, ya que no considero a nadie que use el Terminal como medio - no estoy juzgando, sólo que la audiencia aquí está muy por encima de la media para saber siquiera que debe validar el firmware. Espero no sonar demasiado pretencioso con este breve resumen de lo que creo que el usuario medio de Mac debe hacer:

El instalador de MacOS actualiza el firmware cuando instalas/reinstalas el SO, así que simplemente arrancando a la recuperación y reinstalando la versión actual de MacOS, no perderás ningún programa, configuración, datos y tendrás la oportunidad de asegurarte de que tu firmware está actualizado. Incluso si usted instaló el sistema operativo hace varios meses - si el firmware más nuevo está alrededor cuando el instalador comprueba mientras se prepara para instalar, obtendrá esa actualización como parte del ejercicio.


Si no puedes o no estás dispuesto a ejecutar una instalación, entonces se vuelve mucho más difícil informar / validar que estás realmente actualizado. Supongo que depende de por qué crees que no has recibido las actualizaciones como parte del proceso normal de actualización. Dado que no hay una comprobación general de todo el firmware, yo diría que el usuario medio no puede validar el firmware e incluso los usuarios excepcionales tienen dificultades para realizar el nivel de análisis necesario. Los usuarios medios tienen dificultades con la diferencia entre autenticación y autorización . A los usuarios expertos les resulta tedioso verificar las sumas de comprobación y las cadenas de confianza criptográficas, y la naturaleza humana es que 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 el lista de correo oficial de notificaciones de seguridad de Apple para que estés al tanto cuando las cosas cambien.

Lo siento si esta no es la respuesta que querías, pero también sentí que esta era mi pequeña entrada en una respuesta a todos los que ven tu pregunta y se preguntan cómo empezar a aprender. A medida que más usuarios pidan apoyo a Apple, eventualmente se escribirán artículos en la base de conocimientos. En algún punto de inflexión, la financiación se añadiría y el problema sería diseñado para que coincida con los niveles de educación de los usuarios. Desde mi punto de vista, estamos en los primeros días.

3voto

Lee Fisher Puntos 36

Para comprobar el firmware de un sistema Intel UEFI, como un Mactel, arranca Intel LUV (Linux UEFI Validation) distro, luv-live, ejecutar Intel CHIPSEC. Comprobará la mayoría de las vulnerabilidades de firmware conocidas públicamente. Deberías ejecutar CHIPSEC cuando recibas tu caja por primera vez, guardar la ROM, luego ocasionalmente volver a ejecutar CHIPSEC y comparar las ROMs para ver si hay cambios. Puedes 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 implicadas, consulte mis diapositivas para una presentación que di recientemente.

0 votos

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

1voto

David Smith Puntos 19

Sólo una actualización de esta pregunta ya que un nuevo programa está disponible..

Se llama eficheck. Está en el /usr/libexec/firmwarecheckers/eficheck probablemente no esté en su ruta, por lo que es un poco más complejo que otros, pero hay una página man para él que documenta su uso.

Es importante tener en cuenta que cualquier cosa modestamente sofisticada para entrar en su EFI es probable que sea capaz de evadir la detección hasta cierto punto. Esta es una de las razones por las que los chequeos antivirus son inútiles, aunque la gente que regurgita "los chequeos antivirus son una basura" no tiene ni idea de por qué y está repitiendo la conclusión que alguien más inteligente que ellos sacó, que es que las compañías antivirus tienden a no tener la capacidad de analizar adecuadamente el malware específico de Mac, por lo que no están añadiendo el valor hash único de un archivo a su base de datos para que su ordenador pueda calcular los hashs de sus propios archivos y luego esos contra una base de datos de hashs de malware conocido. Casi todos los escáneres de virus no hacen nada más y no buscan comportamientos maliciosos.

Sin embargo, a fin de cuentas la EFI de Apple es la UEFI de Intel, por lo que estás confiando en que Apple haga correctamente algo que es realmente complejo y técnico. Apple ni siquiera puede resolver su propia PKI y ¿has visto alguna vez el manual del desarrollador de un procesador Intel? Son miles de páginas de griego antiguo. Quiero decir, vamos que no pensaste que Apple era bonita y inteligente, ¿verdad?

La lista de correo de seguridad es una simple notificación cuando se publican actualizaciones y nada más. Estarías al tanto de los nuevos parches para los problemas identificados y fácilmente explotables de CVE-ID que afectan al último sistema operativo y a los más antiguos, es decir, a los que están en uso. No hay nada que evite futuros exploits en las actualizaciones..al menos que mencionen alguna vez debido a su política de no hablar de esas cosas. Los únicos elementos de seguridad abordados serán para decir que un problema muy específico ha sido corregido por la actualización.

Si identificaron 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 sus clientes todavía no creen en el malware. Fíjate que no dice nada de contactar con el usuario o solucionar el problema. Podría ver los titulares ahora.. Toda la mala prensa de los últimos tiempos ha estado realmente magullando su ego y parece que se está acercando a un punto de inflexión.

0voto

xilolee Puntos 11

A modo de actualización, MacOS 10.13 High Sierra verificará automáticamente la integridad del firmware de un Mac una vez a la semana. Si se encuentra un problema con el firmware, el Mac ofrecerá enviar un informe a Apple. Un post de The Eclectic Light Company dice esto sobre los informes;

Si está utilizando un Mac real, en lugar de un "Hackintosh", Kovah le pide que acepte enviar el informe. Esto permitirá a eficheck enviar los datos binarios del firmware EFI, preservando su privacidad al excluir los datos que se almacenan en la NVRAM. Apple podrá entonces analizar los datos para determinar si han sido alterados por un malware o cualquier otra cosa.

AppleInsider también dice esto;

El informe enviado a Apple excluye los datos almacenados en la NVRAM. Apple examinará entonces 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 comprobación de seguridad en el firmware EFI cada semana

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X