Los desarrolladores han enviado parches al kernel de Linux para eliminar el soporte al algoritmo de hash inseguro SHA-1 en la firma de módulos del kernel. Este movimiento aborda vulnerabilidades conocidas como ataques de colisión demostrados en 2017. Los cambios se basan en esfuerzos previos para mejorar la seguridad del kernel.
La comunidad del kernel de Linux está avanzando en seguridad proponiendo parches para eliminar gradualmente el soporte de SHA-1 para la firma de módulos del kernel. Petr Pavlu, autor de los parches, publicó la serie en la lista de correo del kernel de Linux esta semana, según informó Phoronix. Pavlu declaró: “SHA-1 se considera obsoleto e inseguro debido a vulnerabilidades que pueden llevar a colisiones de hash”.
Esta iniciativa sigue años de advertencias sobre las debilidades de SHA-1, particularmente después de que investigadores demostraron ataques de colisión prácticos en 2017. Un intento anterior de eliminar el soporte de SHA-1 mediante el commit 16ab7cb5825f fue revertido debido a problemas de compatibilidad con herramientas como iwd. El año pasado, el algoritmo de firma predeterminado cambió a SHA-512 en el commit f3b93547b91a sin problemas mayores, preparando el terreno para la depreciación completa.
Los parches consisten en dos cambios principales. El primero modifica el Kconfig de módulos del kernel para eliminar las opciones de SHA-1, refiriéndose al commit revertido anterior. El segundo se dirige a la utilidad sign-file, eliminando el soporte para PKCS#7, que estaba limitado a SHA-1. James Bottomley aclaró en una respuesta en la lista de correo: “CMS realmente es PKCS7 y la mayoría de la literatura se refiere a CMS como PKCS7”, señalando que la actualización deprecia una API obsoleta.
La mayoría de las distribuciones principales de Linux ya han adoptado SHA-2 para la firma de módulos. Sin embargo, Android se retrasa, utilizando SHA-1 por defecto para su Generic Kernel Image (GKI). Sami señaló en la lista de correo: “En general, Android no depende de la firma de módulos para la seguridad, solo se usa para diferenciar entre tipos de módulos”. Los parches se centran en eliminar SHA-1 para nuevas firmas mientras permiten cargar las existentes.
La implementación enfrenta obstáculos menores, incluyendo un conflicto con una serie en curso para el soporte de ML-DSA. Pavlu reconoció: “El segundo parche tiene un conflicto menor con la actualización de sign-file en la serie ‘lib/crypto: Add ML-DSA’”. Las reacciones de la comunidad en plataformas como X han sido positivas, con Phoronix anunciando: “Linux busca eliminar el soporte de SHA1 para la firma de módulos del kernel. Es hora de pasar a algoritmos de hash más seguros”. Estos cambios buscan fortalecer la seguridad en entornos como servidores y sistemas embebidos reduciendo los riesgos de firmas falsificadas.