Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1110 CNY

100%

CVE-2024-36489— tls: fix missing memory barrier in tls_init

EPSS 0.01% · P1

Affected Version Matrix 14

VendorProductVersion RangeStatus
LinuxLinuxd5bee7374b68de3c44586d46e9e61ffc97a1e886< d72e126e9a36d3d33889829df8fc90100bb0e071affected
d5bee7374b68de3c44586d46e9e61ffc97a1e886< 2c260a24cf1c4d30ea3646124f766ee46169280baffected
d5bee7374b68de3c44586d46e9e61ffc97a1e886< 335c8f1566d8e44c384d16b450a18554896d4e8baffected
d5bee7374b68de3c44586d46e9e61ffc97a1e886< ab67c2fd3d070a21914d0c31319d3858ab4e199caffected
d5bee7374b68de3c44586d46e9e61ffc97a1e886< ef21007a7b581c7fe64d5a10c320880a033c837baffected
d5bee7374b68de3c44586d46e9e61ffc97a1e886< 91e61dd7a0af660408e87372d8330ceb218be302affected
5.7affected
< 5.7unaffected
… +6 more rows
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2024-36489

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
tls: fix missing memory barrier in tls_init
Source: NVD (National Vulnerability Database)
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: tls: fix missing memory barrier in tls_init In tls_init(), a write memory barrier is missing, and store-store reordering may cause NULL dereference in tls_{setsockopt,getsockopt}. CPU0 CPU1 ----- ----- // In tls_init() // In tls_ctx_create() ctx = kzalloc() ctx->sk_proto = READ_ONCE(sk->sk_prot) -(1) // In update_sk_prot() WRITE_ONCE(sk->sk_prot, tls_prots) -(2) // In sock_common_setsockopt() READ_ONCE(sk->sk_prot)->setsockopt() // In tls_{setsockopt,getsockopt}() ctx->sk_proto->setsockopt() -(3) In the above scenario, when (1) and (2) are reordered, (3) can observe the NULL value of ctx->sk_proto, causing NULL dereference. To fix it, we rely on rcu_assign_pointer() which implies the release barrier semantic. By moving rcu_assign_pointer() after ctx->sk_proto is initialized, we can ensure that ctx->sk_proto are visible when changing sk->sk_prot.
Source: NVD (National Vulnerability Database)
CVSS Information
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Type
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel 存在安全漏洞,该漏洞源于tls模块tls_init中存在潜在的溢出问题。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

VendorProductAffected VersionsCPESubscribe
LinuxLinux d5bee7374b68de3c44586d46e9e61ffc97a1e886 ~ d72e126e9a36d3d33889829df8fc90100bb0e071 -
LinuxLinux 5.7 -

II. Public POCs for CVE-2024-36489

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2024-36489

登录查看更多情报信息。

Other References for CVE-2024-36489 (6)

Same Patch Batch · Linux · 2024-06-21 · 40 CVEs total

CVE-2024-38636f2fs: multidev: fix to recognize valid zero block address
CVE-2024-38627stm class: Fix a double free in stm_register_device()
CVE-2024-38628usb: gadget: u_audio: Fix race condition use of controls after free during gadget unbind.
CVE-2024-38629dmaengine: idxd: Avoid unnecessary destruction of file_ida
CVE-2024-38630watchdog: cpu5wdt.c: Fix use-after-free bug caused by cpu5wdt_trigger
CVE-2024-38631iio: adc: PAC1934: fix accessing out of bounds array index
CVE-2024-38632vfio/pci: fix potential memory leak in vfio_intx_enable()
CVE-2024-38633serial: max3100: Update uart_driver_registered on driver removal
CVE-2024-38634serial: max3100: Lock port->lock when calling uart_handle_cts_change()
CVE-2024-38635soundwire: cadence: fix invalid PDI offset
CVE-2024-38625fs/ntfs3: Check 'folio' pointer for NULL
CVE-2024-38637greybus: lights: check return of get_channel_from_mode
CVE-2024-38659enic: Validate length of nl attributes in enic_set_vf_port
CVE-2024-38662bpf: Allow delete from sockmap/sockhash only if update is allowed
CVE-2024-38780dma-buf/sw-sync: don't enable IRQ from sync_print_obj()
CVE-2024-39277dma-mapping: benchmark: handle NUMA_NO_NODE correctly
CVE-2024-34777dma-mapping: benchmark: fix node id validation
CVE-2024-36288SUNRPC: Fix loop termination condition in gss_free_in_token_pages()
CVE-2024-36477tpm_tis_spi: Account for SPI header when allocating TPM SPI xfer buffer
CVE-2024-36481tracing/probes: fix error check in parse_btf_field()

Showing top 20 of 40 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2024-36489

No comments yet


Leave a comment