Catégories
CVE-2026-48598 low CVSS 3.7

Vulnérabilité dans tesla (CVE-2026-48598)

Résumé

Vulnérabilité dans tesla (CVE-2026-48598). Risque d'opérations non autorisées ou de divulgation. Exploitable via name. Atténuation : mise à jour vers 1.18.3 ou plus.

Description d'origine

La description telle que publiée par la source (souvent en anglais).

Summary

Tesla.Multipart.part_headers_for_disposition/1 interpolates Content-Disposition parameter values (field name, filename, and other opts) verbatim into the part header line without encoding or escaping any special characters. An attacker who controls a filename, field name, or other disposition parameter can use unescaped double-quotes to inject extra disposition key-value pairs, or CRLF sequences to inject additional part headers or prepend bytes to the part body.

Details

part_headers_for_disposition/1 in lib/tesla/multipart.ex formats each disposition parameter as k="v" with no sanitization. Values flow in from add_field/4 (the name argument), add_file/3 and add_file_content/4 (the filename argument and any disposition opts). A " in the value closes the quoted parameter early, allowing extra ; key="value" pairs to be appended. A \r\n ends the Content-Disposition header line entirely, with subsequent bytes interpreted as additional part headers (e.g. a forged Content-Type); a second \r\n ends the whole part header block and prepends attacker bytes to the part body.

The default-filename path in add_file/3 derives the name via Path.basename/1, which does not strip CR or LF, so any code that forwards a partially attacker-controlled file path is equally vulnerable.

PoC

  1. Call Tesla.Multipart.add_file_content/4 with a filename containing \r\nX-Injected: evil.
  2. POST the multipart body to any upstream via any Tesla…

Source: NIST National Vulnerability Database NVD GitHub Advisory

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-2026-48598 a été découverte dans tesla.
Des attaquants peuvent cibler un point d'entrée spécifique comme name à distance pour détourner le produit.
Risque d'opérations non autorisées ou de divulgation. Score CVSS : 3.7/10.
Action : mettez à jour tesla vers 1.18.3 ou supérieur.
En cas de doute, contactez votre service informatique ou cherchez « tesla CVE-2026-48598 » sur le site de l'éditeur.

CVE-2026-48598 (tesla) — CWE-116 / CVSS v3 3.7
Vecteur d'attaque : distant (réseau) / non authentifié / sans interaction utilisateur
Surface d'attaque : name / filename / tesla
Correctif : 1.18.3 — appliquer immédiatement
Contournement : Validate disposition parameter values before passing them to the multipart API, rejecting any value that contains \r, \n, or ".
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.

❓ Quel est le problème

Une vulnérabilité (CWE-116) affecte tesla. Les attaquants atteignent le code vulnérable via name sans authentification.

📍 Périmètre concerné

Consultez l'avis de l'éditeur pour les versions affectées de tesla. Surface d'attaque : name / filename / tesla.

🔥 Gravité

Gravité : Faible (CVSS 3.7/10). Risque d'opérations non autorisées ou de divulgation.

🔧 Comment corriger

Mettre à jour vers 1.18.3.

🛡️ Contournement

Contournement : Validate disposition parameter values before passing them to the multipart API, rejecting any value that contains \r, \n, or ".

🔍 Détection

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

  1. 1
    Identify exposure identify
    grep -r 'tesla' . | grep -v node_modules

    リポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で tesla を grep し、稼働しているサービス・バージョンを把握する。

  2. 2
    Apply temporary workaround mitigate
    Validate disposition parameter values before passing them to the multipart API, rejecting any value that contains `\r`, `\n`, or `"`.

    パッチが適用されるまでの応急処置として、Validate disposition parameter values before passing them to the multipart API, rejecting any value that contains \r, \n, or ". を実施。回避策の副作用 (機能低下) を確認した上で。

  3. 3
    Apply patch patch
    Upgrade tesla to 1.18.3

    ステージング環境で 1.18.3 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスを含めること。

  4. 4
    Post-deployment verification verify
    Confirm patched version is live in production

    パッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番ではアクセスログ・WAF でアラート再発が無いか継続監視。

Paquets affectés

Hex tesla
[{"type":"SEMVER","events":[{"introduced":"0.8.0"},{"fixed":"1.18.3"}]}]
erlang tesla
[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.18.3"}]}]

Références

Nous utilisons des cookies pour l'analyse d'audience et la mesure publicitaire. Ce réglage s'applique à tous les sites de Game co., Ltd. En savoir plus