1 Changes in release 0.8.1
3 * Make ASN.1 library less paranoid to with regard to NUL in string to
4 make it inter-operate with MIT Kerberos again.
6 * Make GSS-API library work again when using gss_acquire_cred
8 * Add symbol versioning to libgssapi when using GNU ld.
12 Changes in release 0.8
16 * HDB extensions support, used by PK-INIT.
20 * GSS-API mechglue from FreeBSD.
22 * Updated SPNEGO to support RFC4178.
24 * Support for Cryptosystem Negotiation Extension (RFC 4537).
26 * A new X.509 library (hx509) and related crypto functions.
28 * A new ntlm library (heimntlm) and related crypto functions.
30 * Updated the built-in crypto library with bignum support using
31 imath, support for RSA and DH and renamed it to libhcrypto.
33 * Subsystem in the KDC, digest, that will perform the digest
34 operation in the KDC, currently supports: CHAP, MS-CHAP-V2, SASL
35 DIGEST-MD5 NTLMv1 and NTLMv2.
37 * KDC will return the "response too big" error to force TCP retries
38 for large (default 1400 bytes) UDP replies. This is common for
41 * Libkafs defaults to use 2b tokens.
43 * Default to use the API cache on Mac OS X.
45 * krb5_kuserok() also checks ~/.k5login.d directory for acl files,
46 see manpage for krb5_kuserok for description.
48 * Many, many, other update to code and info manual and manual pages.
52 Changes in release 0.7.2
54 * Fix security problem in rshd that enable an attacker to overwrite
55 and change ownership of any file that root could write.
57 * Fix a DOS in telnetd. The attacker could force the server to crash
58 in a NULL de-reference before the user logged in, resulting in inetd
59 turning telnetd off because it forked too fast.
61 * Make gss_acquire_cred(GSS_C_ACCEPT) check that the requested name
62 exists in the keytab before returning success. This allows servers
63 to check if its even possible to use GSSAPI.
65 * Fix receiving end of token delegation for GSS-API. It still wrongly
66 uses subkey for sending for compatibility reasons, this will change
69 * telnetd, login and rshd are now more verbose in logging failed and
74 Changes in release 0.7.1
78 Changes in release 0.7
80 * Support for KCM, a process based credential cache
82 * Support CCAPI credential cache
86 * AES (and the gssapi conterpart, CFX) support
88 * Adding new and improve old documentation
92 Changes in release 0.6.6
94 * Fix security problem in rshd that enable an attacker to overwrite
95 and change ownership of any file that root could write.
97 * Fix a DOS in telnetd. The attacker could force the server to crash
98 in a NULL de-reference before the user logged in, resulting in inetd
99 turning telnetd off because it forked too fast.
101 Changes in release 0.6.5
103 * fix vulnerabilities in telnetd
105 * unbreak Kerberos 4 and kaserver
107 Changes in release 0.6.4
109 * fix vulnerabilities in telnet
111 * rshd: encryption without a separate error socket should now work
113 * telnet now uses appdefaults for the encrypt and forward/forwardable
118 Changes in release 0.6.3
120 * fix vulnerabilities in ftpd
122 * support for linux AFS /proc "syscalls"
124 * support for RFC3244 (Windows 2000 Kerberos Change/Set Password) in
127 * fix possible KDC denial of service
131 Changes in release 0.6.2
133 * Fix possible buffer overrun in v4 kadmin (which now defaults to off)
135 Changes in release 0.6.1
137 * Fixed ARCFOUR suppport
139 * Cross realm vulnerability
141 * kdc: fix denial of service attack
143 * kdc: stop clients from renewing tickets into the future
147 Changes in release 0.6
149 * The DES3 GSS-API mechanism has been changed to inter-operate with
150 other GSSAPI implementations. See man page for gssapi(3) how to turn
151 on generation of correct MIC messages. Next major release of heimdal
152 will generate correct MIC by default.
154 * More complete GSS-API support
156 * Better AFS support: kdc (524) supports 2b; 524 in kdc and AFS
157 support in applications no longer requires Kerberos 4 libs
159 * Kerberos 4 support in kdc defaults to turned off (includes ka and 524)
163 Changes in release 0.5.2
165 * kdc: add option for disabling v4 cross-realm (defaults to off)
169 Changes in release 0.5.1
171 * kadmind: fix remote exploit
173 * kadmind: add option to disable kerberos 4
175 * kdc: make sure kaserver token life is positive
177 * telnet: use the session key if there is no subkey
179 * fix EPSV parsing in ftp
183 Changes in release 0.5
185 * add --detach option to kdc
187 * allow setting forward and forwardable option in telnet from
188 .telnetrc, with override from command line
190 * accept addresses with or without ports in krb5_rd_cred
192 * make it work with modern openssl
194 * use our own string2key function even with openssl (that handles weak
197 * more system-specific requirements in login
199 * do not use getlogin() to determine root in su
201 * telnet: abort if telnetd does not support encryption
203 * update autoconf to 2.53
205 * update config.guess, config.sub
209 Changes in release 0.4e
211 * improve libcrypto and database autoconf tests
213 * do not care about salting of server principals when serving v4 requests
215 * some improvements to gssapi library
217 * test for existing compile_et/libcom_err
223 Changes in release 0.4d
225 * fix some problems when using libcrypto from openssl
227 * handle /dev/ptmx `unix98' ptys on Linux
229 * add some forgotten man pages
231 * rsh: clean-up and add man page
233 * fix -A and -a in builtin-ls in tpd
235 * fix building problem on Irix
237 * make `ktutil get' more efficient
241 Changes in release 0.4c
243 * fix buffer overrun in telnetd
245 * repair some of the v4 fallback code in kinit
247 * add more shared library dependencies
249 * simplify and fix hprop handling of v4 databases
251 * fix some building problems (osf's sia and osfc2 login)
255 Changes in release 0.4b
257 * update the shared library version numbers correctly
259 Changes in release 0.4a
261 * corrected key used for checksum in mk_safe, unfortunately this
262 makes it backwards incompatible
264 * update to autoconf 2.50, libtool 1.4
266 * re-write dns/config lookups (krb5_krbhst API)
268 * make order of using subkeys consistent
274 * remove rfc2052 support, now only rfc2782 is supported
276 * always build with kaserver protocol support in the KDC (assuming
277 KRB4 is enabled) and support for reading kaserver databases in
280 Changes in release 0.3f
282 * change default keytab to ANY:FILE:/etc/krb5.keytab,krb4:/etc/srvtab,
283 the new keytab type that tries both of these in order (SRVTAB is
284 also an alias for krb4:)
286 * improve error reporting and error handling (error messages should
287 be more detailed and more useful)
289 * improve building with openssl
291 * add kadmin -K, rcp -F
293 * fix two incorrect weak DES keys
295 * fix building of kaserver compat in KDC
297 * the API is closer to what MIT krb5 is using
299 * more compatible with windows 2000
301 * removed some memory leaks
305 Changes in release 0.3e
307 * rcp program included
309 * fix buffer overrun in ftpd
311 * handle omitted sequence numbers as zeroes to handle MIT krb5 that
312 cannot generate zero sequence numbers
314 * handle v4 /.k files better
316 * configure/portability fixes
318 * fixes in parsing of options to kadmin (sub-)commands
320 * handle errors in kadmin load better
324 Changes in release 0.3d
328 * fix a bug in 3des gss-api mechanism, making it compatible with the
329 specification and the MIT implementation
331 * make telnetd only allow a specific list of environment variables to
332 stop it from setting `sensitive' variables
334 * try to use an existing libdes
336 * lib/krb5, kdc: use correct usage type for ap-req messages. This
337 should improve compatability with MIT krb5 when using 3DES
340 * kdc: fix memory allocation problem
342 * update config.guess and config.sub
344 * lib/roken: more stuff implemented
346 * bug fixes and portability enhancements
348 Changes in release 0.3c
350 * lib/krb5: memory caches now support the resolve operation
352 * appl/login: set PATH to some sane default
354 * kadmind: handle several realms
356 * bug fixes (including memory leaks)
358 Changes in release 0.3b
360 * kdc: prefer default-salted keys on v5 requests
362 * kdc: lowercase hostnames in v4 mode
364 * hprop: handle more types of MIT salts
366 * lib/krb5: fix memory leak
370 Changes in release 0.3a:
372 * implement arcfour-hmac-md5 to interoperate with W2K
374 * modularise the handling of the master key, and allow for other
375 encryption types. This makes it easier to import a database from
376 some other source without having to re-encrypt all keys.
378 * allow for better control over which encryption types are created
380 * make kinit fallback to v4 if given a v4 KDC
382 * make klist work better with v4 and v5, and add some more MIT
383 compatibility options
385 * make the kdc listen on the krb524 (4444) port for compatibility
386 with MIT krb5 clients
388 * implement more DCE/DFS support, enabled with --enable-dce, see
389 lib/kdfs and appl/dceutils
391 * make the sequence numbers work correctly
395 Changes in release 0.2t:
399 Changes in release 0.2s:
401 * add OpenLDAP support in hdb
403 * login will get v4 tickets when it receives forwarded tickets
405 * xnlock supports both v5 and v4
407 * repair source routing for telnet
409 * fix building problems with krb4 (krb_mk_req)
413 Changes in release 0.2r:
415 * fix realloc memory corruption bug in kdc
417 * `add --key' and `cpw --key' in kadmin
419 * klist supports listing v4 tickets
421 * update config.guess and config.sub
423 * make v4 -> v5 principal name conversion more robust
425 * support for anonymous tickets
429 * telnetd: do not negotiate KERBEROS5 authentication if there's no keytab.
431 * use and set expiration and not password expiration when dumping
432 to/from ka server databases / krb4 databases
434 * make the code happier with 64-bit time_t
436 * follow RFC2782 and by default do not look for non-underscore SRV names
438 Changes in release 0.2q:
440 * bug fix in tcp-handling in kdc
442 * bug fix in expand_hostname
444 Changes in release 0.2p:
446 * bug fix in `kadmin load/merge'
448 * bug fix in krb5_parse_address
450 Changes in release 0.2o:
452 * gss_{import,export}_sec_context added to libgssapi
454 * new option --addresses to kdc (for listening on an explicit set of
457 * bug fixes in the krb4 and kaserver emulation part of the kdc
461 Changes in release 0.2n:
463 * more robust parsing of dump files in kadmin
464 * changed default timestamp format for log messages to extended ISO
465 8601 format (Y-M-DTH:M:S)
466 * changed md4/md5/sha1 APIes to be de-facto `standard'
467 * always make hostname into lower-case before creating principal
468 * small bits of more MIT-compatability
471 Changes in release 0.2m:
473 * handle glibc's getaddrinfo() that returns several ai_canonname
479 Changes in release 0.2l:
483 Changes in release 0.2k:
487 * make struct sockaddr_storage in roken work better on alphas
489 * some missing [hn]to[hn]s fixed.
491 * allow users to change their own passwords with kadmin (with initial
494 * fix stupid bug in parsing KDC specification
496 * add `ktutil change' and `ktutil purge'
498 Changes in release 0.2j:
502 * ftpd works in passive mode
504 * should build on cygwin
506 * work around broken IPv6-code on OpenBSD 2.6, also add configure
507 option --disable-ipv6
509 Changes in release 0.2i:
511 * use getaddrinfo in the missing places.
513 * fix SRV lookup for admin server
515 * use get{addr,name}info everywhere. and implement it in terms of
516 getipnodeby{name,addr} (which uses gethostbyname{,2} and
519 Changes in release 0.2h:
521 * fix typo in kx (now compiles)
523 Changes in release 0.2g:
527 * repair appl/test programs
528 * sockaddr_storage works on solaris (alignment issues)
529 * works better with non-roken getaddrinfo
531 * some non standard C constructs removed
533 Changes in release 0.2f:
535 * support SRV records for kpasswd
536 * look for both _kerberos and krb5-realm when doing host -> realm mapping
538 Changes in release 0.2e:
540 * changed copyright notices to remove `advertising'-clause.
541 * get{addr,name}info added to roken and used in the other code
542 (this makes things work much better with hosts with both v4 and v6
543 addresses, among other things)
544 * do pre-auth for both password and key-based get_in_tkt
545 * support for having several databases
546 * new command `del_enctype' in kadmin
547 * strptime (and new strftime) add to roken
548 * more paranoia about finding libdb
551 Changes in release 0.2d:
553 * new configuration option [libdefaults]default_etypes_des
554 * internal ls in ftpd builds without KRB4
555 * kx/rsh/push/pop_debug tries v5 and v4 consistenly
559 Changes in release 0.2c:
561 * bug fixes (see ChangeLog's for details)
563 Changes in release 0.2b:
566 * actually bump shared library versions
568 Changes in release 0.2a:
570 * a new program verify_krb5_conf for checking your /etc/krb5.conf
571 * add 3DES keys when changing password
572 * support null keys in database
573 * support multiple local realms
574 * implement a keytab backend for AFS KeyFile's
575 * implement a keytab backend for v4 srvtabs
576 * implement `ktutil copy'
577 * support password quality control in v4 kadmind
578 * improvements in v4 compat kadmind
579 * handle the case of having the correct cred in the ccache but with
580 the wrong encryption type better
581 * v6-ify the remaining programs.
582 * internal ls in ftpd
583 * rename strcpy_truncate/strcat_truncate to strlcpy/strlcat
584 * add `ank --random-password' and `cpw --random-password' in kadmin
585 * some programs and documentation for trying to talk to a W2K KDC
588 Changes in release 0.1m:
590 * support for getting default from krb5.conf for kinit/kf/rsh/telnet.
591 From Miroslav Ruda <ruda@ics.muni.cz>
592 * v6-ify hprop and hpropd
593 * support numeric addresses in krb5_mk_req
594 * shadow support in login and su. From Miroslav Ruda <ruda@ics.muni.cz>
595 * make rsh/rshd IPv6-aware
596 * make the gssapi sample applications better at reporting errors
598 * handle systems with v6-aware libc and non-v6 kernels (like Linux
599 with glibc 2.1) better
600 * hide failure of ERPT in ftp
603 Changes in release 0.1l:
605 * make ftp and ftpd IPv6-aware
606 * add inet_pton to roken
607 * more IPv6-awareness
608 * make mini_inetd v6 aware
610 Changes in release 0.1k:
612 * bump shared libraries versions
613 * add roken version of inet_ntop
614 * merge more changes to rshd
616 Changes in release 0.1j:
618 * restore back to the `old' 3DES code. This was supposed to be done
619 in 0.1h and 0.1i but I did a CVS screw-up.
620 * make telnetd handle v6 connections
622 Changes in release 0.1i:
624 * start using `struct sockaddr_storage' which simplifies the code
625 (with a fallback definition if it's not defined)
626 * bug fixes (including in hprop and kf)
627 * don't use mawk which seems to mishandle roken.awk
628 * get_addrs should be able to handle v6 addresses on Linux (with the
629 required patch to the Linux kernel -- ask within)
630 * rshd builds with shadow passwords
632 Changes in release 0.1h:
634 * kf: new program for forwarding credentials
636 * make forwarding credentials work with MIT code
637 * better conversion of ka database
638 * add etc/services.append
639 * correct `modified by' from kpasswdd
642 Changes in release 0.1g:
644 * kgetcred: new program for explicitly obtaining tickets
649 Changes in release 0.1f;
651 * experimental support for v4 kadmin protokoll in kadmind
654 Changes in release 0.1e:
656 * try to handle old DCE and MIT kdcs
657 * support for older versions of credential cache files and keytabs
658 * postdated tickets work
659 * support for password quality checks in kpasswdd
660 * new flag --enable-kaserver for kdc
662 * prototype su program
663 * updated (some) manpages
664 * support for KDC resource records
665 * should build with --without-krb4
668 Changes in release 0.1d:
670 * Support building with DB2 (uses 1.85-compat API)
671 * Support krb5-realm.DOMAIN in DNS
672 * new `ktutil srvcreate'
673 * v4/kafs support in klist/kdestroy
676 Changes in release 0.1c:
678 * fix ASN.1 encoding of signed integers
679 * somewhat working `ktutil get'
680 * some documentation updates
681 * update to Autoconf 2.13 and Automake 1.4
682 * the usual bug fixes
684 Changes in release 0.1b:
686 * some old -> new crypto conversion utils
689 Changes in release 0.1a:
693 * make sure we ask for DES keys in gssapi
694 * support signed ints in ASN1
697 Changes in release 0.0u:
701 Changes in release 0.0t:
703 * more robust parsing of krb5.conf
704 * include net{read,write} in lib/roken
707 Changes in release 0.0s:
709 * kludges for parsing options to rsh
710 * more robust parsing of krb5.conf
711 * removed some arbitrary limits
714 Changes in release 0.0r:
716 * default options for some programs
719 Changes in release 0.0q:
721 * support for building shared libraries with libtool
724 Changes in release 0.0p:
726 * keytab moved to /etc/krb5.keytab
727 * avoid false detection of IPv6 on Linux
728 * Lots of more functionality in the gssapi-library
729 * hprop can now read ka-server databases
732 Changes in release 0.0o:
734 * FTP with GSSAPI support.
737 Changes in release 0.0n:
739 * Incremental database propagation.
740 * Somewhat improved kadmin ui; the stuff in admin is now removed.
741 * Some support for using enctypes instead of keytypes.
742 * Lots of other improvement and bug fixes, see ChangeLog for details.