Skip to main content
COSMICBYTEZLABS
NewsSecurityHOWTOsToolsTraining
StudyProjectsNewsletterHire MeAbout
Subscribe

Press Enter to search or Esc to close

News
Security
HOWTOs
Tools
Training
Study
Projects
Newsletter
Hire Me
About
RSS Feed
Reading List
Subscribe

Stay in the Loop

Get the latest security alerts, tutorials, and tech insights delivered to your inbox.

Subscribe NowFree forever. No spam.
COSMICBYTEZLABS

Your trusted source for IT intelligence, cybersecurity insights, and hands-on technical guides.

2045+ Articles
153+ Guides

CONTENT

  • Latest News
  • Security Alerts
  • HOWTOs
  • Checklists
  • Projects
  • Exam Prep

RESOURCES

  • Search
  • Browse Tags
  • Newsletter Archive
  • Reading List
  • RSS Feed

COMPANY

  • About Us
  • Contact
  • Privacy Policy
  • Terms of Service

© 2026 CosmicBytez Labs. All rights reserved.

System Status: Operational
  1. Home
  2. Security
  3. CVE-2026-15704: Critical Auth Bypass in Eclipse BaSyx Go Components
CVE-2026-15704: Critical Auth Bypass in Eclipse BaSyx Go Components

Critical Security Alert

This vulnerability is actively being exploited. Immediate action is recommended.

SECURITYCRITICALCVE-2026-15704

CVE-2026-15704: Critical Auth Bypass in Eclipse BaSyx Go Components

Eclipse BaSyx Go Components up to v1.0.0 contains a CVSS 9.8 authorization bypass caused by inconsistent trailing-slash handling between the ABAC middleware and the HTTP router, allowing unauthenticated access to protected endpoints.

Dylan H.

Security Team

July 25, 2026
5 min read

Affected Products

  • Eclipse BaSyx Go Components <= 1.0.0

Executive Summary

A critical authorization bypass vulnerability (CVE-2026-15704) has been disclosed in Eclipse BaSyx Go Components, a suite of server components for Industry 4.0 and Industrial IoT deployments. The flaw carries a CVSS score of 9.8 and affects all versions up to and including 1.0.0.

The vulnerability stems from inconsistent trailing-slash handling between the ABAC (Attribute-Based Access Control) middleware and the underlying Chi HTTP router. An attacker can exploit this discrepancy to bypass access controls entirely, reaching endpoints that should be protected by ABAC policy enforcement.

CVSS Score: 9.8 (Critical)


Vulnerability Overview

AttributeValue
CVE IDCVE-2026-15704
CVSS Score9.8 (Critical)
TypeAuthorization Bypass (ABAC Middleware)
Attack VectorNetwork
Privileges RequiredNone
User InteractionNone
Affected Versions<= 1.0.0
ComponentEclipse BaSyx Go Components

Root Cause Analysis

Eclipse BaSyx Go Components uses Chi's middleware.StripSlashes middleware in a shared router configuration. The ABAC authorization middleware evaluates access control policy against the original request path, while the HTTP router strips trailing slashes before dispatching to the handler.

This creates a desynchronization between what the ABAC layer sees and what the router ultimately routes:

Request: GET /api/v1/shells/ (trailing slash)
         ↓
ABAC Middleware: evaluates /api/v1/shells/
  → ABAC policy: no rule matches this exact path → PERMIT (fail-open)
         ↓
StripSlashes: path becomes /api/v1/shells
  → Router dispatches to protected handler

When no ABAC rule explicitly covers the slash-appended variant and the policy defaults to permit on no-match, any request with a trailing slash bypasses the intended access control.


Affected Versions

ComponentAffectedStatus
Eclipse BaSyx Go Components<= 1.0.0Patch pending

Attack Vector

1. Attacker identifies Eclipse BaSyx Go endpoint protected by ABAC policy
2. Attacker appends trailing slash to the request path (e.g. /api/resource/)
3. ABAC middleware evaluates the slash-suffixed path — no matching deny rule
4. Chi's StripSlashes removes the trailing slash internally
5. Router dispatches to the protected handler as if authorized
6. Attacker achieves unauthenticated access to protected AAS data or operations

Impact

