{ "id": "CVE-2022-49085", "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "published": "2025-02-26T07:00:45.833", "lastModified": "2025-02-27T18:15:24.270", "vulnStatus": "Awaiting Analysis", "cveTags": [], "descriptions": [ { "lang": "en", "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndrbd: Fix five use after free bugs in get_initial_state\n\nIn get_initial_state, it calls notify_initial_state_done(skb,..) if\ncb->args[5]==1. If genlmsg_put() failed in notify_initial_state_done(),\nthe skb will be freed by nlmsg_free(skb).\nThen get_initial_state will goto out and the freed skb will be used by\nreturn value skb->len, which is a uaf bug.\n\nWhat's worse, the same problem goes even further: skb can also be\nfreed in the notify_*_state_change -> notify_*_state calls below.\nThus 4 additional uaf bugs happened.\n\nMy patch lets the problem callee functions: notify_initial_state_done\nand notify_*_state_change return an error code if errors happen.\nSo that the error codes could be propagated and the uaf bugs can be avoid.\n\nv2 reports a compilation warning. This v3 fixed this warning and built\nsuccessfully in my local environment with no additional warnings.\nv2: https://lore.kernel.org/patchwork/patch/1435218/" }, { "lang": "es", "value": "En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: drbd: Arregla cinco errores de use-after-free en get_initial_state En get_initial_state, llama a notify_initial_state_done(skb,..) si cb->args[5]==1. Si genlmsg_put() fall\u00f3 en notify_initial_state_done(), el skb ser\u00e1 liberado por nlmsg_free(skb). Entonces get_initial_state saldr\u00e1 y el skb liberado ser\u00e1 utilizado por el valor de retorno skb->len, que es un error de uaf. Lo que es peor, el mismo problema va a\u00fan m\u00e1s all\u00e1: skb tambi\u00e9n se puede liberar en las llamadas notify_*_state_change -> notify_*_state a continuaci\u00f3n. Por lo tanto, ocurrieron 4 errores de uaf adicionales. Mi parche permite que las funciones llamadas al problema: notify_initial_state_done y notify_*_state_change devuelvan un c\u00f3digo de error si ocurren errores. Para que los c\u00f3digos de error se puedan propagar y los errores de uaf se puedan evitar, la v2 informa una advertencia de compilaci\u00f3n. Esta v3 corrigi\u00f3 esta advertencia y se compil\u00f3 correctamente en mi entorno local sin advertencias adicionales. v2: https://lore.kernel.org/patchwork/patch/1435218/" } ], "metrics": { "cvssMetricV31": [ { "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "cvssData": { "version": "3.1", "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H", "baseScore": 7.8, "baseSeverity": "HIGH", "attackVector": "LOCAL", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH" }, "exploitabilityScore": 1.8, "impactScore": 5.9 } ] }, "weaknesses": [ { "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "description": [ { "lang": "en", "value": "CWE-416" } ] } ], "references": [ { "url": "https://git.kernel.org/stable/c/0489700bfeb1e53eb2039c2291c67e71b0b40103", "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67" }, { "url": "https://git.kernel.org/stable/c/188fe6b26765edbad4055611c0f788b6870f4024", "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67" }, { "url": "https://git.kernel.org/stable/c/226e993c39405292781bfcf4b039a8db56aab362", "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67" }, { "url": "https://git.kernel.org/stable/c/594205b4936771a250f9d141e7e0fff21c3dd2d9", "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67" }, { "url": "https://git.kernel.org/stable/c/a972c768723359ec995579902473028fe3cd64b1", "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67" }, { "url": "https://git.kernel.org/stable/c/aadb22ba2f656581b2f733deb3a467c48cc618f6", "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67" }, { "url": "https://git.kernel.org/stable/c/b6a4055036eed1f5e239ce3d8b0db1ce38bba447", "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67" }, { "url": "https://git.kernel.org/stable/c/dcf6be17b5c53b741898d2223b23e66d682de300", "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67" }, { "url": "https://git.kernel.org/stable/c/de63e74da2333b4068bb79983e632db730fea97e", "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67" } ] }