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

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2023-52609— binder: fix race between mmput() and do_exit()

EPSS 0.01% · P1
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2023-52609

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
binder: fix race between mmput() and do_exit()
Source: NVD (National Vulnerability Database)
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: binder: fix race between mmput() and do_exit() Task A calls binder_update_page_range() to allocate and insert pages on a remote address space from Task B. For this, Task A pins the remote mm via mmget_not_zero() first. This can race with Task B do_exit() and the final mmput() refcount decrement will come from Task A. Task A | Task B ------------------+------------------ mmget_not_zero() | | do_exit() | exit_mm() | mmput() mmput() | exit_mmap() | remove_vma() | fput() | In this case, the work of ____fput() from Task B is queued up in Task A as TWA_RESUME. So in theory, Task A returns to userspace and the cleanup work gets executed. However, Task A instead sleep, waiting for a reply from Task B that never comes (it's dead). This means the binder_deferred_release() is blocked until an unrelated binder event forces Task A to go back to userspace. All the associated death notifications will also be delayed until then. In order to fix this use mmput_async() that will schedule the work in the corresponding mm->async_put_work WQ instead of Task A.
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存在安全漏洞,该漏洞源于mmput()和do_exit()之间存在竞争问题。
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 457b9a6f09f011ebcb9b52cc203a6331a6fc2de7 ~ 95b1d336b0642198b56836b89908d07b9a0c9608 -
LinuxLinux 2.6.29 -

II. Public POCs for CVE-2023-52609

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2023-52609

登录查看更多情报信息。

Same Patch Batch · Linux · 2024-03-18 · 21 CVEs total

CVE-2024-26634net: fix removing a namespace with conflicting altnames
CVE-2024-26641ip6_tunnel: make sure to pull inner header in __ip6_tnl_rcv()
CVE-2024-26640tcp: add sanity checks to rx zerocopy
CVE-2023-52619pstore/ram: Fix crash when setting number of cpus to an odd number
CVE-2023-52618block/rnbd-srv: Check for unlikely string overflow
CVE-2023-52617PCI: switchtec: Fix stdev_release() crash after surprise hot remove
CVE-2024-26638nbd: always initialize struct msghdr completely
CVE-2024-26636llc: make llc_ui_sendmsg() more robust against bonding changes
CVE-2024-26637wifi: ath11k: rely on mac80211 debugfs handling for vif
CVE-2024-26635llc: Drop support for ETH_P_TR_802_2.
CVE-2023-52610net/sched: act_ct: fix skb leak and crash on ooo frags
CVE-2023-52616crypto: lib/mpi - Fix unexpected pointer access in mpi_ec_init
CVE-2023-52615hwrng: core - Fix page fault dead lock on mmap-ed hwrng
CVE-2023-52614PM / devfreq: Fix buffer overflow in trans_stat_show
CVE-2024-26633ip6_tunnel: fix NEXTHDR_FRAGMENT handling in ip6_tnl_parse_tlv_enc_lim()
CVE-2024-26632block: Fix iterating over an empty bio with bio_for_each_folio_all
CVE-2024-26631ipv6: mcast: fix data-race in ipv6_mc_down / mld_ifc_work
CVE-2023-52613drivers/thermal/loongson2_thermal: Fix incorrect PTR_ERR() judgment
CVE-2023-52612crypto: scomp - fix req->dst buffer overflow
CVE-2023-52611wifi: rtw88: sdio: Honor the host max_req_size in the RX path

IV. Related Vulnerabilities

V. Comments for CVE-2023-52609

No comments yet


Leave a comment