bcrypt-ruby hasta 3.1.21 en JRuby BCrypt.java desbordamiento de búfer

CVSS Puntuación meta temporalPrecio actual del exploit (≈)Puntuación de interés CTI
4.3$0-$5k0.00

Resumeninformación

Se ha encontrado una vulnerabilidad clasificada como problemática en bcrypt-ruby hasta 3.1.21 en JRuby. Resulta afectada una función desconocida dentro del archivo BCrypt.java. Por la manipulación de un input desconocido se causa una vulnerabilidad de clase desbordamiento de búfer. La vulnerabilidad es identificada como CVE-2026-33306. El ataque necesita ser llevado a cabo de forma local. No hay ningún exploit disponible. El mejor modo sugerido para mitigar el problema es actualizar a la última versión.

Detallesinformación

Una vulnerabilidad fue encontrada en bcrypt-ruby hasta 3.1.21 en JRuby y clasificada como problemática. Una función desconocida del archivo BCrypt.java es afectada por esta vulnerabilidad. Mediante la manipulación de un input desconocido se causa una vulnerabilidad de clase desbordamiento de búfer. Esto tiene repercusión sobre la confidencialidad, integridad y disponibilidad. El resumen de CVE es:

bcrypt-ruby es un enlace Ruby para el algoritmo de hash de contraseñas bcrypt() de OpenBSD. Antes de la versión 3.1.22, un desbordamiento de entero en la implementación Java de BCrypt para JRuby puede causar cero iteraciones en el bucle de fortalecimiento. Las aplicaciones afectadas deben estar configurando el costo en 31 para que esto ocurra. La implementación de JRuby de bcrypt-ruby ('BCrypt.java') calcula el recuento de rondas de fortalecimiento de clave como un entero con signo de 32 bits. Cuando 'cost=31' (el máximo permitido por la gema), el desbordamiento de entero con signo hace que el recuento de rondas se vuelva negativo, y el bucle de fortalecimiento ejecuta cero iteraciones. Esto colapsa bcrypt de 2^31 rondas de fortalecimiento exponencial de clave a una computación en tiempo efectivamente constante — solo quedan la configuración inicial de clave EksBlowfish y la fase final de cifrado 64x. El hash resultante parece válido ('$2a$31$...') y se verifica correctamente a través de 'checkpw', haciendo que la debilidad sea invisible para la aplicación. Este problema se activa solo cuando se usa cost=31 o al verificar un hash '$2a$31$'. Este problema ha sido solucionado en la versión 3.1.22. Como solución alternativa, configure el costo en algo menor que 31.

El advisory puede ser descargado de github.com. La vulnerabilidad es identificada como CVE-2026-33306. Resulta difícil de explotar. El ataque sólo se debe hacer local. Detalles técnicos son conocidos, pero no hay ningún exploit público disponible.

Para el scanner Nessus se dispone de un plugin ID 303306 (Linux Distros Unpatched Vulnerability : CVE-2026-33306), que puede ayudar a determinar la existencia del riesgo analizado.

Una actualización a la versión 3.1.22 elimina esta vulnerabilidad. La actualización se puede descargar de github.com. Aplicando el parche 831ce64cb0a9502130fa93a28bfd9527a5fa45c4 es posible eliminar el problema. El parche puede ser descargado de github.com. El mejor modo sugerido para mitigar el problema es Actualización.

La vulnerabilidad también está documentado en la base de datos Tenable (303306). Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Productoinformación

Escribe

Nombre

Versión

Licencia

Sitio web

CPE 2.3información

CPE 2.2información

CVSSv4información

VulDB Vector: 🔒
VulDB Confiabilidad: 🔍

CNA CVSS-B Score: 🔒
CNA CVSS-BT Score: 🔒
CNA Vector: 🔒

CVSSv3información

VulDB Puntuación meta base: 4.5
VulDB Puntuación meta temporal: 4.3

VulDB Puntuación base: 4.5
VulDB Puntuación temporal: 4.3
VulDB Vector: 🔒
VulDB Confiabilidad: 🔍

CVSSv2información

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VectorComplejidadAutenticaciónConfidencialidadIntegridadDisponibilidad
DesbloquearDesbloquearDesbloquearDesbloquearDesbloquearDesbloquear
DesbloquearDesbloquearDesbloquearDesbloquearDesbloquearDesbloquear
DesbloquearDesbloquearDesbloquearDesbloquearDesbloquearDesbloquear

VulDB Puntuación base: 🔒
VulDB Puntuación temporal: 🔒
VulDB Confiabilidad: 🔍

Explotacióninformación

Clase: Desbordamiento de búfer
CWE: CWE-190 / CWE-189
CAPEC: 🔒
ATT&CK: 🔒

Físico: En parte
Local: Sí
Remoto: No

Disponibilidad: 🔒
Estado: No está definido

EPSS Score: 🔒
EPSS Percentile: 🔒

Predicción de precios: 🔍
Estimación del precio actual: 🔒

0-DayDesbloquearDesbloquearDesbloquearDesbloquear
HoyDesbloquearDesbloquearDesbloquearDesbloquear

Nessus ID: 303306
Nessus Nombre: Linux Distros Unpatched Vulnerability : CVE-2026-33306

Inteligencia de amenazasinformación

Interés: 🔍
Actores activos: 🔍
Grupos APT activos: 🔍

Contramedidasinformación

Recomendación: Actualización
Estado: 🔍

Hora de 0 días: 🔒

Actualización: bcrypt-ruby 3.1.22
Parche: 831ce64cb0a9502130fa93a28bfd9527a5fa45c4

Línea de tiempoinformación

2026-03-18 CVE asignado
2026-03-24 +6 días Aviso publicado
2026-03-24 +0 días Entrada de VulDB creada
2026-03-28 +4 días Última actualización de VulDB

Fuentesinformación

Producto: github.com

Aviso: GHSA-f27w-vcwj-c954
Estado: Confirmado

CVE: CVE-2026-33306 (🔒)
GCVE (CVE): GCVE-0-2026-33306
GCVE (VulDB): GCVE-100-352579

Artículoinformación

Fecha de creación: 2026-03-24 02:26
Actualizado: 2026-03-28 09:37
Cambios: 2026-03-24 02:26 (72), 2026-03-24 03:53 (2), 2026-03-28 09:37 (2)
Completo: 🔍
Cache ID: 216:191:103

Discusión

Sin comentarios aún. Idiomas: es + pt + en.

Por favor, inicie sesión para comentar.

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!