#
de695f5e |
| 15-Dec-2019 |
christos <christos@NetBSD.org> |
Release Notes - Heimdal - Version Heimdal 7.7
Bug fixes
PKCS#11 hcrypto back-end . initialize the p11_module_load function list . verify that not only is a mechanism present but that its mechanism
Release Notes - Heimdal - Version Heimdal 7.7
Bug fixes
PKCS#11 hcrypto back-end . initialize the p11_module_load function list . verify that not only is a mechanism present but that its mechanism info states that it offers the required encryption, decryption or digest services
krb5: . Starting with 7.6, Heimdal permitted requesting authenticated anonymous tickets. However, it did not verify that a KDC in fact returned an anonymous ticket when one was requested. . Cease setting the KDCOption reaquest_anonymous flag when issuing S4UProxy (constrained delegation) TGS requests. . when the Win2K PKINIT compatibility option is set, do not require krbtgt otherName to match when validating KDC certificate. . set PKINIT_BTMM flag per Apple implementation . use memset_s() instead of memset()
kdc: . When generating KRB5SignedPath in the AS, use the reply client name rather than the one from the request, so validation will work correctly in the TGS. . allow checksum of PA-FOR-USER to be HMAC_MD5. Even if TGT used an enctype with a different checksum. Per [MS-SFU] 2.2.1 PA-FOR-USER the checksum is always HMAC_MD5, and that's what Windows and MIT clients send.
In Heimdal both the client and kdc use instead the checksum of the TGT, and therefore work with each other but Windows and MIT clients fail against Heimdal KDC.
Both Windows and MIT KDC would allow any keyed checksum to be used so Heimdal client work fine against it.
Change Heimdal KDC to allow HMAC_MD5 even for non RC4 based TGT in order to support per-spec clients. . use memset_s() instead of memset() . Detect Heimdal 1.0 through 7.6 clients that issue S4UProxy (constrained delegation) TGS Requests with the request anonymous flag set. These requests will be treated as S4UProxy requests and not anonymous requests.
HDB: . Set SQLite3 backend default page size to 8KB. . Add hdb_set_sync() method
kadmind: . disable HDB sync during database load avoiding unnecessary disk i/o.
ipropd: . disable HDB sync during receive_everything. Doing an fsync per-record when receiving the complete HDB is a performance disaster. Among other things, if the HDB is very large, then one slave receving a full HDB can cause other slaves to timeout and, if HDB write activity is high enough to cause iprop log truncation, then also need full syncs, which leads to a cycle of full syncs for all slaves until HDB write activity drops. Allowing the iprop log to be larger helps, but improving receive_everything() performance helps even more.
kinit: . Anonymous PKINIT tickets discard the realm information used to locate the issuing AS. Store the issuing realm in the credentials cache in order to locate a KDC which can renew them. . Do not leak the result of krb5_cc_get_config() when determining anonymous PKINIT start realm.
klist: . Show transited-policy-checked, ok-as-delegate and anonymous flags when listing credentials.
tests: . Regenerate certs so that they expire before the 2038 armageddon so the test suite will pass on 32-bit operating systems until the underlying issues can be resolved.
Solaris: . Define _STDC_C11_BCI for memset_s prototype
build tooling: . Convert from python 2 to python 3
documentation . rename verify-password to verify-password-quality . hprop default mode is encrypt . kadmind "all" permission does not include "get-keys" . verify-password-quality might not be stateless
Release Notes - Heimdal - Version Heimdal 7.6
Security (#555)
CVE-2018-16860 Heimdal KDC: Reject PA-S4U2Self with unkeyed checksum
When the Heimdal KDC checks the checksum that is placed on the S4U2Self packet by the server to protect the requested principal against modification, it does not confirm that the checksum algorithm that protects the user name (principal) in the request is keyed. This allows a man-in-the-middle attacker who can intercept the request to the KDC to modify the packet by replacing the user name (principal) in the request with any desired user name (principal) that exists in the KDC and replace the checksum protecting that name with a CRC32 checksum (which requires no prior knowledge to compute).
This would allow a S4U2Self ticket requested on behalf of user name (principal) user@EXAMPLE.COM to any service to be changed to a S4U2Self ticket with a user name (principal) of Administrator@EXAMPLE.COM. This ticket would then contain the PAC of the modified user name (principal).
CVE-2019-12098, client-only:
RFC8062 Section 7 requires verification of the PA-PKINIT-KX key exchange when anonymous PKINIT is used. Failure to do so can permit an active attacker to become a man-in-the-middle.
Bug fixes
Happy eyeballs: Don't wait for responses from known-unreachable KDCs. kdc: check return copy_Realm, copy_PrincipalName, copy_EncryptionKey kinit: . cleanup temporary ccaches . see man page for "kinit --anonymous" command line syntax change kdc: Make anonymous AS-requests more RFC8062-compliant. Updated expired test certificates Solaris: . PKCS#11 hcrypto backend broken since 7.0.1 . Building with Sun Pro C Features
kuser: support authenticated anonymous AS-REQs in kinit kdc: support for anonymous TGS-REQs kgetcred support for anonymous service tickets Support builds with OpenSSL 1.1.1 Building from source:
Heimdal 7.5
This is a security release of Heimdal
This release patches a remote denial of service
CVE-2017-17439: In Heimdal 7.1 through 7.4, remote unauthenticated attackers are able to crash the KDC by sending a crafted UDP packet containing empty data fields for client name or realm.
Heimdal 7.4
This is a security release of Heimdal.
This release patches a critical vulnerability:
CVE-2017-11103: Orpheus' Lyre KDC-REP service name validation
In _krb5_extract_ticket() the KDC-REP service name must be obtained from encrypted version stored in 'enc_part' instead of the unencrypted version stored in 'ticket'. Use of the unecrypted version provides an opportunity for successful server impersonation and other attacks.
Identified by Jeffrey Altman, Viktor Duchovni and Nico Williams. See https://www.orpheus-lyre.info/
This is the Heimdal 7.3 security release.
This release addresses CVE-2017-6594. See the NEWS file for details.
Heimdal 7.2
This is the Heimdal 7.2 release.
show more ...
|
#
e0895134 |
| 28-Jan-2017 |
christos <christos@NetBSD.org> |
Release Notes - Heimdal - Version Heimdal 7.1
Security
- kx509 realm-chopping security bug - non-authorization of alias additions/removals in kadmind (CVE-2016-2400)
Feature
- iprop has b
Release Notes - Heimdal - Version Heimdal 7.1
Security
- kx509 realm-chopping security bug - non-authorization of alias additions/removals in kadmind (CVE-2016-2400)
Feature
- iprop has been revamped to fix a number of race conditions that could lead to inconsistent replication - Hierarchical capath support - AES Encryption with HMAC-SHA2 for Kerberos 5 draft-ietf-kitten-aes-cts-hmac-sha2-11 - hcrypto is now thread safe on all platforms - libhcrypto has new backends: CNG (Windows), PKCS#11 (mainly for Solaris), and OpenSSL. OpenSSL is now a first-class libhcrypto backend. OpenSSL 1.0.x and 1.1 are both supported. AES-NI used when supported by backend - HDB now supports LMDB - Thread support on Windows - RFC 6113 Generalized Framework for Kerberos Pre-Authentication (FAST) - New GSS APIs: . gss_localname - Allow setting what encryption types a principal should have with [kadmin] default_key_rules, see krb5.conf manpage for more info - Unify libhcrypto with LTC (libtomcrypto) - asn1_compile 64-bit INTEGER functionality - HDB key history support including --keepold kadmin password option - Improved cross-realm key rollover safety - New krb5_kuserok() and krb5_aname_to_localname() plug-in interfaces - Improved MIT compatibility . kadm5 API . Migration from MIT KDB via "mitdb" HDB backend . Capable of writing the HDB in MIT dump format - Improved Active Directory interoperability . Enctype selection issues for PAC and other authz-data signatures . Cross realm key rollover (kvno 0) - New [kdc] enctype negotiation configuration: . tgt-use-strongest-session-key . svc-use-strongest-session-key . preauth-use-strongest-session-key . use-strongest-server-key - The KDC process now uses a multi-process model improving resiliency and performance - Allow batch-mode kinit with password file - SIGINFO support added to kinit cmd - New kx509 configuration options: . kx509_ca . kca_service . kx509_include_pkinit_san . kx509_template - Improved Heimdal library/plugin version safety - Name canonicalization . DNS resolver searchlist . Improved referral support . Support host:port host-based services - Pluggable libheimbase interface for DBs - Improve IPv6 Support - LDAP . Bind DN and password . Start TLS - klist --json - DIR credential cache type - Updated upstream SQLite and libedit - Removed legacy applications: ftp, kx, login, popper, push, rcp, rsh, telnet, xnlock - Completely remove RAND_egd support - Moved kadmin and ktutil to /usr/bin - Stricter fcache checks (see fcache_strict_checking krb5.conf setting) . use O_NOFOLLOW . don't follow symlinks . require cache files to be owned by the user . require sensible permissions (not group/other readable) - Implemented gss_store_cred() - Many more
Bug fixes - iprop has been revamped to fix a number of race conditions that could lead to data loss - Include non-loopback addresses assigned to loopback interfaces when requesting tickets with addresses - KDC 1DES session key selection (for AFS rxkad-k5 compatibility) - Keytab file descriptor and lock leak - Credential cache corruption bugs (NOTE: The FILE ccache is still not entirely safe due to the fundamentally unsafe design of POSIX file locking) - gss_pseudo_random() interop bug - Plugins are now preferentially loaded from the run-time install tree - Reauthentication after password change in init_creds_password - Memory leak in the client kadmin library - TGS client requests renewable/forwardable/proxiable when possible - Locking issues in DB1 and DB3 HDB backends - Master HDB can remain locked while waiting for network I/O - Renewal/refresh logic when kinit is provided with a command - KDC handling of enterprise principals - Use correct bit for anon-pkinit - Many more
Acknowledgements
This release of Heimdal includes contributions from:
Abhinav Upadhyay Heath Kehoe Nico Williams Andreas Schneider Henry Jacques Patrik Lundin Andrew Bartlett Howard Chu Philip Boulain Andrew Tridgell Igor Sobrado Ragnar Sundblad Antoine Jacoutot Ingo Schwarze Remi Ferrand Arran Cudbard-Bell Jakub Čajka Rod Widdowson Arvid Requate James Le Cuirot Rok Papež Asanka Herath James Lee Roland C. Dowdeswell Ben Kaduk Jeffrey Altman Ross L Richardson Benjamin Kaduk Jeffrey Clark Russ Allbery Bernard Spil Jeffrey Hutzelman Samuel Cabrero Brian May Jelmer Vernooij Samuel Thibault Chas Williams Ken Dreyer Santosh Kumar Pradhan Chaskiel Grundman Kiran S J Sean Davis Dana Koch Kumar Thangavelu Sergio Gelato Daniel Schepler Landon Fuller Simon Wilkinson David Mulder Linus Nordberg Stef Walter Douglas Bagnall Love Hörnquist Åstrand Stefan Metzmacher Ed Maste Luke Howard Steffen Jaeckel Eray Aslan Magnus Ahltorp Timothy Pearson Florian Best Marc Balmer Tollef Fog Heen Fredrik Pettai Marcin Cieślak Tony Acero Greg Hudson Marco Molteni Uri Simchoni Gustavo Zacarias Matthieu Hautreux Viktor Dukhovni Günther Deschner Michael Meffie Volker Lendecke Harald Barth Moritz Lenz
show more ...
|