Skip to main content

Nueva vulnerabilidad crítica de OpenSSL: lo que debes saber

feature openssl

31 de octubre de 2022

0 minutos de lectura

Nota del editor: 1 de noviembre de 2022

Snyk revisó sus propios sistemas y herramientas para detectar el uso de OpenSSL v3. Identificamos que las versiones 4.127.0 a 4.134.0 de Snyk Broker usan una versión afectada de OpenSSL 3.0 y deben actualizarse a la versión 4.135.0 o posterior. Snyk Broker permite a los clientes integrar plataformas SCM internas compatibles con Snyk.

El 25 de octubre de 2022, el proyecto OpenSSL anunció una próxima versión de OpenSSL (la versión 3.0.7) para abordar una vulnerabilidad crítica de seguridad. Las vulnerabilidades (eran dos, no una) se hicieron públicas el martes 1 de noviembre de 2022 y el proyecto OpenSSL publicó un blog con detalles sobre los problemas y las correcciones. En otro blog, Snyk también analiza las vulnerabilidades y por qué su nivel de gravedad se redujo de crítico a alto. Esta publicación se centra en cómo usar Snyk para prepararte ante vulnerabilidades como esta y se actualizó con la información más reciente.

Snyk publicó un aviso con los detalles conocidos hasta el momento y lo actualizará si se hace pública nueva información.

Acerca de la vulnerabilidad

El proyecto OpenSSL clasificó esta vulnerabilidad como crítica, pero indicó que no afecta a las versiones de OpenSSL anteriores a la 3.0. Esto significa que, si usas una versión de OpenSSL anterior a la 3.0, por ahora no deberías estar afectado.

La política de seguridad del proyecto OpenSSL describe qué consideran vulnerabilidades críticas:

Esto afecta a configuraciones habituales y es probable que también sea explotable. Algunos ejemplos son la divulgación significativa del contenido de la memoria del servidor (que podría revelar datos de los usuarios), las vulnerabilidades que se pueden explotar fácilmente de forma remota para comprometer las claves privadas del servidor o aquellas en las que se considera probable la ejecución remota de código en situaciones comunes. Estos problemas se mantendrán en privado y darán lugar a una nueva versión de todas las versiones compatibles. Intentaremos abordarlos lo antes posible.

Puedes leer más sobre los motivos por los que decidieron reducir la gravedad a crítica en el blog de OpenSSL.

Las versiones vulnerables de OpenSSL (3.0 y posteriores) se usan actualmente en sistemas operativos Linux, como Ubuntu 22.04 LTS, RHEL 9 y otros. Sin embargo, distribuciones de Linux como Debian solo incluyen OpenSSL 3.x en sus versiones más recientes, que todavía se consideran versiones de prueba; por lo tanto, es posible que su uso generalizado en sistemas de producción sea limitado. Las imágenes de contenedor creadas con versiones afectadas de Linux también estarán afectadas. Sin embargo, cabe señalar que muchas imágenes oficiales populares de Docker usan Debian Bullseye (11) y Alpine, que todavía usan OpenSSL 1.x y no están afectadas. Las imágenes oficiales de contenedor de Docker para proyectos como nginx y httpd, populares para gestionar el tráfico web, también usan Bullseye y Alpine y no están afectadas.

Node.js 18.x y 19.x también usan OpenSSL 3 de forma predeterminada, así que prevemos que habrá actualizaciones para Node.js en los próximos días.

Por último, si tus desarrolladores usan C/C++, es posible que estén incorporando paquetes de OpenSSL v3 en su código. Revisa este código para encontrar los paquetes de OpenSSL correspondientes.

Cómo saber si estás afectado antes de que se publiquen las vulnerabilidades

Uno de los aspectos interesantes de esta vulnerabilidad es que el proyecto OpenSSL anunció que se acercaba una importante corrección de seguridad una semana antes de su lanzamiento. Como se indicó que había al menos una vulnerabilidad crítica, las personas tuvieron tiempo para averiguar cómo buscar aplicaciones, contenedores y servidores potencialmente afectados. Una vez que se publican las vulnerabilidades, las herramientas de seguridad como Snyk obviamente detectan su presencia y ofrecen correcciones. Pero antes de que se publique una vulnerabilidad, ¿cómo podemos usar Snyk para preparar un plan de acción?

Los pasos a continuación corresponden a esta vulnerabilidad de OpenSSL. Sin embargo, puedes usar estos pasos para cualquier vulnerabilidad cuyos detalles se conozcan con anticipación, siempre que tengas una lista de materiales de software y realices un análisis SCA completo de todos tus paquetes y contenedores de código abierto.

Si eres cliente de Snyk con un plan Business o Enterprise, puedes encontrar todos los proyectos que incluyen versiones vulnerables de OpenSSL (3.0.x). Ve a Reports y luego a Dependencies. En el cuadro de búsqueda, escribe openssl para ver dónde podrías estar usando versiones 3.0.x. El enlace Projects te lleva a los proyectos correspondientes. Si lo prefieres, puedes exportar los datos a un archivo CSV.

