Linux Kernel J1939 Transport Layer Session Deactivation Warning Condition Vulnerability

Vulnerability

A vulnerability in the Linux kernel's J1939 transport layer has been addressed. The issue arose because the function 'j1939_session_deactivate()' was incorrectly assumed to require a session reference count of at least 2. In certain concurrent scenarios, this function could be called with a reference count of less than 2. However, this did not pose a problem, as the function checks the session's active state before modifying the reference count. The vulnerability was highlighted by a warning that appeared when the reference count was below the expected threshold, indicating a potential issue in the session management process.

Impact

Exploitation of this vulnerability could lead to improper session management in the J1939 transport layer, potentially causing issues in how sessions are deactivated and managed concurrently.

Reproduction

The vulnerability can be reproduced by creating a scenario where 'j1939_session_deactivate()' is called with a reference count of 2, while another process simultaneously calls 'j1939_session_get_by_addr()' twice, increasing the reference count to 3. This sequence can trigger the warning condition, highlighting the vulnerability in session management.

Added: Jun 9, 2025, 7:46 PM
Updated: Jun 9, 2025, 7:46 PM

Vulnerability Rating

Custom Algorithm
spread
9.0
impact
0.0
exploitability
5.3
remediation
0.0
relevance
0.0
threat
4.8
urgency
2.9
incentive
1.7

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.