netfilter: nf_tables: fix memory leak during stateful obj update
In the Linux kernel, the following vulnerability has been resolved: netfilter: nf_tables: fix memory leak during stateful obj update stateful objects can be updated from the control plane. The transaction logic allocates a temporary object for this purpose. The ->init function was called for this object, so plain kfree() leaks resources. We must call ->destroy function of the object. nft_obj_destroy does this, but it also decrements the module refcount, but the update path doesn't increment it. To avoid special-casing the update object release, do module_get for the update case too and release it via nft_obj_destroy().
02 / AFFECTED SOFTWARE
Affected packages
03 / CONNECTIONS
Connected vulnerabilities
04 / EVIDENCE
Source records
In the Linux kernel, the following vulnerability has been resolved: netfilter: nf_tables: fix memory leak during stateful obj update stateful objects can be updated from the control plane. The transaction logic allocates a temporary object for this purpose. The ->init function was called for this object, so plain kfree() leaks resources. We must call ->destroy function of the object. nft_obj_destroy does this, but it also decrements the module refcount, but the update path doesn't increment it. To avoid special-casing the update object release, do module_get for the update case too and release it via nft_obj_destroy().
05 / REFERENCES
Further evidence
- https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
- https://git.kernel.org/stable/c/34bb90e407e3288f610558beaae54ecaa32b11c4
- https://git.kernel.org/stable/c/53026346a94c43f35c32b18804041bc483271d87
- https://git.kernel.org/stable/c/7e9880e81d3fd6a43c202f205717485290432826
- https://git.kernel.org/stable/c/dad3bdeef45f81a6e90204bcc85360bb76eccec7
- https://git.kernel.org/stable/c/e96e204ee6fa46702f6c94c3c69a09e69e0eac52
- https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/48xxx/CVE-2022-48933.json
- https://nvd.nist.gov/vuln/detail/CVE-2022-48933