stringtranslate.com

Protección mediante parches del núcleo

El kernel conecta el software de la aplicación al hardware de una computadora.

Kernel Patch Protection ( KPP ), conocido informalmente como PatchGuard , es una característica de las ediciones de 64 bits ( x64 ) de Microsoft Windows que impide la aplicación de parches al kernel . Se introdujo por primera vez en 2005 con las ediciones x64 de Windows Vista y Windows Server 2003 Service Pack 1. [1]

"Parchear el núcleo" se refiere a una modificación no admitida del componente central o núcleo del sistema operativo Windows. Dicha modificación nunca ha sido admitida por Microsoft porque, según Microsoft, puede reducir en gran medida la seguridad, la confiabilidad y el rendimiento del sistema. [1] Aunque Microsoft no lo recomienda, es posible parchear el núcleo en las ediciones x86 de Windows; sin embargo, con las ediciones x64 de Windows, Microsoft optó por implementar protección adicional y barreras técnicas para la aplicación de parches en el núcleo.

Dado que es posible aplicar parches al núcleo en las ediciones de 32 bits (x86) de Windows, varios desarrolladores de software antivirus utilizan parches al núcleo para implementar antivirus y otros servicios de seguridad. Estas técnicas no funcionan en equipos que ejecutan ediciones x64 de Windows. Debido a esto, Kernel Patch Protection hizo que los fabricantes de antivirus tuvieran que rediseñar su software sin utilizar técnicas de parches al núcleo.

Sin embargo, debido al diseño del kernel de Windows, Kernel Patch Protection no puede evitar por completo la aplicación de parches al kernel. [2] [3] Esto ha dado lugar a críticas de que, dado que KPP es una defensa imperfecta, los problemas causados ​​a los proveedores de antivirus superan los beneficios porque los autores de software malicioso simplemente encontrarán formas de eludir sus defensas. [4] [5] Sin embargo, Kernel Patch Protection todavía puede prevenir problemas de estabilidad, confiabilidad y rendimiento del sistema causados ​​por software legítimo que aplica parches al kernel de formas no compatibles.

Descripción técnica

El núcleo de Windows está diseñado para que los controladores de dispositivos tengan el mismo nivel de privilegios que el propio núcleo. [6] Se espera que los controladores de dispositivos no modifiquen ni apliquen parches a las estructuras centrales del sistema dentro del núcleo. [1] Sin embargo, en las ediciones x86 de Windows, Windows no hace cumplir esta expectativa. Como resultado, algunos programas x86, en particular ciertos programas de seguridad y antivirus , fueron diseñados para realizar tareas necesarias mediante la carga de controladores que modifican las estructuras centrales del núcleo. [6] [7]

En las ediciones x64 de Windows, Microsoft comenzó a aplicar restricciones sobre qué estructuras pueden y no pueden modificar los controladores. La protección de parches del núcleo es la tecnología que aplica estas restricciones. Funciona comprobando periódicamente que las estructuras del sistema protegidas en el núcleo no se hayan modificado. Si se detecta una modificación, Windows iniciará una comprobación de errores y apagará el sistema [6] [8] con una pantalla azul y/o reiniciará. El número de comprobación de errores correspondiente es 0x109, el código de comprobación de errores es CRITICAL_STRUCTURE_CORRUPTION. Las modificaciones prohibidas incluyen: [8]

La protección de parches del núcleo solo protege contra los controladores de dispositivos que modifican el núcleo. No ofrece ninguna protección contra un controlador de dispositivo que parchea a otro. [10]

En definitiva, dado que los controladores de dispositivos tienen el mismo nivel de privilegios que el propio núcleo, es imposible evitar por completo que los controladores eludan la protección de parches del núcleo y luego apliquen parches al núcleo. [2] Sin embargo, KPP presenta un obstáculo significativo para la aplicación exitosa de parches al núcleo. Con un código altamente ofuscado y nombres de símbolos engañosos, KPP emplea seguridad por oscuridad para obstaculizar los intentos de eludirlo. [6] [11] Las actualizaciones periódicas de KPP también lo convierten en un "objetivo en movimiento", ya que las técnicas de elusión que pueden funcionar durante un tiempo es probable que fallen con la próxima actualización. Desde su creación en 2005, Microsoft ha publicado hasta ahora dos actualizaciones importantes de KPP, cada una diseñada para romper técnicas de elusión conocidas en versiones anteriores. [6] [12] [13]

