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

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2022-50704— USB: gadget: Fix use-after-free during usb config switch

Quick assessment

Affected
Linux Linux
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于USB配置切换期间释放后重用,可能导致系统崩溃。

AI Predicted 5.5 Difficulty: Moderate EPSS 0.20% · P10

Affected Version Matrix 8

VendorProduct Version RangeStatus
Linux Linux 0a55187a1ec8c03d0619e7ce41d10fdc39cff036< 30e926aa835ac2e6ad05822e4cb75833feb0d99f affected
0a55187a1ec8c03d0619e7ce41d10fdc39cff036< 99a58ac42d9b6911834b0224b6782aea0c311346 affected
0a55187a1ec8c03d0619e7ce41d10fdc39cff036< afdc12887f2b2ecf20d065a7d81ad29824155083 affected
4.20 affected
< 4.20 unaffected
6.0.16≤ 6.0.* unaffected
6.1.2≤ 6.1.* unaffected
6.2≤ * unaffected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2022-50704

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
USB: gadget: Fix use-after-free during usb config switch
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: USB: gadget: Fix use-after-free during usb config switch In the process of switching USB config from rndis to other config, if the hardware does not support the ->pullup callback, or the hardware encounters a low probability fault, both of them may cause the ->pullup callback to fail, which will then cause a system panic (use after free). The gadget drivers sometimes need to be unloaded regardless of the hardware's behavior. Analysis as follows: ======================================================================= (1) write /config/usb_gadget/g1/UDC "none" gether_disconnect+0x2c/0x1f8 rndis_disable+0x4c/0x74 composite_disconnect+0x74/0xb0 configfs_composite_disconnect+0x60/0x7c usb_gadget_disconnect+0x70/0x124 usb_gadget_unregister_driver+0xc8/0x1d8 gadget_dev_desc_UDC_store+0xec/0x1e4 (2) rm /config/usb_gadget/g1/configs/b.1/f1 rndis_deregister+0x28/0x54 rndis_free+0x44/0x7c usb_put_function+0x14/0x1c config_usb_cfg_unlink+0xc4/0xe0 configfs_unlink+0x124/0x1c8 vfs_unlink+0x114/0x1dc (3) rmdir /config/usb_gadget/g1/functions/rndis.gs4 panic+0x1fc/0x3d0 do_page_fault+0xa8/0x46c do_mem_abort+0x3c/0xac el1_sync_handler+0x40/0x78 0xffffff801138f880 rndis_close+0x28/0x34 eth_stop+0x74/0x110 dev_close_many+0x48/0x194 rollback_registered_many+0x118/0x814 unregister_netdev+0x20/0x30 gether_cleanup+0x1c/0x38 rndis_attr_release+0xc/0x14 kref_put+0x74/0xb8 configfs_rmdir+0x314/0x374 If gadget->ops->pullup() return an error, function rndis_close() will be called, then it will causes a use-after-free problem. =======================================================================
Source: CVE Program / CVE List V5
CVSS Information
N/A
Source: CVE Program / CVE List V5
Vulnerability Type
N/A
Source: CVE Program / CVE List V5
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于USB配置切换期间释放后重用,可能导致系统崩溃。
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

Vendor Product Affected Versions CPE Subscribe
Linux Linux 0a55187a1ec8c03d0619e7ce41d10fdc39cff036 ~ 30e926aa835ac2e6ad05822e4cb75833feb0d99f -
Linux Linux 4.20 -

II. Public POCs for CVE-2022-50704

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2022-50704

请登录查看更多情报信息。

Other References for CVE-2022-50704 (2)

Same Patch Batch · Linux · 2025-12-24 · 322 CVEs total

CVE-2025-68741 9.8 CRITICAL scsi: qla2xxx: Fix improper freeing of purex item
CVE-2025-68745 9.8 CRITICAL scsi: qla2xxx: Clear cmds after chip reset
CVE-2022-50717 9.8 CRITICAL nvmet-tcp: add bounds check on Transfer Tag
CVE-2023-54090 9.8 CRITICAL ixgbe: Fix panic during XDP_TX with > 64 CPUs
CVE-2023-54094 9.8 CRITICAL net: prevent skb corruption on frag list segmentation
CVE-2023-53867 9.8 CRITICAL ceph: fix potential use-after-free bug when trimming caps
CVE-2025-68359 9.8 CRITICAL btrfs: fix double free of qgroup record after failure to add delayed ref head
CVE-2025-68726 9.8 CRITICAL crypto: aead - Fix reqsize handling
CVE-2023-54076 9.8 CRITICAL smb: client: fix missed ses refcounting
CVE-2023-53996 9.3 CRITICAL x86/sev: Make enc_dec_hypercall() accept a size instead of npages
CVE-2023-54071 8.8 HIGH wifi: rtw88: use work to update rate to avoid RCU warning
CVE-2025-68736 8.8 HIGH landlock: Fix handling of disconnected directories
CVE-2023-54040 8.8 HIGH ice: fix wrong fallback logic for FDIR
CVE-2023-54092 8.8 HIGH KVM: s390: pv: fix index value of replaced ASCE
CVE-2022-50732 8.8 HIGH staging: rtl8192u: Fix use after free in ieee80211_rx()
CVE-2023-54043 8.8 HIGH iommufd: Do not add the same hwpt to the ioas->hwpt_list twice
CVE-2023-54120 8.8 HIGH Bluetooth: Fix race condition in hidp_session_thread
CVE-2023-54060 8.8 HIGH iommufd: Set end correctly when doing batch carry
CVE-2023-53986 8.6 HIGH mips: bmips: BCM6358: disable RAC flush for TP1
CVE-2022-50746 8.4 HIGH erofs: validate the extent length for uncompressed pclusters

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

IV. Related Vulnerabilities

V. Comments for CVE-2022-50704

No comments yet


Leave a comment