Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: rpmsg: char: Fix use-after-free on probe error path rpmsg_chrdev_probe() stores the newly allocated eptdev in the default endpoint's priv pointer before calling rpmsg_chrdev_eptdev_add(). If rpmsg_chrdev_eptdev_add() then fails, its error path frees eptdev while the default endpoint may still dispatch callbacks with the stale priv pointer. Avoid publishing eptdev through the default endpoint until rpmsg_chrdev_eptdev_add() succeeds. Messages received before the priv pointer is published should be ignored by rpmsg_ept_cb(). Flow-control updates can hit rpmsg_ept_flow_cb() in the same window, so make both callbacks return success when priv is NULL.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected bc69d10665690492421d926b1cd9a7a36bffd691 before 1306fc4f76f765727a6d5aefbf08ef0c8f32996f; affected bc69d10665690492421d926b1cd9a7a36bffd691 before ddf13f91ca82c94ef7ad9c41a434a03313f8eb1b; affected bc69d10665690492421d926b1cd9a7a36bffd691 before c5ebb06c7e24d531b68707168e04698859d642bc; affected bc69d10665690492421d926b1cd9a7a36bffd691 before 104d100212396801f1d9d388282f746e23e2bfd6; affected bc69d10665690492421d926b1cd9a7a36bffd691 before ff268cd9ccbce6472a0658791b417bf11c31ee39; affected bc69d10665690492421d926b1cd9a7a36bffd691 before 1ff3f528e67d20e2b1483dcaba899dc7832b2e6b |
| Linux / Linux | affected 5.18; unaffected 0 before 5.18; unaffected 6.1.178 through 6.1.*; unaffected 6.6.144 through 6.6.*; unaffected 6.12.95 through 6.12.*; unaffected 6.18.38 through 6.18.*; unaffected 7.1.3 through 7.1.*; unaffected 7.2 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/1306fc4f76f765727a6d5aefbf08ef0c8f32996f
- https://git.kernel.org/stable/c/ddf13f91ca82c94ef7ad9c41a434a03313f8eb1b
- https://git.kernel.org/stable/c/c5ebb06c7e24d531b68707168e04698859d642bc
- https://git.kernel.org/stable/c/104d100212396801f1d9d388282f746e23e2bfd6
- https://git.kernel.org/stable/c/ff268cd9ccbce6472a0658791b417bf11c31ee39
- https://git.kernel.org/stable/c/1ff3f528e67d20e2b1483dcaba899dc7832b2e6b