Description
In the Linux kernel, the following vulnerability has been resolved: rbd: avoid use-after-free in do_rbd_add() when rbd_dev_create() fails If getting an ID or setting up a work queue in rbd_dev_create() fails, use-after-free on rbd_dev->rbd_client, rbd_dev->spec and rbd_dev->opts is triggered in do_rbd_add(). The root cause is that the ownership of these structures is transfered to rbd_dev prematurely and they all end up getting freed when rbd_dev_create() calls rbd_dev_free() prior to returning to do_rbd_add(). Found by Linux Verification Center (linuxtesting.org) with SVACE, an incomplete patch submitted by Natalia Petrova <n.petrova@fintech.ru>.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
1643dfa4c2c827d6e2aa419df8c17b0f24090278 to < 71da2a151ed1adb0aea4252b16d81b53012e7afdaffected1643dfa4c2c827d6e2aa419df8c17b0f24090278 to < e3cbb4d60764295992c95344f2d779439e8b34ceaffected1643dfa4c2c827d6e2aa419df8c17b0f24090278 to < 9787b328c42c13c4f31e7d5042c4e877e9344068affected1643dfa4c2c827d6e2aa419df8c17b0f24090278 to < ae16346078b1189aee934afd872d9f3d0a682c33affected1643dfa4c2c827d6e2aa419df8c17b0f24090278 to < a73783e4e0c4d1507794da211eeca75498544dffaffected1643dfa4c2c827d6e2aa419df8c17b0f24090278 to < faa7b683e436664fff5648426950718277831348affected1643dfa4c2c827d6e2aa419df8c17b0f24090278 to < cc8c0dd2984503ed09efa37bcafcef3d3da104e8affected1643dfa4c2c827d6e2aa419df8c17b0f24090278 to < f7c4d9b133c7a04ca619355574e96b6abf209fbaaffected
Linux Linux
Default version status: affected
4.9affected0 to < 4.9unaffected4.14.308 to ≤ 4.14.*unaffected4.19.276 to ≤ 4.19.*unaffected5.4.235 to ≤ 5.4.*unaffected5.10.173 to ≤ 5.10.*unaffected5.15.99 to ≤ 5.15.*unaffected6.1.16 to ≤ 6.1.*unaffected6.2.3 to ≤ 6.2.*unaffected6.3 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/71da2a151ed1adb0aea4252b16d81b53012e7afd ↗
- https://git.kernel.org/stable/c/e3cbb4d60764295992c95344f2d779439e8b34ce ↗
- https://git.kernel.org/stable/c/9787b328c42c13c4f31e7d5042c4e877e9344068 ↗
- https://git.kernel.org/stable/c/ae16346078b1189aee934afd872d9f3d0a682c33 ↗
- https://git.kernel.org/stable/c/a73783e4e0c4d1507794da211eeca75498544dff ↗
- https://git.kernel.org/stable/c/faa7b683e436664fff5648426950718277831348 ↗
- https://git.kernel.org/stable/c/cc8c0dd2984503ed09efa37bcafcef3d3da104e8 ↗
- https://git.kernel.org/stable/c/f7c4d9b133c7a04ca619355574e96b6abf209fba ↗