Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as low-privileged backend user
-
DeliveryOpen a rex_list list view
-
ExploitTamper 'sort' request parameter with unauthorized column
-
ExecutionInject escaped ORDER BY identifier via prepareQuery()
-
PersistTrigger error-based / ordering oracle
-
ImpactEnumerate joined columns and infer sensitive fields (rex_user.password)
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V2 - Validation and Business Logic Input validation, allowlisting
|
| Exploitation Conditions | Requires an authenticated REDAXO backend user (PR:L) with access to any page rendering a rex_list list that supports sorting; the attacker manipulates the 'sort' HTTP request parameter to name a column that was never registered via setColumnSortable(), causing getSortColumn()/prepareQuery() to place an unauthorized (but escaped) identifier into the ORDER BY clause. Exploitation is limited by the need for valid backend credentials and by the confidentiality-only, inference-based nature of the leak (error-based enumeration and ordering oracle rather than direct data dump). Only versions of redaxo/core prior to 5.21.2 are affected; the 5.21.2 fix validates the requested column with hasColumnOption(..., REX_LIST_OPT_SORT) before accepting it. |
| Impact | This is a low-to-moderate severity, authenticated information-disclosure issue, not an urgent priority. The vendor CVSS of 4.3 (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N) is internally consistent with the description: exploitation requires an authenticated REDAXO backend user (PR:L) but no user interaction, and impact is limited to confidentiality (C:L) via error-based column enumeration and ordering by unselected sensitive fields such as rex_user.password - a slow inference/oracle technique, not bulk data theft. No EPSS score, no CISA KEV listing, and no public POC are present in the provided intelligence, so exploitation status is 'no public exploit identified at time of analysis.' There is no SSVC data supplied. The main signals - moderate CVSS, required backend authentication, indirect confidentiality-only impact, and absence of exploitation evidence - all point the same direction: a real but bounded weakness worth patching in routine cycles rather than emergency response. The source-code diff confirms the root cause and fix, raising confidence in the technical accuracy of the report. |
| Exploit ScenarioDerived | An attacker who already holds a low-privileged REDAXO backend account browses a list view and tampers with the 'sort' request parameter, supplying a column name that was never registered as sortable (e.g. a field from a joined table or rex_user.password). Because getSortColumn() did not validate the parameter against setColumnSortable(), the value is escaped and injected into the ORDER BY clause, letting the attacker use database errors and ordering behavior to enumerate hidden columns and infer sensitive values. No public exploit code is identified, but the technique is straightforward given the confirmed source diff. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 23, 2026
Authenticated REDAXO backend users can exploit improper validation of the 'sort' parameter in rex_list::getSortColumn() (redaxo/core before 5.21.2) to inject unauthorized column names into SQL ORDER BY clauses, enabling error-based enumeration of columns in joined tables and ordering by sensitive fields such as rex_user.password. This low-to-moderate severity information-disclosure issue requires valid backend credentials (PR:L) and yields inference-based leaks-schema enumeration and ordering oracles-rather than direct data dumps. The vendor fixed it in 5.21.2 by validating the requested column against registered sortable columns; no public exploit code or active exploitation is identified at time of analysis.
RemediationAI
Upgrade to REDAXO core 5.21.2 or later. Vendor-released patch: 5.21.2, which validates the 'sort' parameter against columns registered through setColumnSortable() using hasColumnOption(..., REX_LIST_OPT_SORT). See the advisory at https://github.com/redaxo/core/security/advisories/GHSA-4f5f-j737-pm58, the fix PR at https://github.com/redaxo/core/pull/6580, the commit at https://github.com/redaxo/core/commit/c44ba5206a28427984100c994010f2aaa6703efd, and the release at https://github.com/redaxo/core/releases/tag/5.21.2. If an immediate upgrade is not possible, restrict backend access to trusted users, review custom rex_list implementations to avoid joining sensitive tables (such as rex_user) into sortable lists, and monitor backend requests for anomalous 'sort' values; these compensating controls reduce exposure but do not fully eliminate the enumeration and ordering-oracle risk and may limit legitimate administrative workflows.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in composer, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
REDAXO is a PHP-based content management system. The vulnerable component is rex_list, a core helper in redaxo/src/core/lib/list.php that renders sortable data lists in the backend. Its getSortColumn() method reads the 'sort' HTTP request parameter via rex_request() and returns it to prepareQuery(), which builds the SQL ORDER BY clause. The root cause is CWE-20 (improper input validation): the method did not verify that the requested column had been registered as sortable through setColumnSortable(). While the identifier is escaped and does not permit classic SQL injection, an authenticated backend user can still supply any column name, including unselected columns from joined tables (e.g., rex_user.password). Because invalid column names trigger database errors and valid but unselected columns alter result ordering, an attacker can enumerate schema columns and infer data values through error-based and ordering-oracle techniques. The fix in 5.21.2 adds a check using hasColumnOption($sortColumn, REX_LIST_OPT_SORT) before accepting the parameter, as shown in PR #6580 and its unit tests. The affected CPE cpe:2.3:a:redaxo:core:*:*:*:*:*:*:*:* confirms all redaxo/core versions before 5.21.2 are in scope.
Know when Redaxo gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
Network-reachable backend requires low-privileged authentication (PR:L); no UI; impact is confidentiality-only leakage via ORDER BY enumeration (C:L), with no integrity or availability effect.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
REDAXO is a PHP-based content management system. Prior to 5.21.2, rex_list::getSortColumn() in redaxo/src/core/lib/list.php accepts the sort request parameter without checking whether setColumnSortable() registered the requested column. An authenticated backend user can make prepareQuery() add an escaped but unauthorized ORDER BY identifier, allowing error-based enumeration of columns in joined tables and ordering by unselected sensitive fields such as rex_user.password. This issue is fixed in version 5.21.2.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
In REDAXO before 5.6.3, a critical SQL injection vulnerability has been discovered in the rex_list class because of the
Redaxo CMS Mediapool Addon 5.5.1 and older contains an arbitrary file upload vulnerability that allows authenticated use
Remote code execution in REDAXO CMS versions 5.18.2 through 5.21.0 is reachable by authenticated backend users with medi
A Remote Code Execution (RCE) vulnerability in the template management component in REDAXO CMS 5.20.0 allows remote auth
REDAXO CMS v2.11.0 was discovered to contain a remote code execution (RCE) vulnerability. Rated high severity (CVSS 7.2)
An issue was discovered in REDAXO version 5.15.1, allows attackers to execute arbitrary code and obtain sensitive inform
Redaxo v5.15.1 was discovered to contain a remote code execution (RCE) vulnerability via the component /pages/templates.
Remote code execution in the modules component in Yakamara Media Redaxo CMS version 5.12.1 allows an authenticated CMS u
Redaxo CMS 5.2 contains a cross-site request forgery vulnerability that allows unauthenticated attackers to create admin
Arbitrary file disclosure in REDAXO's Backup addon allows authenticated users with backup permissions to read any file w
Triggering an error page of the import process in Yakamara Media Redaxo CMS version 5.12.1 allows an authenticated CMS u
REDAXO is a PHP-based CMS. Rated medium severity (CVSS 6.1), this vulnerability is remotely exploitable, no authenticati
EUVD-2026-85332
GHSA-4f5f-j737-pm58
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB