CVE-2026-28230
CVE-2026-28230 is a medium-severity vulnerability in Steve-community Steve with a CVSS 3.x base score of 6.3. It is not currently listed as actively exploited by CISA, and its EPSS exploit-prediction score is low. The underlying weakness is classified as CWE-284.
Key facts
- Severity: Medium (CVSS 3.x base score 6.3)
- CVSS v4: 5.7
- EPSS exploit prediction: 0% (6th percentile)
- Actively exploited: Not listed in CISA KEV
- EU (EUVD) id: EUVD-2026-8917
- Weakness: CWE-284
- Affected product: Steve-community Steve
- Published:
- Last modified:
Description
SteVe is an open-source EV charging station management system. In versions up to and including 3.11.0, when a charger sends a StopTransaction message, SteVe looks up the transaction solely by transactionId (a sequential integer starting from 1) without verifying that the requesting charger matches the charger that originally started the transaction. Any authenticated charger can terminate any other charger’s active session across the entire network. The root cause is in OcppServerRepositoryImpl.getTransaction() which queries only by transactionId with no chargeBoxId ownership check. The validator checks that the transaction exists and is not already stopped but never verifies identity. As an attacker controlling a single registered charger I could enumerate sequential transaction IDs and send StopTransaction messages targeting active sessions on every other charger on the network simultaneously. Combined with FINDING-014 (unauthenticated SOAP endpoints), no registered charger is even required — the attack is executable with a single curl command requiring only a known chargeBoxId. Commit 7f169c6c5b36a9c458ec41ce8af581972e5c724e contains a fix for the issue.
Frequently asked questions
- What is CVE-2026-28230?
- SteVe is an open-source EV charging station management system. In versions up to and including 3.11.0, when a charger sends a StopTransaction message, SteVe looks up the transaction solely by transactionId (a sequential integer starting from 1) without verifying that the requesting charger matches the charger that originally started the transaction. Any authenticated charger can terminate any other charger’s active session across the entire network. The root cause is in OcppServerRepositoryImpl.getTransaction() which queries only by transactionId with no chargeBoxId ownership check. The validator checks that the transaction exists and is not already stopped but never verifies identity. As an attacker controlling a single registered charger I could enumerate sequential transaction IDs and send StopTransaction messages targeting active sessions on every other charger on the network simultaneously. Combined with FINDING-014 (unauthenticated SOAP endpoints), no registered charger is even required — the attack is executable with a single curl command requiring only a known chargeBoxId. Commit 7f169c6c5b36a9c458ec41ce8af581972e5c724e contains a fix for the issue.
- How severe is CVE-2026-28230?
- CVE-2026-28230 has a CVSS 3.x base score of 6.3, rated medium severity. It is exploitable over network with low attack complexity, requires low privileges and no user interaction. Impact on confidentiality is low, integrity low, and availability low.
- Is CVE-2026-28230 being actively exploited?
- It is not currently listed in CISA's KEV catalog. Its EPSS exploit-prediction score is 0% (6th percentile), an estimate of the probability of exploitation in the next 30 days.
- What products are affected by CVE-2026-28230?
- CVE-2026-28230 affects Steve-community Steve. See the affected-products list for the exact vulnerable versions.
- How do I fix CVE-2026-28230?
- Review the linked vendor and NVD advisories for patched versions and mitigations, then upgrade or apply the recommended workaround.
- Does CVE-2026-28230 have an EU (EUVD) identifier?
- Yes. CVE-2026-28230 is tracked in the ENISA EU Vulnerability Database (EUVD) as EUVD-2026-8917.
- When was CVE-2026-28230 published?
- CVE-2026-28230 was published on 2026-02-26 and last updated on 2026-06-17.
References
- https://github.com/steve-community/steve/commit/7f169c6c5b36a9c458ec41ce8af581972e5c724e
- https://github.com/steve-community/steve/security/advisories/GHSA-6x38-4w7h-cwr8
Affected products (1)
- cpe:2.3:a:steve-community:steve:*:*:*:*:*:*:*:*
More vulnerabilities in Steve-community Steve
- CVE-2024-25407 — High (CVSS 7.5): SteVe v3.6.0 was discovered to use predictable transaction ID's when receiving a StartTransaction request. This…
- CVE-2024-21550 — Medium (CVSS 6.1): SteVe is an open platform that implements different version of the OCPP protocol for Electric Vehicle charge points,…
- CVE-2024-44843 — Medium (CVSS 5.9): An issue in the web socket handshake process of SteVe v3.7.1 allows attackers to bypass authentication and execute…
All CVEs affecting Steve-community Steve →
Other CWE-284 (Improper Access Control) vulnerabilities
- CVE-2026-50746 — Critical (CVSS 10.0): A malicious actor with access to the network could exploit an Improper Access Control vulnerability found in UniFi…
- CVE-2026-46978 — Critical (CVSS 10.0): Vulnerability in the Oracle Solaris product of Oracle Systems (component: Remote Administration Daemon). The…
- CVE-2026-35308 — Critical (CVSS 10.0): Vulnerability in the Oracle Coherence product of Oracle Fusion Middleware (component: Centralized Third Party Jars).…
- CVE-2026-35307 — Critical (CVSS 10.0): Vulnerability in the Oracle Coherence product of Oracle Fusion Middleware (component: Core). Supported versions that…
- CVE-2026-46695 — Critical (CVSS 10.0): Boxlite is a sandbox service that allows users to create lightweight virtual machines (Boxes) and launch OCI containers…
- CVE-2026-46840 — Critical (CVSS 10.0): Vulnerability in Oracle REST Data Services (component: Backend-as-a-Service). Supported versions that are affected are…
Browse all CWE-284 (Improper Access Control) vulnerabilities →