Response playbooks, investigation guides, and Atomic Red Team tests are Pro-only. Upgrade to unlock the full detection package for CVE-2026-49352.
Upgrade to ProDetect 9router Hardcoded Default JWT Secret Authentication Bypass (CVE-2026-49352) in Splunk
Detects exploitation attempts against 9router (npm package) versions 0.2.21 through 0.4.41, which ship a hardcoded default fallback JWT signing secret (CWE-798). When an operator fails to override the default secret, an attacker can forge arbitrary JWTs (including admin/privileged claims) and bypass authentication entirely. Detection focuses on identifying JWTs signed with the known-public default secret, anomalous authentication success patterns following token forgery, and process/network indicators consistent with public PoC exploitation against 9router deployments.
MITRE ATT&CK
SPL Detection Query
index=* sourcetype=9router:auth
| eval alg=coalesce(jwt_header_alg, "unknown")
| where alg IN ("HS256","HS384","HS512")
| eval suspicious_ua=if(match(client_user_agent, "(?i)python-requests|curl|jwt_tool|PyJWT"),1,0)
| where auth_result="success" AND (isnull(prior_session_id) OR suspicious_ua=1)
| stats count as attempt_count, min(_time) as first_seen, max(_time) as last_seen by src_ip, jwt_subject, client_user_agent
| where attempt_count>=1
| convert ctime(first_seen) ctime(last_seen) Splunk search for anomalous successful JWT-based authentications to 9router lacking prior session context, indicative of forged tokens using the known default secret.
Data Sources
Required Sourcetypes
False Positives & Tuning
- Legitimate first-time API integrations
- Automated CI/CD service accounts hitting the router API
- Load balancer health probes with generic user agents
Other platforms for CVE-2026-49352
Testing Methodology
Validate this detection against 4 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 1Forge JWT using published default secret
Expected signal: Application auth log entry showing a successful authentication event with HS256 JWT and admin role claim, with no prior session record for the subject.
- Test 2Simulate JWT forgery tooling user agent
Expected signal: HTTP access log and application auth log capturing the jwt_tool user agent string alongside an authentication attempt.
- Test 3Validate unrotated default secret configuration
Expected signal: File access/read event on the 9router config file captured by EDR or file integrity monitoring.
- Test 4Windows PowerShell JWT forgery and replay
Expected signal: Windows PowerShell script block logging (Event ID 4104) capturing the token generation, plus 9router application auth log for the replayed request.
Unlock playbooks & atomic tests with Pro
Get the full detection package for CVE-2026-49352 — response playbook and atomic red team tests, plus investigation guidance and hunting queries.
df00tech Pro — £29/user/month