Ventajas

Microsoft nunca ha apoyado la aplicación de parches al kernel porque puede causar una serie de efectos negativos. [7] La ​​protección de parches del kernel protege contra estos efectos negativos, que incluyen:

Las preguntas frecuentes sobre protección de parches del kernel de Microsoft explican con más detalle:

Debido a que la aplicación de parches reemplaza el código del kernel con código desconocido y no probado, no hay manera de evaluar la calidad o el impacto del código de terceros... Un examen de los datos de Análisis de fallos en línea (OCA) en Microsoft muestra que los fallos del sistema suelen ser resultado de software tanto malicioso como no malicioso que aplica parches al kernel.

—  "Protección mediante parches del núcleo: preguntas frecuentes". Microsoft . 22 de enero de 2007 . Consultado el 22 de febrero de 2007 .

Críticas

Aplicaciones de terceros

Algunos programas de seguridad informática, como McAfee VirusScan de McAfee y Norton AntiVirus de Symantec , funcionaban parcheando el núcleo en sistemas x86. [ cita requerida ] Se sabe que el software antivirus creado por Kaspersky Lab hace un uso extensivo de parches de código del núcleo en ediciones x86 de Windows. [16] Este tipo de software antivirus no funcionará en computadoras que ejecuten ediciones x64 de Windows debido a Kernel Patch Protection. [17] Debido a esto, McAfee solicitó a Microsoft que eliminara KPP de Windows por completo o que hiciera excepciones para el software creado por "compañías confiables" como ellos mismos. [4]

El software antivirus corporativo de Symantec [18] y la gama Norton 2010 y posteriores [19] funcionaron en ediciones x64 de Windows a pesar de las restricciones de KPP, aunque con menos capacidad para brindar protección contra malware de día cero. El software antivirus creado por competidores como ESET [20] , Trend Micro [21] , Grisoft AVG [22] , avast!, Avira Anti-Vir y Sophos no parchean el núcleo en las configuraciones predeterminadas, pero pueden hacerlo cuando se habilitan funciones como "protección avanzada de procesos" o "prevenir la terminación no autorizada de procesos". [23]

Jim Allchin , entonces copresidente de Microsoft, era un firme defensor de la protección mediante parches del kernel.

Microsoft no debilita la protección de parches del núcleo haciendo excepciones, aunque se sabe que Microsoft relaja sus restricciones de vez en cuando, como en beneficio del software de virtualización de hipervisor . [10] [24] En cambio, Microsoft trabajó con empresas de terceros para crear nuevas interfaces de programación de aplicaciones que ayudan al software de seguridad a realizar las tareas necesarias sin parchear el núcleo. [15] Estas nuevas interfaces se incluyeron en Windows Vista Service Pack 1. [ 25]

Debilidades

Debido al diseño del núcleo de Windows, la protección contra parches del núcleo no puede impedir por completo la aplicación de parches al núcleo. [2] Esto llevó a los proveedores de seguridad informática McAfee y Symantec a decir que, dado que KPP es una defensa imperfecta, los problemas causados ​​a los proveedores de seguridad superan los beneficios, porque el software malicioso simplemente encontrará formas de eludir las defensas de KPP y el software de seguridad de terceros tendrá menos libertad de acción para defender el sistema. [4] [5]

En enero de 2006, investigadores de seguridad conocidos por los seudónimos "skape" y "Skywing" publicaron un informe que describe métodos, algunos teóricos, a través de los cuales se podría eludir la protección de parches del núcleo. [26] Skywing publicó un segundo informe en enero de 2007 sobre la elusión de la versión 2 de KPP, [27] y un tercer informe en septiembre de 2007 sobre la versión 3 de KPP . [28] Además, en octubre de 2006, la empresa de seguridad Authentium desarrolló un método de trabajo para eludir KPP. [29]

Sin embargo, Microsoft ha declarado que se compromete a eliminar cualquier falla que permita eludir KPP como parte de su proceso estándar del Centro de Respuesta de Seguridad. [30] En consonancia con esta declaración, Microsoft ha lanzado hasta ahora dos actualizaciones importantes de KPP, cada una diseñada para romper técnicas de evasión conocidas en versiones anteriores. [6] [12] [13]

Comportamiento antimonopolio

