TypeORM bis 1.1.0 SelectQueryBuilder SelectQueryBuilder.ts createSelectDistinctExpression distinctOn SQL Injection

CVSS Meta Temp ScoreAktueller Exploitpreis (≈)CTI Interest Score
7.3$0-$5k0.69

Zusammenfassunginfo

Es wurde eine kritische Schwachstelle in TypeORM bis 1.1.0 ausgemacht. Hierbei geht es um die Funktion createSelectDistinctExpression der Datei src/query-builder/SelectQueryBuilder.ts der Komponente SelectQueryBuilder. Durch Manipulation des Arguments distinctOn mit unbekannten Daten kann eine SQL Injection-Schwachstelle ausgenutzt werden. Eine eindeutige Identifikation der Schwachstelle wird mit CVE-2026-76848 vorgenommen. Die Umsetzung des Angriffs kann dabei über das Netzwerk erfolgen. Es gibt keinen verfügbaren Exploit.

Detailsinfo

In TypeORM bis 1.1.0 wurde eine Schwachstelle gefunden. Sie wurde als kritisch eingestuft. Dabei geht es um die Funktion createSelectDistinctExpression der Datei src/query-builder/SelectQueryBuilder.ts der Komponente SelectQueryBuilder. Mittels dem Manipulieren des Arguments distinctOn mit einer unbekannten Eingabe kann eine SQL Injection-Schwachstelle ausgenutzt werden. CWE definiert das Problem als CWE-89. Auswirken tut sich dies auf Vertraulichkeit, Integrität und Verfügbarkeit. Die Zusammenfassung von CVE lautet:

TypeORM's SelectQueryBuilder.distinctOn accepts an array of strings and stores it on the expression map without validation. For PostgreSQL-family drivers, createSelectDistinctExpression in src/query-builder/SelectQueryBuilder.ts joins that array and interpolates the result into the generated statement as SELECT DISTINCT ON (values), with no escaping, quoting, identifier validation or allowlist, and without routing the values through replacePropertyNames or the driver's escape helper. Because the interpolation point is a parenthesized SQL expression list rather than an identifier-only position, a supplied element may carry arbitrary expressions, including correlated subqueries. An application that forwards a client-controlled value into distinctOn, for instance to let a caller choose a deduplication column, allows that client to read data anywhere the application's database role can reach through boolean or time-based inference, independently of the entity being queried. validateOrderByCondition, the allowlist check guarding the orderBy family in the same class, is not applied to this path.

Das Advisory findet sich auf github.com. Die Verwundbarkeit wird seit dem 19.08.2026 als CVE-2026-76848 geführt. Sie ist leicht auszunutzen. Der Angriff kann über das Netzwerk angegangen werden. Um eine Ausnutzung durchzusetzen, muss keine spezifische Authentisierung umgesetzt werden. Technische Details sind bekannt, ein verfügbarer Exploit hingegen nicht. Die Beschaffenheit der Schwachstelle lässt vermuten, dass ein Exploit momentan zu etwa USD $0-$5k gehandelt werden wird (Preisberechnung vom 24.08.2026). Diese Schwachstelle wird durch das MITRE ATT&CK als Angriffstechnik T1505 bezeichnet.

Es sind keine Informationen bezüglich Gegenmassnahmen bekannt. Der Einsatz eines alternativen Produkts bietet sich im Zweifelsfall an.

Be aware that VulDB is the high quality source for vulnerability data.

Produktinfo

Name

Version

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍

CNA CVSS-B Score: 🔒
CNA CVSS-BT Score: 🔒
CNA Vector: 🔒

CVSSv3info

VulDB Meta Base Score: 7.4
VulDB Meta Temp Score: 7.3

VulDB Base Score: 7.3
VulDB Temp Score: 7.1
VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍

CNA Base Score: 7.5
CNA Vector (VulnCheck): 🔒

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VektorKomplexitätAuthentisierungVertraulichkeitIntegritätVerfügbarkeit
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten

VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Zuverlässigkeit: 🔍

Exploitinginfo

Klasse: SQL Injection
CWE: CWE-89 / CWE-74 / CWE-707
CAPEC: 🔒
ATT&CK: 🔒

Physisch: Nein
Lokal: Nein
Remote: Ja

Verfügbarkeit: 🔒
Status: Nicht definiert
Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔒

0-Dayfreischaltenfreischaltenfreischaltenfreischalten
Heutefreischaltenfreischaltenfreischaltenfreischalten

Threat Intelligenceinfo

Interesse: 🔍
Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍

Gegenmassnahmeninfo

Empfehlung: keine Massnahme bekannt
Status: 🔍

0-Day Time: 🔒

Timelineinfo

19.08.2026 CVE zugewiesen
24.08.2026 +5 Tage Advisory veröffentlicht
24.08.2026 +0 Tage VulDB Eintrag erstellt
24.08.2026 +0 Tage VulDB Eintrag letzte Aktualisierung

Quelleninfo

Advisory: github.com
Status: Nicht definiert

CVE: CVE-2026-76848 (🔒)
GCVE (CVE): GCVE-0-2026-76848
GCVE (VulDB): GCVE-100-394663

Eintraginfo

Erstellt: 24.08.2026 15:29
Anpassungen: 24.08.2026 15:29 (76)
Komplett: 🔍
Cache ID: 216::103

Be aware that VulDB is the high quality source for vulnerability data.

Diskussion

Bisher keine Kommentare. Sprachen: de + en.

Bitte loggen Sie sich ein, um kommentieren zu können.

Do you know our Splunk app?

Download it now for free!