]> git.ipfire.org Git - thirdparty/krb5.git/commit
Generate and verify message MACs in libkrad 1370/head
authorJulien Rische <jrische@redhat.com>
Thu, 22 Aug 2024 15:15:50 +0000 (17:15 +0200)
committerGreg Hudson <ghudson@mit.edu>
Wed, 16 Oct 2024 19:50:22 +0000 (15:50 -0400)
commit871125fea8ce0370a972bf65f7d1de63f619b06c
treec0e7e9192a2fdf27a5e370852207000e8ab0aef8
parent331e393c6def46c00b6b54e1b2a0d1080c2af9e0
Generate and verify message MACs in libkrad

Implement some of the measures specified in
draft-ietf-radext-deprecating-radius-03 for mitigating the BlastRADIUS
attack (CVE-2024-3596):

* Include a Message-Authenticator MAC as the first attribute when
  generating a packet of type Access-Request, Access-Reject,
  Access-Accept, or Access-Challenge (sections 5.2.1 and 5.2.4), if
  the secret is non-empty.  (An empty secret indicates the use of Unix
  domain socket transport.)

* Validate the Message-Authenticator MAC in received packets, if
  present.

FreeRADIUS enforces Message-Authenticator as of versions 3.2.5 and
3.0.27.  libkrad must generate Message-Authenticator attributes in
order to remain compatible with these implementations.

[ghudson@mit.edu: adjusted style and naming; simplified some
functions; edited commit message]

ticket: 9142 (new)
tags: pullup
target_version: 1.21-next
src/include/k5-int.h
src/lib/crypto/krb/checksum_hmac_md5.c
src/lib/crypto/libk5crypto.exports
src/lib/krad/attr.c
src/lib/krad/attrset.c
src/lib/krad/internal.h
src/lib/krad/packet.c
src/lib/krad/t_attrset.c
src/lib/krad/t_daemon.py
src/lib/krad/t_packet.c
src/tests/t_otp.py