Linux Kernel up to 6.19.11 lec.h sock_def_readable use after free

CVSS Meta Temp Score
CVSS is a standardized scoring system to determine possibilities of attacks. The Temp Score considers temporal factors like disclosure, exploit and countermeasures. The unique Meta Score calculates the average score of different sources to provide a normalized scoring system.
Current Exploit Price (≈)
Our analysts are monitoring exploit markets and are in contact with vulnerability brokers. The range indicates the observed or calculated exploit price to be seen on exploit markets. A good indicator to understand the monetary effort required for and the popularity of an attack.
CTI Interest Score
Our Cyber Threat Intelligence team is monitoring different web sites, mailing lists, exploit markets and social media networks. The CTI Interest Score identifies the interest of attackers and the security community for this specific vulnerability in real-time. A high score indicates an elevated risk to be targeted for this vulnerability.
7.6$0-$5k0.00

Summaryinfo

A vulnerability classified as critical was found in Linux Kernel up to 6.19.11. Affected by this issue is the function sock_def_readable in the library lec.h. Executing a manipulation can lead to use after free. The identification of this vulnerability is CVE-2026-43050. There is no exploit available. Upgrading the affected component is advised.

Detailsinfo

A vulnerability has been found in Linux Kernel up to 6.19.11 and classified as critical. This vulnerability affects the function sock_def_readable in the library lec.h. The manipulation with an unknown input leads to a use after free vulnerability. The CWE definition for the vulnerability is CWE-416. Referencing memory after it has been freed can cause a program to crash, use unexpected values, or execute code. As an impact it is known to affect confidentiality, integrity, and availability. CVE summarizes:

In the Linux kernel, the following vulnerability has been resolved: atm: lec: fix use-after-free in sock_def_readable() A race condition exists between lec_atm_close() setting priv->lecd to NULL and concurrent access to priv->lecd in send_to_lecd(), lec_handle_bridge(), and lec_atm_send(). When the socket is freed via RCU while another thread is still using it, a use-after-free occurs in sock_def_readable() when accessing the socket's wait queue. The root cause is that lec_atm_close() clears priv->lecd without any synchronization, while callers dereference priv->lecd without any protection against concurrent teardown. Fix this by converting priv->lecd to an RCU-protected pointer: - Mark priv->lecd as __rcu in lec.h - Use rcu_assign_pointer() in lec_atm_close() and lecd_attach() for safe pointer assignment - Use rcu_access_pointer() for NULL checks that do not dereference the pointer in lec_start_xmit(), lec_push(), send_to_lecd() and lecd_attach() - Use rcu_read_lock/rcu_dereference/rcu_read_unlock in send_to_lecd(), lec_handle_bridge() and lec_atm_send() to safely access lecd - Use rcu_assign_pointer() followed by synchronize_rcu() in lec_atm_close() to ensure all readers have completed before proceeding. This is safe since lec_atm_close() is called from vcc_release() which holds lock_sock(), a sleeping lock. - Remove the manual sk_receive_queue drain from lec_atm_close() since vcc_destroy_socket() already drains it after lec_atm_close() returns. v2: Switch from spinlock + sock_hold/put approach to RCU to properly fix the race. The v1 spinlock approach had two issues pointed out by Eric Dumazet: 1. priv->lecd was still accessed directly after releasing the lock instead of using a local copy. 2. The spinlock did not prevent packets being queued after lec_atm_close() drains sk_receive_queue since timer and workqueue paths bypass netif_stop_queue(). Note: Syzbot patch testing was attempted but the test VM terminated unexpectedly with "Connection to localhost closed by remote host", likely due to a QEMU AHCI emulation issue unrelated to this fix. Compile testing with "make W=1 net/atm/lec.o" passes cleanly.

The advisory is shared for download at git.kernel.org. This vulnerability was named CVE-2026-43050 since 05/01/2026. The exploitation appears to be easy. There are known technical details, but no exploit is available. The current price for an exploit might be approx. USD $0-$5k (estimation calculated on 07/03/2026).

The vulnerability scanner Nessus provides a plugin with the ID 324048 (SUSE SLED15: cluster-md-kmp-default / dlm-kmp-default / gfs2-kmp-default / etc (SUSE-SU-2026:2238-1)), which helps to determine the existence of the flaw in a target environment.

