CVE-2026-42467
Official description Straight from the sourceThe vendor's or NVD's own wording, published unedited. Authoritative, but often terse — it says what broke, rarely what to do.
NVD · uneditedAn issue was discovered in Open-SAE-J1939 thru commit b6caf884df46435e539b1ecbf92b6c29b345bdfe (2025-11-30) in SAE_J1939_Read_Binary_Data_Transfer_DM16 causing a denial of service via crafted CAN frame on the J1939 bus.
Technical summary Written by usOur analysis, written from the advisory, the CVSS vector and the affected-version data. It adds context the advisory leaves out, and never invents facts that are not in the source.
dbcve analysis · moderate confidenceA denial of service vulnerability exists in Open-SAE-J1939's SAE_J1939_Read_Binary_Data_Transfer_DM16 function through commit b6caf884df46435e539b1ecbf92b6c29b345bdfe. The function fails to properly validate or bounds-check incoming CAN frame data during binary data transfer (DM16) processing, allowing an attacker on the J1939 bus to trigger a crash or hang by sending a specially crafted CAN frame.
Verify against the referenced sources before acting — the references below are authoritative for this CVE, this summary is not.
CVSS breakdown How the score is builtThe industry scoring standard. It rates how the flaw is reached, what it takes to exploit, and what an attacker gains — the score is derived from those, not the other way round.
From the vector- Attack vector
- Network
- Complexity
- Low
- Privileges
- None
- User interaction
- None
- Scope
- Unchanged
- Confidentiality
- None
- Integrity
- None
- Availability
- High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Am I affected? How to checkSteps we derive from the advisory and the affected-version data, so you can decide whether this CVE reaches your setup. They are a guide, not a scan — your own configuration is the authority.
dbcve checksWork through these to decide whether this CVE applies to you.
-
Identify Open-SAE-J1939 usageSearch your codebase, build artifacts, or embedded system for files or libraries originating from the Open-SAE-J1939 project. Look for source files named j1939*.c or j1939*.h, or linked library objects containing 'sae_j1939' in their name.Affected if Open-SAE-J1939 is present in the system
-
Determine the version or commitIf using git, run 'git log --oneline' in the Open-SAE-J1939 repository directory and check if commit b6caf884df46435e539b1ecbf92b6c29b345bdfe or any commit prior to it is included in your build. If using a release, compare the release version to the timeline of commits around b6caf884df.Affected if The installed version includes commit b6caf884df or an earlier commit
-
Verify SAE_J1939_Read_Binary_Data_Transfer_DM16 function existsSearch the source code for the function 'SAE_J1939_Read_Binary_Data_Transfer_DM16'. Use grep or similar: grep -r 'SAE_J1939_Read_Binary_Data_Transfer_DM16' .Affected if The function is present in the codebase
-
Check if DM16 binary data transfer is enabledSearch for calls to the DM16 function or references to binary data transfer in your application code. Look for usage patterns like 'SAE_J1939_Read_Binary_Data_Transfer_DM16' being invoked, or configuration enabling DM16/PGN 0xEA00 (the PGN for DM16).Affected if DM16 binary data transfer functionality is actively used or configured in the application
-
Confirm CAN frame reception is exposedDetermine whether the J1939 stack processes incoming CAN frames from external sources. Review the main loop or interrupt handlers that call the J1939 reception functions (such as SAE_J1939_Receive) and verify if the CAN interface can receive frames from untrusted bus participants.Affected if The system accepts and processes incoming CAN frames from the J1939 bus
You are affected if your environment uses Open-SAE-J1939 at a version that includes commit b6caf884df or earlier, the SAE_J1939_Read_Binary_Data_Transfer_DM16 function exists, DM16 binary data transfer is enabled, and the system processes incoming CAN frames from the bus.
Generated from the published advisory. Verify against your own configuration.
Remediation Closing itWhat it takes to close this. Where a vendor fix exists we point at it; where none exists we say so plainly, and can build one. Effort estimates are scoped from the advisory, not from your codebase.
From vendor dataImplement robust input validation and bounds checking in the SAE_J1939_Read_Binary_Data_Transfer_DM16 function to verify CAN frame payload lengths and values before processing. Consider adding defensive error handling to gracefully manage malformed frames without causing a denial of service.
- Consultation2.0 h
- Implementation4.0 h
- Testing3.0 h
- Review / QA1.0 h
An estimate, not a bill — we confirm scope with you before any work starts. Need it this week? Rush from $2,800.
Scan for this in your stack
Free · runs locallyCheck whether your project pulls in CVE-2026-42467 — or any other known-vulnerable package — straight from your lock files. Free and open source; it runs locally and uploads nothing.
References Go to the primary sourcePrimary sources — vendor advisories, patches and trackers. Where our summary and a reference disagree, the reference wins.
Primary sourcesPractitioner notes
ContributedPeer-ranked notes from engineers who’ve handled CVE-2026-42467 in production — separate from our analysis above.
The advisory tells you what broke. It rarely tells you what actually worked. If you’ve dealt with this one, that detail is what the next engineer is searching for.
- The version that genuinely resolved it — not the one the vendor claimed
- A config change or rule that shut the vector down
- A gotcha in the upgrade path that cost you an afternoon
No notes yet
Be the first to add a field note for this CVE — a mitigation you’ve verified, a version caveat, or a link to a working fix. Sign in above to contribute.
A place for practitioners to share what actually worked: a mitigation you’ve tested, a configuration change, a version- or environment-specific caveat, or a link to a verified patch. The most useful notes rise to the top as peers upvote them, so the signal stays high.
- Verified mitigations, workarounds, and config changes
- Version or environment caveats, and links to real fixes
- No weaponised exploit code, or anything meant to cause harm
- No spam, self-promotion, credentials, or personal data