Categories
CVE-2026-44593

Path Traversal in github.com/esm-dev/esm.sh (CVE-2026-44593)

Summary

Path traversal in github.com/esm-dev/esm.sh (CVE-2026-44593). Risk of unauthorized operations or information disclosure. Exploitable via legacyServer. Mitigation: upgrade to 0.0.0-20260508100112-1960055e1d53 or later.

Original description

The description as published by the source.

esm.sh is a no-build content delivery network (CDN) for web development. In 137 and earlier, the legacy router first retrieves a response from legacyServer, parses the incoming request path, and ultimately writes the data to storage via buildStorage.Put. The router concatenates the path components without sanitizing them, producing a storage key. When this key is used, the underlying file system resolves the relative segments and writes the file to the specified path. Thus an attacker can craft a request that writes data to arbitrary locations on the server.

Source: GitHub Security Advisories (Global) NVD GitHub Advisory

Auto-generated summary

Assembled by SecPulse from the source data (CVSS, CWE, affected versions) using templates — no AI involved. Check the original description and references below for exact details.

A vulnerability tracked as CVE-2026-44593 has been found in github.com/esm-dev/esm.sh.
Attackers can target a specific entry point like legacyServer over the network to misuse the product.
Risk of unauthorized operations or information disclosure.
What to do: upgrade github.com/esm-dev/esm.sh to 0.0.0-20260508100112-1960055e1d53 or later.
If unsure, ask your IT team or search "github.com/esm-dev/esm.sh CVE-2026-44593" on the vendor's site.

CVE-2026-44593 (github.com/esm-dev/esm.sh) — CWE-22
Attack surface: legacyServer / buildStorage.Put / foo.md
Patched: 0.0.0-20260508100112-1960055e1d53 — apply immediately
Plan: 1) Audit SBOM/dependencies, 2) Stage→prod upgrade, 3) Add WAF/proxy monitoring on affected endpoints, 4) Hunt IOCs in logs.
Refs: see the GHSA / vendor advisory / patched release linked on this page.

❓ What is the problem

Path traversal (CWE-22) exists in github.com/esm-dev/esm.sh. Attackers reach the vulnerable code path via legacyServer.

📍 Affected scope

Check the vendor advisory for the affected versions of github.com/esm-dev/esm.sh. Attack surface: legacyServer / buildStorage.Put / foo.md.

🔥 Severity

Severity: ?. Risk of unauthorized operations or information disclosure.

🔧 How to fix

Update to 0.0.0-20260508100112-1960055e1d53.

🛡️ Workaround

Until the patch is applied: disable the affected feature, apply WAF rules, or restrict access via network ACLs.

🔍 Detection

Search webserver/proxy logs for unusual request patterns matching this CVE's known IOCs. Run grep -r 'github.com/esm-dev/esm.sh' . against your dependency files (package-lock.json, requirements.txt, go.sum) to find affected services.

Response actions

Concrete steps and command examples for SOC/SRE teams to execute in order

  1. 1
    Identify exposure identify
    grep -r 'github.com/esm-dev/esm.sh' . | grep -v node_modules

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

  2. 2
    Apply patch patch
    Upgrade github.com/esm-dev/esm.sh to 0.0.0-20260508100112-1960055e1d53

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

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

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

Affected packages

go github.com/esm-dev/esm.sh
[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.0.0-20260508100112-1960055e1d53"}]}]

References

We use cookies for analytics and ad measurement. This setting applies to all Game co., Ltd. sites. Details