Findings

CVE-2026-102695

OmniFaces is a utility library for Faces.

Published Jul 24, 2026 · updated Oct 14, 2026

## 1. Forged combined-resource IDs accepts a path-derived ID without an authenticity check, inflates it without an output limit, converts it to attacker-selected resource identifiers, and retains unique IDs in an unbounded static cache. In bounded tests, 20,754 encoded bytes inflated to 16,000,000 characters (about 770:1; about 49 MB observed heap delta), and 200 unique IDs added 200 permanent cache entries. A legitimately shaped short ID remained about 1:1, while malformed input was rejected; the missing distinction is between a server-issued ID and an attacker-minted but structurally valid ID. The minimal application also confirmed three sink tails from the same forged-ID root: - A wildcard CDN mapping performed a server-side fetch and relayed the exact loopback-canary body. This requires the documented combined-resource and wildcard-CDN configuration. - A forged inner resource bypassed the excluded-resource boundary and returned its raw content. - A forged inner resource plus a canary header caused an outbound GET to that host. This result is blind and deployment-dependent; I am not claiming arbitrary-scheme or arbitrary-destination SSRF. These behaviors reproduce after the fix for CVE-2026-41883 / GHSA-vp6r-9m58-5xv8. That advisory concerned EL evaluation order in the wildcard CDN path. This report has a different root: unsigned combined IDs and missing decode/cache bounds, with separately demonstrated residual sink behavior. ## 2. Source-map cache With the documented optional source-map handler above a synthetic resource handler, 40 unique missing combined-resource requests grew the process-wide source-map cache from 13 to 92 entries. It has no size or eviction bound. This has a separate cache, configuration prerequisite, and fix from family 1. ## 3. HashParam callback output A URL-fragment value containing a single-quote JavaScript payload was stored by and later written unescaped into the Ajax callback script. On the follow-up Ajax render, real Chrome execute

Timeline

Detection, updates, and resolution for this record.

  1. Oct 14, 2026 · GitHub Advisory Database

    Fix available

    org.omnifaces:omnifaces fixed in 1.14.3; org.omnifaces:omnifaces fixed in 2.7.33; org.omnifaces:omnifaces fixed in 3.14.23; org.omnifaces:omnifaces fixed in 4.7.12

  2. Oct 14, 2026 · NIST NVD

    Detected

    OmniFaces is a utility library for Faces. In OmniFaces versions before 1.14.3, 2.7.33, 3.14.23, 4.7.12, and 5.4.2, CombinedResourceHandler accepts a structurally valid deflated and base64 encoded combined resource ID without verifying that the server issued it. A forged ID can cause unbounded decoded output, add unique reconstructed IDs to a process-lifetime cache, or combine resources other than

  3. Oct 14, 2026 · GitHub Advisory Database

    Fix available

    org.omnifaces:omnifaces fixed in 1.14.3

  4. Oct 14, 2026 · GitHub Advisory Database

    Fix available

    org.omnifaces:omnifaces fixed in 2.7.33

  5. Oct 14, 2026 · GitHub Advisory Database

    Fix available

    org.omnifaces:omnifaces fixed in 3.14.23

  6. Oct 14, 2026 · GitHub Advisory Database

    Fix available

    org.omnifaces:omnifaces fixed in 4.7.12

  7. Oct 14, 2026 · GitHub Advisory Database

    Fix available

    org.omnifaces:omnifaces fixed in 5.4.2

Affected

  • Maven org.omnifaces:omnifaces0 → 1.14.3
  • Maven org.omnifaces:omnifaces2.0.0 → 2.7.33
  • Maven org.omnifaces:omnifaces3.0.0 → 3.14.23
  • Maven org.omnifaces:omnifaces4.0.0 → 4.7.12
  • Maven org.omnifaces:omnifaces5.0.0 → 5.4.2

Sources

  • CVE.orgCVE-2026-102695

    Official CVE identifier

    cve.org
  • GitHub Advisory DatabaseGHSA-fp43-vj7g-pg92

    GitHub Advisory Database record mirrored by OSV.

    github.com
  • NIST NVDCVE-2026-102695

    OmniFaces is a utility library for Faces. In OmniFaces versions before 1.14.3, 2.7.33, 3.14.23, 4.7.12, and 5.4.2, CombinedResourceHandler accepts a structurally valid deflated and base64 encoded combined resource ID without verifying that the server issued it. A forged ID can ca

    nvd.nist.gov
  • OSV.devGHSA-fp43-vj7g-pg92

    OmniFaces: Forged combined-resource IDs and related output/push boundaries

    osv.dev

References