Eclipse BaSyx is widely deployed in Industry 4.0, Smart Factory, and IIoT environments implementing the Asset Administration Shell (AAS) specification. A successful exploit may allow an unauthenticated attacker to:

ImpactDescription
Unauthorized Data AccessRead asset administration shell data and metadata
Configuration TamperingModify submodels, asset properties, or AAS hierarchies
Operational DisruptionInterfere with ICS/SCADA-integrated components
Lateral MovementUse AAS APIs as a pivot into connected OT systems
Compliance ViolationDefeat IEC 62443 and Industry 4.0 security controls

Remediation

Immediate Actions

1. Upgrade BaSyx Go Components

Apply the patch as soon as an updated release is available from the Eclipse BaSyx project:

# Check current version
go list -m github.com/eclipse-basyx/basyx-go-components
 
# Update to patched version when available
go get github.com/eclipse-basyx/basyx-go-components@latest
go mod tidy

Workarounds (Until Patch is Available)

Option A: Normalize paths before ABAC evaluation

Add explicit path normalization in the middleware chain before the ABAC policy check:

// Normalize trailing slashes before ABAC middleware
router.Use(func(next http.Handler) http.Handler {
    return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
        r.URL.Path = strings.TrimRight(r.URL.Path, "/")
        next.ServeHTTP(w, r)
    })
})
router.Use(abacMiddleware)
router.Use(middleware.StripSlashes)

Option B: Set ABAC default to deny-all

Configure the ABAC policy to deny by default (fail-closed) rather than permitting on no-match:

# basyx-abac-config.yaml
default_policy: deny  # Change from allow to deny
rules:
  - path: /api/v1/shells
    methods: [GET]
    roles: [reader]
  # ... explicit allow rules

Option C: WAF / Reverse Proxy Path Normalization

Enforce trailing-slash removal at the network boundary before requests reach BaSyx:

# Nginx — remove trailing slashes before proxying to BaSyx
location ~ ^(.+)/$ {
    return 301 $1;
}

Detection

IndicatorDescription
Requests with trailing slashes to protected endpointsPossible exploitation attempt
Unauthenticated access to /api/v1/shells/, /api/v1/submodels/Likely exploitation
ABAC audit logs showing permit on unmatched pathsPolicy bypass indicator

Monitor HTTP access logs for unusual trailing-slash patterns on AAS API paths:

# Example grep pattern for exploitation attempts
grep -E 'GET /api/v1/(shells|submodels|aas)[^"]*/$' /var/log/basyx/access.log

Post-Remediation Checklist

  1. Apply patch or implement workaround immediately
  2. Audit ABAC policies — ensure deny-default is enforced
  3. Review access logs for trailing-slash requests to protected paths
  4. Verify path normalization order in middleware chain after any upgrade
  5. Network-segment BaSyx components — restrict to internal OT/ICS networks only
  6. Enable authentication in front of all BaSyx endpoints exposed beyond localhost

References

  • NVD — CVE-2026-15704
  • Eclipse BaSyx Project

Related Reading

  • Critical RCE in WPvivid Backup Plugin Threatens 900,000+
  • Researcher Publishes GitLab RCE PoC — Authenticated Users Execute Commands as Git
#CVE-2026-15704#Eclipse BaSyx#Authorization Bypass#Go#ABAC#IoT#ICS

Related Articles

CVE-2026-49186: Critical MQTT Broker Wildcard ACL Bypass

A critical CVSS 9.8 vulnerability in a local MQTT broker fails to enforce topic-level ACLs, allowing any client to use wildcard characters to enumerate hidden…

6 min read

CVE-2026-47724: nebula-mesh API Authorization Bypass Enables Cross-Tenant Takeover (CVSS 9.9)

A critical authorization bypass in nebula-mesh, the self-hosted control plane for Slack's Nebula VPN, allows any holder of a non-admin operator API key to access all other tenants' hosts, firewall rules, network configs, and mobile bundles. Fixed in v0.3.4.

4 min read

CVE-2026-65049: Ninja Forms Multisite Flaw Enables Network-Wide Data Deletion

A CVSS 9.3 critical incorrect authorization vulnerability in Ninja Forms 3.14.8 and prior for WordPress Multisite allows a subsite administrator to trigger deletion of all Ninja Forms data across the entire network by exploiting a flawed capability check combined with an unsafe migration routine.

6 min read
Back to all Security Alerts