Plateforme
ruby
Composant
rack
Corrigé dans
2.2.24
3.0.1
3.2.1
2.2.23
La vulnérabilité CVE-2026-34831 affecte la bibliothèque Rack, versions inférieures ou égales à 2.2.9. Elle se manifeste par un calcul incorrect de l'en-tête Content-Length dans les réponses HTTP 404, en particulier lorsque le chemin demandé contient des caractères UTF-8 encodés. Cette erreur peut provoquer une désynchronisation des réponses HTTP, impactant potentiellement les clients qui s'appuient sur la précision de cet en-tête. Une correction est disponible dans la version 2.2.23.
Cette vulnérabilité permet à un attaquant de provoquer une désynchronisation des réponses HTTP en envoyant une requête à un chemin inexistant contenant des caractères UTF-8 encodés. Le serveur Rack renvoie une réponse 404 avec un Content-Length incorrect, car la taille de la chaîne de caractères est calculée en octets au lieu du nombre de bytes. Les clients qui s'attendent à une taille de contenu précise peuvent alors interpréter incorrectement la réponse, ce qui peut entraîner des erreurs d'interprétation des données, des blocages ou d'autres comportements inattendus. Bien que l'exploitation directe puisse être limitée, elle peut être combinée avec d'autres vulnérabilités pour contourner des mécanismes de sécurité ou causer des dénis de service.
Cette vulnérabilité a été rendue publique le 2 avril 2026. Il n'y a pas d'indication d'une exploitation active à ce jour. Aucun PoC public n'est connu. La vulnérabilité n'est pas répertoriée sur le KEV de CISA. La probabilité d'exploitation est considérée comme faible en raison de la nécessité d'une connaissance spécifique des caractères UTF-8 et de la configuration du serveur.
Applications and services relying on the Ruby Rack library, particularly those that process user-supplied paths or handle internationalized content, are at risk. Shared hosting environments that bundle Rack with other software components are also potentially vulnerable, as are applications that heavily depend on accurate HTTP response framing for proper functionality.
• ruby / server:
gem list rack• ruby / server:
grep -r 'String#size' /path/to/rack/lib/• generic web:
curl -I https://example.com/path%E2%82%AC(Check Content-Length header against response body size) • generic web:
grep 'Content-Length' /var/log/apache2/access.log(Look for discrepancies between Content-Length and bytes transferred)
disclosure
Statut de l'Exploit
EPSS
0.04% (percentile 11%)
CISA SSVC
Vecteur CVSS
La mitigation principale consiste à mettre à jour la bibliothèque Rack vers la version 2.2.23 ou supérieure, qui corrige cette vulnérabilité. Si la mise à jour n'est pas immédiatement possible, des mesures temporaires peuvent être prises. L'utilisation d'un Web Application Firewall (WAF) peut aider à détecter et à bloquer les requêtes contenant des caractères UTF-8 encodés dans le chemin, en particulier celles ciblant des chemins inexistants. Des règles WAF peuvent être configurées pour inspecter l'en-tête Content-Length et s'assurer qu'il correspond à la taille réelle du corps de la réponse. Il est également recommandé de surveiller les journaux d'accès du serveur pour détecter des anomalies liées à la taille des réponses HTTP.
Actualice la gema Rack a la versión 2.2.23, 3.1.21 o 3.2.6, o superior, según corresponda a su versión actual. Esto corregirá la discrepancia en la longitud del contenido en las respuestas de error de Rack::Files.
Analyses de vulnérabilités et alertes critiques directement dans votre boîte mail.
CVE-2026-34831 is a vulnerability in Ruby Rack where the Content-Length header is incorrectly calculated for multibyte UTF-8 characters, leading to response desynchronization.
You are affected if you are using Rack version 2.2.9 or earlier. Upgrade to 2.2.23 or later to mitigate the risk.
Upgrade to Rack version 2.2.23 or later. Consider using a reverse proxy or WAF to normalize HTTP responses as a temporary workaround.
There is currently no evidence of active exploitation of CVE-2026-34831, but it's important to apply the fix proactively.
Refer to the Ruby Rack project's website and security advisories for the latest information and updates regarding CVE-2026-34831.
Téléverse ton fichier de dépendances et découvre instantanément si cette CVE et d'autres te touchent.
Téléverse ton fichier Gemfile.lock et nous te dirons instantanément si tu es affecté.