Cross-Site Scripting (XSS) in redaxo/source (CVE-2026-63002)
Summary
Cross-site scripting in redaxo/source (CVE-2026-63002). Risk of unauthorized operations or information disclosure. Exploitable via sync.php. Mitigation: upgrade to 5.21.2 or later.
Original description
The description as published by the source.
Summary
The mediapool sync page (sync.php) renders filenames from the /media filesystem directory directly into HTML without applying rex_escape() (i.e., htmlspecialchars). Any file placed in the media directory whose filename contains HTML metacharacters will execute JavaScript in the browser of any backend user who views the sync page.
Details
In redaxo/src/addons/mediapool/pages/sync.php, the variable $diffFiles is populated from actual filesystem filenames (files in /media/ not yet registered in the database). These filenames are then rendered without escaping:
File: redaxo/src/addons/mediapool/pages/sync.php:119-120
foreach ($diffFiles as $file) {
if (is_writable(rex_path::media($file))) {
$e = [];
$e['label'] = '' . $file . ''; // NO rex_escape!
$e['field'] = ''; // NO rex_escape!
$writable[] = $e;
} else {
$notWritable[] = $file;
}
}
File: redaxo/src/addons/mediapool/pages/sync.php:170
$fragment->setVar('body', '' . implode('', $notWritable) . '', false);
// $notWritable contains unescaped filenames
By contrast, all other filename displays in the codebase use rex_escape($fname) (e.g., media.detail.php:236, media.list.php). The sync page is accessible to any backend user with the media[sync] permission (not exclusively admins).
PoC
- Place a file named
.txtinto the REDAXO/media/directory (via backup restore or server access) witho…
Source: NIST National Vulnerability Database NVD GitHub Advisory
Auto-generated summary
Assembled by SecPulse from the source data (CVSS, CWE, affected versions) using templates — no AI involved. Check the original description and references below for exact details.
A vulnerability tracked as CVE-2026-63002 has been found in redaxo/source.
Attackers can target a specific entry point like sync.php over the network to misuse the product.
Risk of unauthorized operations or information disclosure. CVSS score: 4.8/10.
What to do: upgrade redaxo/source to 5.21.2 or later.
If unsure, ask your IT team or search "redaxo/source CVE-2026-63002" on the vendor's site.
CVE-2026-63002 (redaxo/source) — CWE-79 / CVSS v3 4.8
Attack vector: remote (network-reachable)
Attack surface: sync.php / htmlspecialchars / media.list.php
Patched: 5.21.2 — apply immediately
Plan: 1) Audit SBOM/dependencies, 2) Stage→prod upgrade, 3) Add WAF/proxy monitoring on affected endpoints, 4) Hunt IOCs in logs.
Refs: see the GHSA / vendor advisory / patched release linked on this page.
Cross-site scripting (XSS) (CWE-79) exists in redaxo/source. Attackers reach the vulnerable code path via sync.php.
Check the vendor advisory for the affected versions of redaxo/source. Attack surface: sync.php / htmlspecialchars / media.list.php.
Severity: Medium (CVSS 4.8/10). Risk of unauthorized operations or information disclosure.
Update to 5.21.2.
Until the patch is applied: disable the affected feature, apply WAF rules, or restrict access via network ACLs.
Search webserver/proxy logs for unusual request patterns matching this CVE's known IOCs. Run grep -r 'redaxo/source' . against your dependency files (package-lock.json, requirements.txt, go.sum) to find affected services.
Response actions
Concrete steps and command examples for SOC/SRE teams to execute in order
-
1Identify exposure identify
grep -r 'redaxo/source' . | grep -v node_modulesリポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で
redaxo/sourceを grep し、稼働しているサービス・バージョンを把握する。 -
2Apply patch patch
Upgrade redaxo/source to 5.21.2ステージング環境で 5.21.2 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスを含めること。
-
3Post-deployment verification verify
Confirm patched version is live in productionパッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番ではアクセスログ・WAF でアラート再発が無いか継続監視。
Affected packages
References
- web github.com
- web github.com
- web github.com
- web github.com
- web github.com