]> git.ipfire.org Git - thirdparty/krb5.git/commit
Fix integer overflows in PAC parsing
authorGreg Hudson <ghudson@mit.edu>
Tue, 18 Oct 2022 00:25:11 +0000 (20:25 -0400)
committerGreg Hudson <ghudson@mit.edu>
Thu, 3 Nov 2022 05:00:45 +0000 (01:00 -0400)
commitea92d2f0fcceb54a70910fa32e9a0d7a5afc3583
treec37c882ba339e7aa4e8bec810c2f3f3d1f662d74
parentfa62bd33a0c0889c083999c0289ffa81a5d51e7b
Fix integer overflows in PAC parsing

In krb5_parse_pac(), check for buffer counts large enough to threaten
integer overflow in the header length and memory length calculations.
Avoid potential integer overflows when checking the length of each
buffer.  Credit to OSS-Fuzz for discovering one of the issues.

CVE-2022-42898:

In MIT krb5 releases 1.8 and later, an authenticated attacker may be
able to cause a KDC or kadmind process to crash by reading beyond the
bounds of allocated memory, creating a denial of service.  A
privileged attacker may similarly be able to cause a Kerberos or GSS
application service to crash.  On 32-bit platforms, an attacker can
also cause insufficient memory to be allocated for the result,
potentially leading to remote code execution in a KDC, kadmind, or GSS
or Kerberos application server process.  An attacker with the
privileges of a cross-realm KDC may be able to extract secrets from a
KDC process's memory by having them copied into the PAC of a new
ticket.

ticket: 9074 (new)
tags: pullup
target_version: 1.20-next
target_version: 1.19-next
src/lib/krb5/krb/pac.c
src/lib/krb5/krb/t_pac.c