En 2006, la Comisión Europea expresó su preocupación por la protección con parches del núcleo, diciendo que era anticompetitiva . [31] Sin embargo, el propio producto antivirus de Microsoft, Windows Live OneCare , no tenía ninguna excepción especial a la protección con parches del núcleo. En su lugar, Windows Live OneCare utilizaba (y siempre había utilizado) métodos distintos a la aplicación de parches al núcleo para proporcionar servicios de protección antivirus. [32] Sin embargo, por otras razones, una edición x64 de Windows Live OneCare no estuvo disponible hasta el 15 de noviembre de 2007. [33]

Referencias

  1. ^ abc "Protección mediante parches del kernel: preguntas frecuentes". Microsoft . 22 de enero de 2007 . Consultado el 30 de julio de 2007 .
  2. ^ abc skape; Skywing (diciembre de 2005). «Introducción». Cómo eludir PatchGuard en Windows x64 . Desinformado. Archivado desde el original el 17 de agosto de 2016. Consultado el 20 de septiembre de 2007 .
  3. ^ dushane (3 de abril de 2023), PatchGuardBypass , consultado el 3 de abril de 2023
  4. ^ abc Samenuk, George (28 de septiembre de 2006). "Microsoft aumenta el riesgo de seguridad con Vista". McAfee . Consultado el 8 de julio de 2013 .
  5. ^ ab Gewirtz, David (2006). "La gran guerra antivirus de Windows Vista". OutlookPower. Archivado desde el original el 1 de febrero de 2013. Consultado el 8 de julio de 2013 ."El sistema ya es vulnerable. La gente ya ha pirateado PatchGuard. El sistema ya es vulnerable, pase lo que pase. PatchGuard tiene un efecto paralizante sobre la innovación. Los malos siempre van a innovar. Microsoft no debería atarle las manos a la industria de la seguridad para que no pueda innovar. Nos preocupa superar en innovación a los malos que están ahí fuera". —Cris Paden, director del equipo de comunicación corporativa de Symantec
  6. ^ abcdefg Skywing (septiembre de 2007). «Introducción». PatchGuard Reloaded: A Brief Analysis of PatchGuard Version 3. Uninformed. Archivado desde el original el 3 de marzo de 2016. Consultado el 20 de septiembre de 2007 .
  7. ^ ab Schofield, Jack (28 de septiembre de 2006). "Los proveedores de antivirus plantean amenazas a Vista en Europa". The Guardian . Consultado el 20 de septiembre de 2007 ."Nunca hemos apoyado ni respaldado esto. Introduce inseguridad, inestabilidad y problemas de rendimiento, y cada vez que cambiamos algo en el núcleo, su producto deja de funcionar". —Ben Fathi, vicepresidente corporativo de la unidad de tecnología de seguridad de Microsoft
  8. ^ abc "Patching Policy for x64-Based Systems" (Política de parches para sistemas basados ​​en x64). Microsoft . 22 de enero de 2007 . Consultado el 20 de septiembre de 2007 .
  9. ^ skape; Skywing (diciembre de 2005). "Imágenes del sistema". Cómo eludir PatchGuard en Windows x64 . Desinformado. Archivado desde el original el 17 de agosto de 2016. Consultado el 21 de septiembre de 2007 .
  10. ^ ab Skywing (enero de 2007). «Conclusión». Subvirtiendo la versión 2 de PatchGuard . Desinformado. Archivado desde el original el 4 de marzo de 2016. Consultado el 21 de septiembre de 2007 .
  11. ^ Skywing (diciembre de 2006). «Nombres de símbolos engañosos». Subvirtiendo la versión 2 de PatchGuard . Desinformado. Archivado desde el original el 3 de marzo de 2016. Consultado el 20 de septiembre de 2007 .
  12. ^ ab Microsoft (junio de 2006). "Actualización para mejorar la protección de parches del kernel". Aviso de seguridad de Microsoft (914784) . Microsoft . Consultado el 21 de septiembre de 2007 .
  13. ^ ab Microsoft (agosto de 2007). "Actualización para mejorar la protección de parches del kernel". Aviso de seguridad de Microsoft (932596) . Microsoft . Consultado el 21 de septiembre de 2007 .
  14. ^ ab Field, Scott (11 de agosto de 2006). "Introducción a la protección mediante parches del núcleo". Blog de seguridad de Windows Vista . Microsoft . Consultado el 30 de noviembre de 2006 .
  15. ^ ab Allchin, Jim (20 de octubre de 2006). "Un ejecutivo de Microsoft aclara la reciente confusión del mercado sobre la seguridad de Windows Vista". Microsoft . Consultado el 30 de noviembre de 2006 .
  16. ^ Skywing (junio de 2006). "Aplicación de parches a funciones del núcleo que no son exportadas ni de servicio del sistema". ¿En qué estaban pensando? El software antivirus salió mal . Desinformado . Consultado el 21 de septiembre de 2007 .
  17. ^ Montalbano, Elizabeth (6 de octubre de 2006). «McAfee critica las características de seguridad de Vista». PC World . Archivado desde el original el 5 de abril de 2007. Consultado el 30 de noviembre de 2006 .
  18. ^ "Symantec AntiVirus Corporate Edition: Requisitos del sistema". Symantec . 2006. Archivado desde el original el 15 de mayo de 2007 . Consultado el 30 de noviembre de 2006 .
  19. ^ "Página de producto de Symantec Internet Security". Symantec . 2011 . Consultado el 26 de enero de 2011 .
  20. ^ "Protección contra amenazas de alto rendimiento para la próxima generación de equipos de 64 bits". ESET. 20 de noviembre de 2008. Archivado desde el original el 20 de noviembre de 2008.
  21. ^ "Requisitos mínimos del sistema". Trend Micro USA. Archivado desde el original el 8 de febrero de 2012. Consultado el 5 de octubre de 2007 .
  22. ^ "AVG Anti-Virus and Internet Security - Plataformas compatibles". Grisoft . Archivado desde el original el 27 de agosto de 2007 . Consultado el 5 de octubre de 2007 .
  23. ^ Jaques, Robert (23 de octubre de 2006). «Symantec y McAfee 'deberían haberse preparado mejor' para Vista». vnunet.com. Archivado desde el original el 27 de septiembre de 2007. Consultado el 30 de noviembre de 2006 .
  24. ^ McMillan, Robert (19 de enero de 2007). "Investigador: la revisión de PatchGuard beneficia a Microsoft". InfoWorld . Consultado el 21 de septiembre de 2007 .
  25. ^ "Cambios notables en Windows Vista Service Pack 1". Microsoft . 2008. Archivado desde el original el 3 de mayo de 2008 . Consultado el 20 de marzo de 2008 .
  26. ^ skape; Skywing (1 de diciembre de 2005). «Cómo eludir PatchGuard en Windows x64». Desinformado. Archivado desde el original el 1 de agosto de 2017. Consultado el 2 de junio de 2008 .
  27. ^ Skywing (diciembre de 2006). "Subverting PatchGuard Version 2". Uninformed . Consultado el 2 de junio de 2008 .
  28. ^ Skywing (septiembre de 2007). "PatchGuard Reloaded: A Brief Analysis of PatchGuard Version 3". Uninformed . Consultado el 2 de junio de 2008 .
  29. ^ Hines, Matt (25 de octubre de 2006). "Microsoft denuncia el hackeo de PatchGuard en Vista". eWEEK . Consultado el 2 de abril de 2016 .
  30. ^ Gewirtz, David (2006). "La gran guerra antivirus de Windows Vista". OutlookPower. Archivado desde el original el 4 de septiembre de 2007. Consultado el 30 de noviembre de 2006 .
  31. ^ Espiner, Tom (25 de octubre de 2006). "EC Vista antitrust concerns fleshed out". silicon.com. Archivado desde el original el 2 de febrero de 2007. Consultado el 30 de noviembre de 2006 .
  32. ^ Jones, Jeff (12 de agosto de 2006). «Seguridad de Windows Vista x64, parte 2, Patchguard». Blog de seguridad de Jeff Jones . Microsoft . Archivado desde el original el 9 de diciembre de 2008. Consultado el 11 de marzo de 2007 .
  33. ^ White, Nick (14 de noviembre de 2007). "Actualización a la próxima versión de Windows Live OneCare anunciada para todos los suscriptores". Blog del equipo de Windows Vista . Microsoft . Archivado desde el original el 1 de febrero de 2008. Consultado el 14 de noviembre de 2007 .

Enlaces externos

Artículos de Uninformed.org:

Enfoques de bypass de trabajo

Avisos de seguridad de Microsoft: