GHSA-wmw4-mw6x-6vfm
ReactPress has SQL injection via dynamic column names in TypeORM query builders
Quick fix
GHSA-wmw4-mw6x-6vfm — @fecommunity/reactpress: upgrade to the fixed version with the command below.
npm install @fecommunity/reactpress@3.7.0Details
## 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.
Are you affected?
Enter the version of the package you're using.
Affected packages
0Fixed in: 3.7.0npm install @fecommunity/reactpress@3.7.0References
- https://github.com/fecommunity/reactpress/security/advisories/GHSA-wmw4-mw6x-6vfm[WEB]
- https://nvd.nist.gov/vuln/detail/CVE-2026-61685[ADVISORY]
- https://github.com/fecommunity/reactpress/commit/78ecb70af1c021455c05fdcbe137212c70e310d6[WEB]
- https://github.com/fecommunity/reactpress[PACKAGE]
- https://github.com/fecommunity/reactpress/releases/tag/v3.7.0[WEB]