WSO2 Multiple Products Path Traversal / Signature Verification Bypass (CVE-2026-5430)
Detects exploitation attempts against CVE-2026-5430, a KEV-listed vulnerability affecting multiple WSO2 products (API Manager, Identity Server, Enterprise Integrator, and others). The advertised weakness is a path traversal (directory traversal) issue with an associated improper verification of cryptographic signature (CWE-347) that allows attackers to bypass content/signature validation and access or write files outside the intended directory via crafted request paths. Exploitation typically manifests as encoded traversal sequences (../, %2e%2e%2f, ..%252f) in URI paths, multipart file-upload endpoints, or authentication callback parameters against WSO2 management/carbon and gateway endpoints. Because CISA lists this CVE as actively exploited (KEV), any successful traversal reaching sensitive files (e.g. repository/conf, wso2carbon keystores, deployment artifacts) should be treated as a probable compromise.
Vulnerability Intelligence
KEV — Known ExploitedAffected Software
- Vendor
- WSO2
- Product
- Multiple Products
Weakness (CWE)
Timeline
- Disclosed
- September 24, 2026
References & Proof of Concept
- https://security.docs.wso2.com/en/latest/security-announcements/security-advisories/2026/WSO2-2026-5328/
- https://www.cisa.gov/news-events/directives/bod-26-04-prioritizing-security-updates-based-risk
- https://www.cisa.gov/news-events/directives/bod-26-04-implementation-guidance-prioritizing-security-updates-based-risk
- https://nvd.nist.gov/vuln/detail/CVE-2026-5430
CVSS
What is CVE-2026-5430 WSO2 Multiple Products Path Traversal / Signature Verification Bypass (CVE-2026-5430)?
WSO2 Multiple Products Path Traversal / Signature Verification Bypass (CVE-2026-5430) (CVE-2026-5430) maps to the Initial Access and Collection tactics — the adversary is trying to get into your network in MITRE ATT&CK.
This page provides production-ready detection logic for WSO2 Multiple Products Path Traversal / Signature Verification Bypass (CVE-2026-5430), covering the data sources and telemetry it touches: IIS Logs, Web Proxy, Reverse Proxy. The queries below are rated critical severity at high confidence, and ship for 7 SIEM platforms — KQL, SPL, Elastic, QRadar, Sumo, YARA-L, LogScale.
MITRE ATT&CK
- Tactic
- Initial Access Collection
let traversalPatterns = dynamic(["../","..\\","%2e%2e%2f","%2e%2e/","..%2f","%252e%252e%252f","..%255c","%c0%ae"]);
let wso2Paths = dynamic(["/carbon","/services/","/fileupload","/oauth2/","/api/am/","/authenticationendpoint","/repository/"]);
W3CIISLog
| where csUriStem has_any (wso2Paths) or csUriQuery has_any (wso2Paths)
| extend decodedPath = url_decode(strcat(csUriStem, "?", coalesce(csUriQuery, "-")))
| where decodedPath has_any (traversalPatterns) or decodedPath contains ".."
| where decodedPath has_any (dynamic(["repository/conf","wso2carbon",".jks","deployment.toml","secret-conf","web.xml","passwd","cipher-text"]))
| project TimeGenerated, cIP, csMethod, csUriStem, csUriQuery, decodedPath, scStatus, csUserAgent, sSiteName, Computer
| sort by TimeGenerated desc Flags IIS/reverse-proxy logs fronting WSO2 products where a request to a WSO2 endpoint contains encoded or literal path-traversal sequences targeting sensitive configuration or keystore files.
Data Sources
Required Tables
False Positives
- Legitimate vulnerability scanners (Nessus, Qualys, Nuclei) probing traversal payloads during authorized assessments
- Security researchers or internal red-team validating patch status
- URL-rewriting middleware that legitimately encodes '..' in benign query parameters unrelated to file access
Sigma rule & cross-platform mapping
The detection logic for WSO2 Multiple Products Path Traversal / Signature Verification Bypass (CVE-2026-5430) (CVE-2026-5430) above is provided in a vendor-neutral
form so you can deploy it on any SIEM. The same logic is shipped here as native
KQL (Microsoft Sentinel / Defender), SPL (Splunk), Elastic (Elastic Security (EQL)), QRadar (IBM QRadar (AQL)), Sumo (Sumo Logic CSE), YARA-L (Google Chronicle / SecOps), LogScale (CrowdStrike LogScale (CQL)) queries. In Sigma terms, this detection targets the
following logsource:
logsource:
category: network_connection
product: windows Browse the community-maintained Sigma rules for this technique:
Platform-specific guides for CVE-2026-5430
References (4)
- https://security.docs.wso2.com/en/latest/security-announcements/security-advisories/2026/WSO2-2026-5328/
- https://www.cisa.gov/news-events/directives/bod-26-04-prioritizing-security-updates-based-risk
- https://www.cisa.gov/news-events/directives/bod-26-04-implementation-guidance-prioritizing-security-updates-based-risk
- https://nvd.nist.gov/vuln/detail/CVE-2026-5430
Testing Methodology
Validate this detection against 3 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.
- Test 1Encoded path traversal probe against WSO2 carbon endpoint
Expected signal: Reverse-proxy/IIS access log entry with encoded '..%2f' sequences on a /carbon path targeting repository/conf/deployment.toml.
- Test 2Double-encoded traversal to keystore file
Expected signal: Web access log with '%252f' sequences on /fileupload targeting wso2carbon.jks.
- Test 3Windows-hosted WSO2 traversal probe via PowerShell
Expected signal: IIS/reverse-proxy log with '%255c' encoded backslash traversal on /services targeting secret-conf.
Response Playbook
Triage
- Confirm the target host runs an affected WSO2 product (API Manager, Identity Server, Enterprise Integrator, Micro Integrator) and identify its exact version against advisory WSO2-2026-5328.
- URL-decode the full request path/query from the alert and determine whether the traversal reached a sensitive file (repository/conf/*, *.jks keystore, deployment.toml, secret-conf) versus a probe that was blocked (check HTTP status: 200/206 with body bytes indicates likely success).
- Correlate the source IP against threat-intel and prior activity; determine if it is a known scanner, an authorized tester, or an unattributed external host.
- Pull the WSO2 carbon/gateway access and audit logs around the request time to see if the same source subsequently authenticated, uploaded artifacts, or accessed OAuth/token endpoints.
Containment
- If successful traversal to configuration or keystore files is confirmed, isolate the WSO2 node from untrusted networks and route traffic to a patched/known-good instance.
- Block the offending source IP(s) at the WAF/reverse proxy and add a WAF rule rejecting encoded '..' sequences on WSO2 endpoints as a stopgap until patching completes.
- Rotate any secrets that may have been exposed: wso2carbon.jks and internal keystore passwords, admin credentials, OAuth client secrets, and any tokens stored in exposed config.
Evidence Collection
- Preserve the raw web/reverse-proxy access logs and WSO2 carbon/audit logs covering the exploitation window before rotation or reimaging.
- Capture the affected WSO2 filesystem (repository/conf, repository/deployment, and keystore directories) with hashes to establish which files were read or modified.
- Export network flow/PCAP for the source IP to document data exfiltration volume and any follow-on connections.
Escalation Criteria
- ! Escalate to incident response immediately if a traversal request returned sensitive keystore or configuration content (HTTP 200 with non-trivial response size).
- ! Escalate if post-exploitation activity is observed — new artifact deployment, unexpected admin logins, OAuth client creation, or outbound C2 from the WSO2 host.
Investigation Guide
Forensic Artifacts
- >
WSO2 carbon access logs and wso2carbon audit logs (repository/logs/) - >
Reverse-proxy/IIS/Nginx access logs containing the decoded traversal request - >
Timestamps and hashes of files under repository/conf and keystore directories - >
WAF event logs for blocked vs allowed traversal attempts
Tuning Guidance
Baseline authorized scanner source IPs (internal vuln-management ranges, contracted pen-test hosts) and exclude them or route their alerts to a low-severity queue. Ensure logging captures the full raw URI and query string BEFORE any proxy normalization strips '..' sequences, otherwise decoded-traversal detection will miss double-encoded payloads. If your reverse proxy already rejects encoded traversal with a 400/403, prioritize alerts on requests that returned 200/206 to focus on likely-successful exploitation.
Hunting Queries
Surfaces repeated traversal attempts from a single source that target WSO2 keystore/config files, indicating deliberate exploitation rather than a one-off scan.
W3CIISLog | extend d = url_decode(strcat(csUriStem,"?",coalesce(csUriQuery,"-"))) | where d contains ".." and d has_any("wso2carbon","repository/conf",".jks","deployment.toml") | summarize hits=count(), files=make_set(d) by cIP | where hits > 1 index=web (uri_path="*/carbon*" OR uri_path="*/services/*") | eval d=urldecode(uri_path."?".coalesce(uri_query,"-")) | where match(d,"(?i)\.\.") AND match(d,"(?i)(wso2carbon|repository/conf|\.jks|deployment\.toml)") | stats count values(d) as payloads by src_ip Atomic Red Team Tests
Sends a single-encoded traversal request targeting a WSO2 configuration file to validate detection of decoded '../' sequences on WSO2 endpoints.
Command
curl -sk 'https://wso2-lab.internal:9443/carbon/..%2f..%2f..%2frepository%2fconf%2fdeployment.toml' -o /tmp/wso2_trav_test.out Cleanup
rm -f /tmp/wso2_trav_test.out Expected Telemetry
Reverse-proxy/IIS access log entry with encoded '..%2f' sequences on a /carbon path targeting repository/conf/deployment.toml.
Expected Detection
KQL/SPL rule fires on decoded traversal reaching 'repository/conf' / 'deployment.toml'.
Issues a double-encoded (%252e) traversal request aimed at the wso2carbon.jks keystore to test double-decoding logic.
Command
curl -sk 'https://wso2-lab.internal:9443/fileupload/..%252f..%252frepository%252fresources%252fsecurity%252fwso2carbon.jks' -o /tmp/wso2_jks_test.out Cleanup
rm -f /tmp/wso2_jks_test.out Expected Telemetry
Web access log with '%252f' sequences on /fileupload targeting wso2carbon.jks.
Expected Detection
Detection matches on '%252e'/'wso2carbon'/'.jks' patterns after decoding.
Uses PowerShell to send a backslash-encoded traversal against a Windows-hosted WSO2 gateway to validate cross-platform log coverage.
Command
powershell -c "try { Invoke-WebRequest -Uri 'https://wso2-lab.internal:8243/services/..%255c..%255crepository%255cconf%255csecret-conf%255csecret.properties' -SkipCertificateCheck -OutFile $env:TEMP\wso2_win_test.out } catch {}" Cleanup
powershell -c "Remove-Item -Force $env:TEMP\wso2_win_test.out -ErrorAction SilentlyContinue" Expected Telemetry
IIS/reverse-proxy log with '%255c' encoded backslash traversal on /services targeting secret-conf.
Expected Detection
Rule matches encoded backslash traversal ('..%255c') reaching 'secret-conf'.