Vulnérabilité dans puma (CVE-2021-29509)
Résumé
Vulnérabilité dans puma (CVE-2021-29509). Risque d'opérations non autorisées ou de divulgation. Exploitable via puma. Atténuation : mise à jour vers 5.3.1 ou plus.
Description d'origine
La description telle que publiée par la source (souvent en anglais).
Puma is a concurrent HTTP 1.1 server for Ruby/Rack applications. The fix for CVE-2019-16770 was incomplete. The original fix only protected existing connections that had already been accepted from having their requests starved by greedy persistent-connections saturating all threads in the same process. However, new connections may still be starved by greedy persistent-connections saturating all threads in all processes in the cluster. A puma server which received more concurrent keep-alive connections than the server had threads in its threadpool would service only a subset of connections, denying service to the unserved connections. This problem has been fixed in puma 4.3.8 and 5.3.1. Setting queue_requests false also fixes the issue. This is not advised when using puma without a reverse proxy, such as nginx or apache, because you will open yourself to slow client attacks (e.g. slowloris). The fix is very small and a git patch is available for those using unsupported versions of Puma.
Source: OSV.dev (Open Source Vulnerabilities) NVD GitHub Advisory OSV
Résumé généré automatiquement
Assemblé par SecPulse à partir des données sources (CVSS, CWE, versions affectées) à l'aide de modèles, sans IA. Vérifiez la description d'origine et les références ci-dessous.
Une vulnérabilité référencée CVE-2021-29509 a été découverte dans puma.
Des attaquants peuvent cibler un point d'entrée spécifique comme puma à distance pour détourner le produit.
Risque d'opérations non autorisées ou de divulgation.
Action : mettez à jour puma vers 5.3.1 ou supérieur.
En cas de doute, contactez votre service informatique ou cherchez « puma CVE-2021-29509 » sur le site de l'éditeur.
CVE-2021-29509 (puma) — CWE-400
Vecteur d'attaque : distant (réseau) / non authentifié / sans interaction utilisateur
Surface d'attaque : puma / nginx / apache
Correctif : 5.3.1 — appliquer immédiatement
Plan : 1) Audit SBOM, 2) Mise à jour staging→prod, 3) Surveillance WAF/proxy sur les endpoints affectés, 4) Recherche d'IOC dans les logs.
Réfs : voir GHSA / avis éditeur / version corrigée liés sur cette page.
Une vulnérabilité (CWE-400) affecte puma. Les attaquants atteignent le code vulnérable via puma sans authentification.
Consultez l'avis de l'éditeur pour les versions affectées de puma. Surface d'attaque : puma / nginx / apache.
Gravité : ?. Risque d'opérations non autorisées ou de divulgation.
Mettre à jour vers 5.3.1.
En attendant le correctif : désactivez la fonctionnalité concernée, appliquez des règles WAF, ou restreignez l'accès par ACL réseau.
Recherchez dans les logs des requêtes correspondant aux IOC connus de cette CVE. Auditez les SBOM/dépendances.
Actions de réponse
Étapes concrètes et exemples de commandes que les équipes SOC/SRE doivent exécuter dans l'ordre
-
1Identify exposure identify
grep -r 'puma' . | grep -v node_modulesリポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で
pumaを grep し、稼働しているサービス・バージョンを把握する。 -
2Apply patch patch
Upgrade puma to 5.3.1ステージング環境で 5.3.1 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスを含めること。
-
3Post-deployment verification verify
Confirm patched version is live in productionパッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番ではアクセスログ・WAF でアラート再発が無いか継続監視。
Paquets affectés
État des correctifs par distribution
Paquets corrigés publiés par chaque distribution pour cette CVE
- Debian DEBIAN-CVE-2021-29509 puma Corrigé dans: 4.3.8-1
Références
- advisory nvd.nist.gov
- advisory github.com
- advisory lists.debian.org
- advisory rubygems.org
- advisory security.gentoo.org
- package github.com
- patch github.com
- patch gist.github.com
- web github.com