Una nueva investigación que se presentará en la conferencia de seguridad Black Hat en Las Vegas hoy muestra que una vulnerabilidad en Windows Update podría ser explotada para actualizar Windows a versiones anteriores, exponiendo una serie de vulnerabilidades históricas que luego pueden ser explotadas para obtener el control total de un sistema. Microsoft dice que está trabajando en un proceso complejo para parchear cuidadosamente el problema, denominado “Downdate”.
Alon Leviev, el investigador de SafeBreach Labs que descubrió la falla, dice que comenzó a buscar posibles métodos de ataque de degradación después de ver que una sorprendente campaña de piratería del año pasado estaba utilizando un tipo de malware (conocido como el “bootkit UEFI BlackLotus”) que se basaba en degradar el administrador de arranque de Windows a una versión antigua y vulnerable. Después de sondear el flujo de Windows Update, Leviev descubrió una ruta para degradar estratégicamente Windows, ya sea todo el sistema operativo o solo componentes específicamente elegidos. A partir de allí, desarrolló un ataque de prueba de concepto que utilizó este acceso para desactivar la protección de Windows conocida como Seguridad basada en virtualización (VBS) y, en última instancia, apuntar al código altamente privilegiado que se ejecuta en el “kernel” central del equipo.
“Encontré un exploit de downgrade que es completamente indetectable porque se ejecuta mediante el propio Windows Update”, en el que el sistema confía, dijo Leviev a WIRED antes de su conferencia. “En términos de invisibilidad, no desinstalé ninguna actualización; básicamente actualicé el sistema a pesar de que en realidad estaba degradado. Por lo tanto, el sistema no es consciente del downgrade y sigue pareciendo actualizado”.
La capacidad de Leviev para realizar actualizaciones a una versión anterior proviene de una falla en los componentes del proceso de Windows Update. Para realizar una actualización, su PC coloca lo que es esencialmente una solicitud de actualización en una carpeta de actualización especial. Luego presenta esta carpeta al servidor de actualizaciones de Microsoft, que verifica y confirma su integridad. A continuación, el servidor crea una carpeta de actualización adicional para usted que solo él puede controlar, donde coloca y finaliza la actualización y también almacena una lista de acciones, llamada “pending.xml”, que incluye los pasos del plan de actualización, como qué archivos se actualizarán y dónde se almacenará el nuevo código en su computadora. Cuando reinicia su PC, realiza las acciones de la lista y actualiza el software.
La idea es que, incluso si su equipo, incluida su carpeta de actualización, está en peligro, un actor malintencionado no puede secuestrar el proceso de actualización porque las partes cruciales del mismo ocurren en la carpeta de actualización controlada por el servidor. Sin embargo, Leviev examinó detenidamente los diferentes archivos tanto en la carpeta de actualización del usuario como en la carpeta de actualización del servidor y, finalmente, descubrió que, si bien no podía modificar la lista de acciones en la carpeta de actualización del servidor directamente, una de las teclas que la controlaban, llamada “PoqexecCmdline”, no estaba bloqueada. Esto le dio a Leviev una forma de manipular la lista de acciones y, con ella, todo el proceso de actualización, sin que el sistema se diera cuenta de que algo andaba mal.
Con este control, Leviev encontró estrategias para degradar varios componentes clave de Windows, incluidos los controladores, que se coordinan con los periféricos de hardware; las bibliotecas de vínculos dinámicos, que contienen programas y datos del sistema; y, fundamentalmente, el núcleo NT, que contiene la mayoría de las instrucciones básicas para que funcione un ordenador. Todos ellos podrían degradarse a versiones anteriores que contienen vulnerabilidades conocidas y parcheadas. Y Leviev incluso amplió su red a partir de ahí, para encontrar estrategias para degradar los componentes de seguridad de Windows, incluido el núcleo seguro de Windows; el componente de almacenamiento y contraseñas de Windows Credential Guard; el hipervisor, que crea y supervisa las máquinas virtuales en un sistema; y VBS, el mecanismo de seguridad de virtualización de Windows.
La técnica no incluye una forma de obtener acceso remoto al dispositivo de la víctima, pero para un atacante que ya tiene acceso inicial, podría permitir una verdadera masacre, porque Windows Update es un mecanismo muy confiable y puede reintroducir una amplia gama de vulnerabilidades peligrosas que Microsoft ha corregido a lo largo de los años. Microsoft afirma que no ha visto ningún intento de explotar la técnica.
“Estamos desarrollando activamente mitigaciones para protegernos contra estos riesgos mientras seguimos un proceso extenso que incluye una investigación exhaustiva, desarrollo de actualizaciones en todas las versiones afectadas y pruebas de compatibilidad, para garantizar la máxima protección del cliente con una interrupción operativa mínima”, dijo un portavoz de Microsoft a WIRED en un comunicado.
Parte de la solución de la compañía implica revocar los archivos de sistema VBS vulnerables, lo que debe hacerse con cuidado y de forma gradual, porque podría causar problemas de integración o reintroducir otros problemas no relacionados que ya fueron abordados por esos mismos archivos de sistema.
Leviev enfatiza que los ataques de degradación son una amenaza importante que la comunidad de desarrolladores debe considerar, ya que los piratas informáticos buscan constantemente caminos hacia los sistemas de destino que sean sigilosos y difíciles de detectar.