{"schema":"threatline.record/2","record":{"id":"CVE-2026-63190","aliases":["GHSA-3mq8-hrhf-7hv6"],"summary":"FearlessCMS: Unauthenticated debug scripts expose filesystem operations and XSS","details":"FearlessCMS is a flat-file `content` management system centered on simplicity and open source. Prior to version 0.1.4, five debug/test PHP scripts under `admin/` perform privileged operations without `isLoggedIn()` authentication checks, CSRF protection or adequate `path` validation. On PHP's built-in development server, including the default Docker deployment, `router.php` checks an unnormalized admin URI prefix while the filesystem resolves dot segments, so `/./admin/` bypasses the admin login gate and executes those scripts directly. In `admin/debug_save_flow.php`, attacker-controlled `path` and `content` reach `file_put_contents` for arbitrary `.md` writes under `content`/ or outside it through `path` traversal, enabling site defacement and stored JavaScript in public pages; `print_r($_POST)` output without `htmlspecialchars` escaping also causes reflected cross-site scripting. The `admin/debug_content.php` `path` parameter reaches `scandir()`, `file_get_contents()` and `posix_getpwuid()`, permitting arbitrary directory enumeration and `.md` file reads that expose absolute paths, ownership, permissions, hashes and `content` previews. The `admin/preview-handler.php` endpoint accepts JSON `content` and `title` and writes enumerable files under `content/_preview/`, enabling stored cross-site scripting and disk exhaustion. The `admin/testdebug.php` endpoint appends to `admin/testdebug.log` without authentication, also enabling disk exhaustion. The `admin/test_redirect.php` script exposes a test artifact but escapes its inputs and is not itself an XSS sink. Stored script execution can steal sessions and compromise administrators when they view affected `content`. Reads and writes execute with PHP's privileges; the tested deployment runs PHP as root, amplifying filesystem impact. This issue is fixed in version 0.1.4.","categories":["Unclassified"],"product":"FearlessCMS","vendor":"fearlessgeekmedia","ecosystem":null,"affected_ranges":[{"source":"CVE List","source_url":"https://www.cve.org/CVERecord?id=CVE-2026-63190","source_modified_at":"2026-10-28T19:28:00.080Z","fetched_at":"2026-10-28T20:58:01.013507Z","product":"FearlessCMS","vendor":"fearlessgeekmedia","versions":[{"version":"< 0.1.4","status":"affected"}],"defaultStatus":null}],"fixed_versions":[],"cvss":9.4,"severity":"Critical","kev":{"listed":false},"epss":{"probability":null,"percentile":null,"score_date":null},"published_at":"2026-10-28T19:28:00.080Z","modified_at":"2026-10-28T19:28:00.080Z","provenance":[{"source":"CVE List","url":"https://www.cve.org/CVERecord?id=CVE-2026-63190","fetched_at":"2026-10-28T20:58:01.013507Z","source_modified_at":"2026-10-28T19:28:00.080Z"}],"sources":["CVE List"],"references":[{"source":"CVE List","url":"https://github.com/fearlessgeekmedia/FearlessCMS/security/advisories/GHSA-3mq8-hrhf-7hv6","tags":["x_refsource_CONFIRM"]},{"source":"CVE List","url":"https://github.com/fearlessgeekmedia/FearlessCMS/commit/59fb22cf989b5ba14c387c3212e15b146e02cf9a","tags":["x_refsource_MISC"]},{"source":"CVE List","url":"https://github.com/fearlessgeekmedia/FearlessCMS/tree/0.1.4","tags":["x_refsource_MISC"]}],"locations":[],"motoko_assessment":{"status":"requires_architecture_review","automatic_remediation":false},"cve_state":"PUBLISHED","cvss_source":"CVE List","classification":{"method":"product-first software-layer rules","rules_version":"2.1","matched_on":null,"confidence":"unknown","reviewed":false},"change_timestamp":"2026-10-28T19:28:00.080Z","content_hash":"76c5fb03d06dce5e0325a6b8501ee804f6b98a69ceef1c51de12578b553ed4d8"}}