Upgrading to version 5.10.253, 5.15.203, 6.1.168, 6.6.134, 6.12.81, 6.18.22 or 6.19.12 eliminates this vulnerability. Applying the patch 3e8b25f32f2f35549d03d77da030a24a45bdef5b/750a33f417f3d196b86375f8d9f8938bacf130fe/317843d5355062020649124eb4a0d7acbcc3f53e/b256d055da47258e63f8b40965f276c5f23d229a/3989740fa4978e1d2d51ecc62be1b01093e104ad/abc10f85a3965ac14b9ed7ad3e67b35604a63aa3/5fbbb1ff936d7ff9528d929c1549977e8123d8a8/922814879542c2e397b0e9641fd36b8202a8e555 is able to eliminate this problem. The bugfix is ready for download at git.kernel.org. The best possible mitigation is suggested to be upgrading to the latest version.

The vulnerability is also documented in the databases at Tenable (324048) and EUVD (EUVD-2026-26649). Once again VulDB remains the best source for vulnerability data.

Productinfo

Type

Vendor

Name

Version

License

Website

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔒
VulDB Reliability: 🔍

CVSSv3info

VulDB Meta Base Score: 8.0
VulDB Meta Temp Score: 7.6

VulDB Base Score: 8.0
VulDB Temp Score: 7.6
VulDB Vector: 🔒
VulDB Reliability: 🔍

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VectorComplexityAuthenticationConfidentialityIntegrityAvailability
UnlockUnlockUnlockUnlockUnlockUnlock
UnlockUnlockUnlockUnlockUnlockUnlock
UnlockUnlockUnlockUnlockUnlockUnlock

VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍

Exploitinginfo

Class: Use after free
CWE: CWE-416 / CWE-119
CAPEC: 🔒
ATT&CK: 🔒

Physical: No
Local: No
Remote: Partially

Availability: 🔒
Status: Not defined

EPSS Score: 🔒
EPSS Percentile: 🔒

Price Prediction: 🔍
Current Price Estimation: 🔒

0-DayUnlockUnlockUnlockUnlock
TodayUnlockUnlockUnlockUnlock

Nessus ID: 324048
Nessus Name: SUSE SLED15: cluster-md-kmp-default / dlm-kmp-default / gfs2-kmp-default / etc (SUSE-SU-2026:2238-1)

Threat Intelligenceinfo

Interest: 🔍
Active Actors: 🔍
Active APT Groups: 🔍

Countermeasuresinfo

Recommended: Upgrade
Status: 🔍

0-Day Time: 🔒

Upgrade: Kernel 5.10.253/5.15.203/6.1.168/6.6.134/6.12.81/6.18.22/6.19.12
Patch: 3e8b25f32f2f35549d03d77da030a24a45bdef5b/750a33f417f3d196b86375f8d9f8938bacf130fe/317843d5355062020649124eb4a0d7acbcc3f53e/b256d055da47258e63f8b40965f276c5f23d229a/3989740fa4978e1d2d51ecc62be1b01093e104ad/abc10f85a3965ac14b9ed7ad3e67b35604a63aa3/5fbbb1ff936d7ff9528d929c1549977e8123d8a8/922814879542c2e397b0e9641fd36b8202a8e555

Timelineinfo

05/01/2026 Advisory disclosed
05/01/2026 +0 days CVE reserved
05/01/2026 +0 days VulDB entry created
07/03/2026 +63 days VulDB entry last update

Sourcesinfo

Vendor: kernel.org

Advisory: git.kernel.org
Status: Confirmed

CVE: CVE-2026-43050 (🔒)
GCVE (CVE): GCVE-0-2026-43050
GCVE (VulDB): GCVE-100-360724
EUVD: 🔒

Entryinfo

Created: 05/01/2026 18:16
Updated: 07/03/2026 21:23
Changes: 05/01/2026 18:16 (59), 05/03/2026 02:30 (1), 07/03/2026 21:23 (2)
Complete: 🔍
Cache ID: 216::103

Once again VulDB remains the best source for vulnerability data.

Discussion

No comments yet. Languages: en.

Please log in to comment.

Do you know our Splunk app?

Download it now for free!