Description
In the Linux kernel, the following vulnerability has been resolved: libceph: Prevent potential null-ptr-deref in ceph_handle_auth_reply() If a message of type CEPH_MSG_AUTH_REPLY contains a zero value for both protocol and result, this is currently not treated as an error. In case of ac->negotiating == true and ac->protocol > 0, this leads to setting ac->protocol = 0 and ac->ops = NULL. Thereafter, the check for ac->protocol != protocol returns false, and init_protocol() is not called. Subsequently, ac->ops->handle_reply() is called, which leads to a null pointer dereference, because ac->ops is still NULL. This patch changes the check for ac->protocol != protocol to !ac->protocol, as this also includes the case when the protocol was set to zero in the message. This causes the message to be treated as containing a bad auth protocol.
Product status
4e7a5dcd1bbab6560fbc8ada29a840e7a20ed7bc (git) before 9ded62c302c0342efdb5eda3bf6e75720caad0df
4e7a5dcd1bbab6560fbc8ada29a840e7a20ed7bc (git) before f101271fcf55d7eacfefd610b51ec65f46ba8118
4e7a5dcd1bbab6560fbc8ada29a840e7a20ed7bc (git) before 4b2738b93edad661178340239de657d876b73d3d
4e7a5dcd1bbab6560fbc8ada29a840e7a20ed7bc (git) before 927e4bd5692f2a4901808822981fb2c8d4456548
4e7a5dcd1bbab6560fbc8ada29a840e7a20ed7bc (git) before 016bc663657366d386993f63eb31072eb45a2b77
4e7a5dcd1bbab6560fbc8ada29a840e7a20ed7bc (git) before 8f2be7285941a33a9f72579a23b96392f83c758e
4e7a5dcd1bbab6560fbc8ada29a840e7a20ed7bc (git) before 5199c125d25aeae8615c4fc31652cc0fe624338e
2.6.34
Any version before 2.6.34
5.15.209 (semver)
6.1.175 (semver)
6.6.140 (semver)
6.12.86 (semver)
6.18.27 (semver)
7.0.4 (semver)
7.1-rc1 (original_commit_for_fix)
References
git.kernel.org/...c/9ded62c302c0342efdb5eda3bf6e75720caad0df
git.kernel.org/...c/f101271fcf55d7eacfefd610b51ec65f46ba8118
git.kernel.org/...c/4b2738b93edad661178340239de657d876b73d3d
git.kernel.org/...c/927e4bd5692f2a4901808822981fb2c8d4456548
git.kernel.org/...c/016bc663657366d386993f63eb31072eb45a2b77
git.kernel.org/...c/8f2be7285941a33a9f72579a23b96392f83c758e
git.kernel.org/...c/5199c125d25aeae8615c4fc31652cc0fe624338e