CVE-2023-53199
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
wifi: ath9k: hif_usb: clean up skbs if ath9k_hif_usb_rx_stream() fails
Syzkaller detected a memory leak of skbs in ath9k_hif_usb_rx_stream(). While processing skbs in ath9k_hif_usb_rx_stream(), the already allocated skbs in skb_pool are not freed if ath9k_hif_usb_rx_stream() fails. If we have an incorrect pkt_len or pkt_tag, the input skb is considered invalid and dropped. All the associated packets already in skb_pool should be dropped and freed. Added a comment describing this issue.
The patch also makes remain_skb NULL after being processed so that it cannot be referenced after potential free. The initialization of hif_dev fields which are associated with remain_skb (rx_remain_len, rx_transfer_len and rx_pad_len) is moved after a new remain_skb is allocated.
Found by Linux Verification Center (linuxtesting.org) with Syzkaller.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 44b23b488d44e56d467764ecb661830e5b02b308 < 3fc6401fafde11712a83089fa2cc874cfd10e2cd | affected |
| Linux | Linux | 44b23b488d44e56d467764ecb661830e5b02b308 < cd8316767099920a5d41feed1afab0c482a43e9f | affected |
| Linux | Linux | 44b23b488d44e56d467764ecb661830e5b02b308 < f26dd69f61eff2eedf5df2d199bdd23108309947 | affected |
| Linux | Linux | 44b23b488d44e56d467764ecb661830e5b02b308 < 61490d2710277e8a55009b7682456ae22f8087cf | affected |
| Linux | Linux | 44b23b488d44e56d467764ecb661830e5b02b308 < 9acdec72787af1bc8ed92711b52118c8e3e638a2 | affected |
| Linux | Linux | 44b23b488d44e56d467764ecb661830e5b02b308 < c766e37fccd5a5c5059be7efcd9618bf8a2c17c3 | affected |
| Linux | Linux | 44b23b488d44e56d467764ecb661830e5b02b308 < 0af54343a76263a12dbae7fafb64eb47c4a6ad38 | affected |
| Linux | Linux | 2.6.38 | affected |
| Linux | Linux | 0 < 2.6.38 | unaffected |
| Linux | Linux | 4.19.276 <= 4.19.* | unaffected |
| Linux | Linux | 5.4.235 <= 5.4.* | unaffected |
| Linux | Linux | 5.10.173 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.99 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.16 <= 6.1.* | unaffected |
| Linux | Linux | 6.2.3 <= 6.2.* | unaffected |
| Linux | Linux | 6.3 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/3fc6401fafde11712a83089fa2cc874cfd10e2cd
- https://git.kernel.org/stable/c/cd8316767099920a5d41feed1afab0c482a43e9f
- https://git.kernel.org/stable/c/f26dd69f61eff2eedf5df2d199bdd23108309947
- https://git.kernel.org/stable/c/61490d2710277e8a55009b7682456ae22f8087cf
- https://git.kernel.org/stable/c/9acdec72787af1bc8ed92711b52118c8e3e638a2
- https://git.kernel.org/stable/c/c766e37fccd5a5c5059be7efcd9618bf8a2c17c3
- https://git.kernel.org/stable/c/0af54343a76263a12dbae7fafb64eb47c4a6ad38
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.