Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: of: overlay: Call of_changeset_init() early When of_overlay_fdt_apply() fails, the changeset may be partially applied, and the caller is still expected to call of_overlay_remove() to clean up this partial state. However, of_overlay_apply() calls of_resolve_phandles() before init_overlay_changeset(). Hence if the overlay fails to apply due to an unresolved symbol, the overlay_changeset.cset.entries list is still uninitialized, and cleanup will crash with a NULL-pointer dereference in overlay_removal_is_ok(). Fix this by moving the call to of_changeset_init() from init_overlay_changeset() to of_overlay_fdt_apply(), where all other early initialization is done.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected f948d6d8b792bb90041edc12eac35faf83030994 before 01bb96ad38089f5cc6de7746dac13437d35eb1dc; affected f948d6d8b792bb90041edc12eac35faf83030994 before 3fb210cd521c9efcb211e9f5ce40fc907200bf13; affected f948d6d8b792bb90041edc12eac35faf83030994 before be86241bf5d1efd16d8a7231c13b33459c5d755d; affected f948d6d8b792bb90041edc12eac35faf83030994 before c403c81b577a67fe9ec6a2e89d143256487be50f; affected f948d6d8b792bb90041edc12eac35faf83030994 before a9515ff4fb142b690a0d2b58782b15903b990dba |
| Linux / Linux | affected 4.15; unaffected 0 before 4.15; unaffected 5.15.132 through 5.15.*; unaffected 6.1.53 through 6.1.*; unaffected 6.4.16 through 6.4.*; unaffected 6.5.3 through 6.5.*; unaffected 6.6 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/01bb96ad38089f5cc6de7746dac13437d35eb1dc
- https://git.kernel.org/stable/c/3fb210cd521c9efcb211e9f5ce40fc907200bf13
- https://git.kernel.org/stable/c/be86241bf5d1efd16d8a7231c13b33459c5d755d
- https://git.kernel.org/stable/c/c403c81b577a67fe9ec6a2e89d143256487be50f
- https://git.kernel.org/stable/c/a9515ff4fb142b690a0d2b58782b15903b990dba