← Volver al archivo

Lectura / E

Redacción · IA y apps

Claude encuentra casi 500 fallos de seguridad en programas populares, uno de ellos con 21 años

Claude encuentra casi 500 fallos de seguridad en programas populares, uno de ellos con 21 años

Los ingenieros de Anthropic han analizado con el modelo de inteligencia artificial Claude 25 grandes proyectos de código abierto escritos en C, C++, Java, PHP y Python en busca de problemas de seguridad. Han detectado casi 500 amenazas, entre ellas mecanismos de protección desactivados por conflictos en la configuración, acceso a fragmentos críticos de código antes de la autenticación e incluso una vulnerabilidad que ya tiene 21 años.

Fuente de la imagen: Mohammad Rahmani / unsplash.com

Fuente de la imagen: Mohammad Rahmani / unsplash.com

En esta ocasión, en Anthropic decidieron no limitarse a la búsqueda estándar de vulnerabilidades: identificar cada una por separado en el marco de este estudio se describió como un «trabajo de Sísifo», porque ese enfoque escala mal y no ofrece garantías de seguridad. Los expertos pusieron el foco en reducir la superficie de ataque del software y en limitar el acceso innecesario al código que podrían aprovechar los atacantes. Los 25 proyectos estudiados sumaban más de 5 millones de líneas de código. Claude elaboró una lista de más de 17.000 parámetros de configuración, 3.842 de los cuales corresponden a mecanismos y funciones que influyen en la seguridad.

El estudio abordó tres escenarios en los que el acceso a determinados fragmentos de código resulta injustificado: la presencia de funciones activadas por defecto que no son necesarias para el funcionamiento; combinaciones de ajustes que, en conjunto, debilitan la protección; y fragmentos de código críticos e innecesariamente complejos que se ejecutan antes de las comprobaciones de seguridad. Los 11 proyectos destinados a trabajar con usuarios autenticados contenían código accesible cuando no debería serlo. Se identificaron 93 superficies de ataque accesibles antes de la autenticación en configuraciones por defecto, 37 casos de ejecución de código antes de superar la autenticación y 61 combinaciones de ajustes que debilitaban los mecanismos de protección activos antes de la autenticación.

Fuente de la imagen: Fotis Fotopoulos / unsplash.com

Fuente de la imagen: Fotis Fotopoulos / unsplash.com

En los 25 proyectos se encontraron 162 combinaciones de ajustes cuyo comportamiento esperado no estaba descrito en la documentación. En algunos casos, esto desactivaba medios de protección; en otros, provocaba distintas inconsistencias y errores. Uno de los defectos de configuración había pasado desapercibido durante más de dos décadas. Un ajuste exigía a los usuarios confirmar su identidad mediante certificados y otro desactivaba por completo esa comprobación, aunque solo debía aplazarla temporalmente.

Como ejemplo se cita OpenSSH: el programa de acceso remoto seguro contenía un componente (un demonio) que podía acceder a 4.500 líneas de código experimental —la implementación de un algoritmo poscuántico de firma digital— antes de comprobar si la configuración del servidor permitía esa operación. El propio algoritmo estaba desactivado por defecto, pero el código destinado a procesar sus datos era accesible para clientes no autorizados. Tras el aviso de Anthropic, los desarrolladores de OpenSSH corrigieron la vulnerabilidad en la versión 10.6: alrededor del 20 % del código dejó de ser accesible para usuarios no autorizados.

Los ingenieros de Anthropic reunieron los métodos desarrollados durante el estudio en una herramienta especializada para Claude. Pronto la integrarán en OSS-Scanner, un servicio gratuito para comprobar la seguridad de proyectos de código abierto. La nueva herramienta analiza las configuraciones por defecto, los fragmentos de código accesibles para las comprobaciones de seguridad y los ajustes que se contradicen entre sí. El sistema verificará las vulnerabilidades detectadas mediante el seguimiento dinámico de la ejecución del programa y las contrastará con el comportamiento actual del sistema; avisará a los desarrolladores de los cambios que puedan alterar el funcionamiento del software.

IA y apps / 03

Sigue leyendo