CVE-2024-56694

bpf: fix recursive lock when verdict program return SK_PASS

State
Published
Severity
7.5 High
Published
Dec 28, 2024
Updated
Aug 5, 2026
Reserved
Dec 27, 2024

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

bpf: fix recursive lock when verdict program return SK_PASS

When the stream_verdict program returns SK_PASS, it places the received skb into its own receive queue, but a recursive lock eventually occurs, leading to an operating system deadlock. This issue has been present since v6.9.

''' sk_psock_strp_data_ready write_lock_bh(&sk->sk_callback_lock) strp_data_ready strp_read_sock read_sock -> tcp_read_sock strp_recv cb.rcv_msg -> sk_psock_strp_read # now stream_verdict return SK_PASS without peer sock assign __SK_PASS = sk_psock_map_verd(SK_PASS, NULL) sk_psock_verdict_apply sk_psock_skb_ingress_self sk_psock_skb_ingress_enqueue sk_psock_data_ready read_lock_bh(&sk->sk_callback_lock) <= dead lock

'''

This topic has been discussed before, but it has not been fixed. Previous discussion: https://lore.kernel.org/all/6684a5864ec86_403d20898@john.notmuch

Scores

CVSSScoreVectorSource
3.17.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:HLinux

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • c0809c128dad4c3413818384eb06a341633db973 to before 221109ba2127eabd0aa64718543638b58b15df56Affected
  • 5965bc7535fb87510b724e5465ccc1a1cf00916d to before 6694f7acd625ed854bf6342926e771d65dad7f69Affected
  • 39dc9e1442385d6e9be0b6491ee488dddd55ae27 to before 386efa339e08563dd33e83bc951aea5d407fe578Affected
  • b397a0ab8582c533ec0c6b732392f141fc364f87 to before da2bc8a0c8f3ac66fdf980fc59936f851a083561Affected
  • 6648e613226e18897231ab5e42ffc29e63fa3365 to before 01f1b88acfd79103da0610b45471f6c88ea98d72Affected
  • 6648e613226e18897231ab5e42ffc29e63fa3365 to before f84c5ef6ca23cc2f72f3b830d74f67944684bb05Affected
  • 6648e613226e18897231ab5e42ffc29e63fa3365 to before 8ca2a1eeadf09862190b2810697702d803ceef2dAffected
  • 772d5729b5ff0df0d37b32db600ce635b2172f80Affected
  • 5.10.223 to before 5.10.233Affected
  • 5.15.159 to before 5.15.174Affected
  • 6.1.91 to before 6.1.120Affected
  • 6.6.31 to before 6.6.64Affected
  • 6.8.10 to before 6.9Affected
LinuxLinux
  • 6.9Affected
  • before 6.9Not affected
  • 5.10.233 through 5.10.*Not affected
  • 5.15.174 through 5.15.*Not affected
  • 6.1.120 through 6.1.*Not affected
  • 6.6.64 through 6.6.*Not affected
  • 6.11.11 through 6.11.*Not affected
  • 6.12.2 through 6.12.*Not affected
  • 6.13 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.