Vista de dependencias de Snyk Reports filtrada por “openssl”, que muestra versiones vulnerables, proyectos afectados y un botón para exportar como CSV.

Los clientes con acceso a las API de Snyk (planes Business y Enterprise) también pueden usar la API para extraer estos datos. Por ejemplo, puedes usar una utilidad del equipo de Snyk Labs llamada snyk-deps-to-csv para extraer dependencias a un archivo CSV. También puedes acceder directamente a la API de dependencias.

Cualquier usuario de Snyk, incluso quienes tienen cuentas gratuitas, puede buscar versiones vulnerables de OpenSSL desde el panel de Snyk: selecciona un proyecto, haz clic en la pestaña Dependencies y busca “openssl”. Como se indicó antes, las versiones afectadas son las de OpenSSL 3.0.x.

Panel de dependencias filtrado por “openssl”, que muestra paquetes relacionados con OpenSSL y la cantidad de problemas críticos, altos, medios y bajos.

Si todavía no probaste tus proyectos con Snyk, puedes hacerlo con nuestra Snyk CLI:

  • Para analizar tus proyectos de código en busca de paquetes de código abierto como OpenSSL, o de dependencias transitivas que usen OpenSSL, ejecuta snyk test para ver los resultados directamente en tu CLI o snyk monitor para verlos en la interfaz web de Snyk.

    • Si usas C/C++ y quieres saber si tu proyecto incluye OpenSSL fuera de un administrador de paquetes (sin administrar), agrega la opción --unmanaged al ejecutar snyk test.

  • Para analizar imágenes de contenedor, ejecuta snyk container test para ver los resultados directamente en tu CLI o snyk container monitor para enviar los resultados a la interfaz web de Snyk.

  • Para cualquiera de los tipos de test que se muestran arriba, agrega la opción --print-deps para ver la lista de dependencias en tu CLI. Si usas el comando monitor, las dependencias se muestran automáticamente en la interfaz web de Snyk.

  • Si usas Linux, puedes verificar qué versión de OpenSSL usas con solo ejecutar el comando openssl version en tu terminal:

Terminal que muestra el comando «openssl version» y el resultado «OpenSSL 1.1.1l 24 Aug 2021»

Cómo mitigar la nueva vulnerabilidad de OpenSSL

  1. Informa a los miembros de tu equipo sobre el anuncio de la vulnerabilidad y la próxima actualización de seguridad, el martes 1 de noviembre de 2022. La mejor forma de prepararse es asegurarse de que el equipo conozca el problema y la próxima versión.

  2. Evalúa tus aplicaciones e infraestructura para determinar si usas OpenSSL 3.0 o una versión posterior en algún lugar.

  3. Prepárate para actualizar las instalaciones vulnerables de OpenSSL el martes 1 de noviembre de 2022.

Si usas Snyk para detectar y corregir vulnerabilidades, incluiremos la vulnerabilidad en nuestra base de datos y la detectaremos cuando analices proyectos el 1 de noviembre de 2022, una vez que se hagan públicos los detalles. Cuando haya correcciones disponibles, se te pedirá que actualices las versiones vulnerables que Snyk tenga identificadas.

¡No entres en pánico!

Gestionar vulnerabilidades críticas puede ser estresante, pero ¡no entres en pánico! El proyecto OpenSSL tiene una larga trayectoria de gestión responsable de incidentes de seguridad y de publicación oportuna de correcciones.

Si todavía no usas una herramienta de detección de vulnerabilidades como Snyk, quizá sea un buen momento para probarla. Estas herramientas te ayudan a recibir avisos sobre incidentes como este cuando ocurren y, posiblemente, a implementar correcciones de seguridad cuando estén disponibles.

Aunque es imposible corregir todos los problemas, dar prioridad a los críticos y actualizar rápidamente es una estrategia sólida para reducir el riesgo y evitar brechas de seguridad.

Más información

Estos recursos adicionales relacionados con la próxima vulnerabilidad pueden resultarte útiles para prepararte:

Empieza con los retos de Capture the Flag

Aprende a resolver retos de Capture the Flag viendo nuestro taller virtual de nivel básico a pedido.

Leer más

blog feature snyk container custom base recommendations
Blog

Presentamos Evo Agentic AppSec: seguridad al ritmo del desarrollo con IA

El desarrollo impulsado por IA supera el ritmo de los flujos de trabajo de seguridad tradicionales. Agentic AppSec de Snyk usa agentes de seguridad para encontrar, corregir y verificar vulnerabilidades de forma continua, mientras las personas definen el estándar.

Blog

Los modelos de frontera encontraron las vulnerabilidades. Solo el atacante encontró las cadenas.

El análisis estático encontró las fallas, pero solo las pruebas de ataque en vivo demostraron cómo podían encadenarse para provocar brechas. Una comparación de Evo COS, Claude Security y Claude Code Security.

feature insights context
Blog

Los ataques autónomos ya están aquí. La defensa debe estar a su altura.

Los atacantes autónomos están reduciendo el tiempo disponible para defenderse. Descubre cómo el descubrimiento, la corrección, la validación y la prevención continuos pueden ayudar a los equipos de seguridad a seguirles el ritmo.