Public mode

No access to your tenant or devices. Every item links to its source. What this means

Sources need attention Customize Public modeDiscuss ChangeIntel on Discord

ReactPress has SQL injection via dynamic column names in TypeORM query builders

CVSS 3.1 7.5 HIGHEUVD CVSS 3.1 7.5 CVSS 3.1 · [email protected] · Secondary 7.5 HIGHCVSS_V3 Publisher rating HIGHFixed by @fecommunity/reactpress 3.7.0KEV status unknown

cve-program · CVE-2026-61685

Published

ReactPress is a publishing system for React developers. Prior to version 3.7.0, ReactPress API list endpoints build TypeORM `QueryBuilder` conditions using unsanitized HTTP query parameter names as SQL column identifiers (e.g. `` `article.${key}` ``). TypeORM parameterizes values but not column names, allowing unauthenticated attackers to inject SQL through crafted query string keys. Version 3.7.0 contains a patch. As a workaround, allowlist allowed filter column names before interpolating into SQL.

Read the publisher's advisory

euvd · EUVD-2026-84981

Published

ReactPress is a publishing system for React developers. Prior to version 3.7.0, ReactPress API list endpoints build TypeORM `QueryBuilder` conditions using unsanitized HTTP query parameter names as SQL column identifiers (e.g. `` `article.${key}` ``). TypeORM parameterizes values but not column names, allowing unauthenticated attackers to inject SQL through crafted query string keys. Version 3.7.0 contains a patch. As a workaround, allowlist allowed filter column names before interpolating into SQL.

Read the publisher's advisory

nvd · CVE-2026-61685

Published

ReactPress is a publishing system for React developers. Prior to version 3.7.0, ReactPress API list endpoints build TypeORM `QueryBuilder` conditions using unsanitized HTTP query parameter names as SQL column identifiers (e.g. `` `article.${key}` ``). TypeORM parameterizes values but not column names, allowing unauthenticated attackers to inject SQL through crafted query string keys. Version 3.7.0 contains a patch. As a workaround, allowlist allowed filter column names before interpolating into SQL.

Read the publisher's advisory

osv · GHSA-wmw4-mw6x-6vfm

Published

## Summary ReactPress API list endpoints build TypeORM `QueryBuilder` conditions using unsanitized HTTP query parameter *names* as SQL column identifiers (e.g. `` `article.${key}` ``). TypeORM parameterizes values but not column names, allowing unauthenticated attackers to inject SQL through crafted query string keys. ## Impact An unauthenticated remote attacker can perform blind SQL injection against the application database, potentially exfiltrating sensitive data (users, settings, API keys, article content, etc.). ## Affected endpoints (unauthenticated GET) - `GET /api/article` - `GET /api/comment` - `GET /api/file` - `GET /api/page` - `GET /api/Knowledge` ## Affected code Vulnerable pattern in `findAll()` methods, including but not limited to: - `server/src/modules/article/article.service.ts` - `server/src/modules/comment/comment.service.ts` - `server/src/modules/file/file.service.ts` - `server/src/modules/page/page.service.ts` - `server/src/modules/knowledge/knowledge.service.ts` ## Remediation - Whitelist allowed filter column names before interpolating into SQL. - Upgrade to `@fecommunity/reactpress` >= 3.7.0. ## Credit Reported by lsr365400.

Read the publisher's advisory

Affected versions, risk and source history

cve-program · CVE-2026-61685

Published

reactpress

Vendor product

Publisher's version information

Shown as published. These rules are not interpreted as NuGet package version ranges.

{
                    "vendor": "fecommunity",
                    "product": "reactpress",
                    "versions": [
                        {
                            "version": "< 3.7.0",
                            "status": "affected"
                        }
                    ]
                }

Original source record · Cite this exact observation · Complete original publisher JSON

euvd · EUVD-2026-84981

Published

EUVD source date text has no stated timezone and is retained without inventing a UTC instant. Related bulletin membership is not an alias, common cause or applicability claim. A missing vector with a zero score is treated as unrated. Complete vendor/product and underlying source evidence remains in the original JSON.

Original publisher date fields

datePublished: Sep 22, 2026, 11:08:58 PM

dateUpdated: Sep 23, 2026, 2:34:11 PM

No normalized affected-package data is projected for this source revision. The original publisher record may contain additional product and version evidence; this does not establish that a package is unaffected.

Original source record · Cite this exact observation · Complete original publisher JSON

nvd · CVE-2026-61685

Published

NVD analysis and CPE criteria are source context, not proof that a package or your environment is affected. Complete affected data, logical configurations and SSVC are retained in the original JSON.

Source analysis status: Awaiting Analysis

Weakness classifications: CWE-89

Original publisher date fields

published: 2026-09-22T23:17:07.600

lastModified: 2026-09-23T18:12:04.247

No normalized affected-package data is projected for this source revision. The original publisher record may contain additional product and version evidence; this does not establish that a package is unaffected.

Original source record · Cite this exact observation · Complete original publisher JSON

osv · GHSA-wmw4-mw6x-6vfm

Published

@fecommunity/reactpress

npm

SEMVER · introduced 0 → fixed 3.7.0

Original source record · Cite this exact observation · Complete original publisher JSON

ChangeIntel

An IT change radar: releases, security, known issues, retirements, documentation changes, and service status from public sources. Every item links to supporting evidence; dates and statuses can change after they are read.

Sources read 12 Nov 17:32 UTC · 274 of 275 readable · 272 fully read · documentation 469/469 current