¿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 :-)
0 votos
No quiero que Apple "escuche"... Quiero que sean un tipo de empresa diferente a la que son, y eso nunca va a suceder a menos que me contraten como "asegurador de la genialidad"