Description
In the Linux kernel, the following vulnerability has been resolved: capabilities: fix potential memleak on error path from vfs_getxattr_alloc() In cap_inode_getsecurity(), we will use vfs_getxattr_alloc() to complete the memory allocation of tmpbuf, if we have completed the memory allocation of tmpbuf, but failed to call handler->get(...), there will be a memleak in below logic: |-- ret = (int)vfs_getxattr_alloc(mnt_userns, ...) | /* ^^^ alloc for tmpbuf */ |-- value = krealloc(*xattr_value, error + 1, flags) | /* ^^^ alloc memory */ |-- error = handler->get(handler, ...) | /* error! */ |-- *xattr_value = value | /* xattr_value is &tmpbuf (memory leak!) */ So we will try to free(tmpbuf) after vfs_getxattr_alloc() fails to fix it. [PM: subject line and backtrace tweaks]
Product status
8db6c34f1dbc8e06aa016a9b829b06902c3e1340 (git) before 6bb00eb21c0fbf18e5d3538c9ff0cf63fd0ace85
8db6c34f1dbc8e06aa016a9b829b06902c3e1340 (git) before 90577bcc01c4188416a47269f8433f70502abe98
8db6c34f1dbc8e06aa016a9b829b06902c3e1340 (git) before 0c3e6288da650d1ec911a259c77bc2d88e498603
8db6c34f1dbc8e06aa016a9b829b06902c3e1340 (git) before cdf01c807e974048c43c7fd3ca574f6086a57906
8db6c34f1dbc8e06aa016a9b829b06902c3e1340 (git) before 2de8eec8afb75792440b8900a01d52b8f6742fd1
8db6c34f1dbc8e06aa016a9b829b06902c3e1340 (git) before 7480aeff0093d8c54377553ec6b31110bea37b4d
8db6c34f1dbc8e06aa016a9b829b06902c3e1340 (git) before 8cf0a1bc12870d148ae830a4ba88cfdf0e879cee
4.14
Any version before 4.14
4.14.299 (semver)
4.19.265 (semver)
5.4.224 (semver)
5.10.154 (semver)
5.15.78 (semver)
6.0.8 (semver)
6.1 (original_commit_for_fix)
References
git.kernel.org/...c/6bb00eb21c0fbf18e5d3538c9ff0cf63fd0ace85
git.kernel.org/...c/90577bcc01c4188416a47269f8433f70502abe98
git.kernel.org/...c/0c3e6288da650d1ec911a259c77bc2d88e498603
git.kernel.org/...c/cdf01c807e974048c43c7fd3ca574f6086a57906
git.kernel.org/...c/2de8eec8afb75792440b8900a01d52b8f6742fd1
git.kernel.org/...c/7480aeff0093d8c54377553ec6b31110bea37b4d
git.kernel.org/...c/8cf0a1bc12870d148ae830a4ba88cfdf0e879cee