changes in 0.8.1
[metze/heimdal/wip.git] / NEWS
1 Changes in release 0.8.1
2
3 * Make ASN.1 library less paranoid to with regard to NUL in string to
4   make it inter-operate with MIT Kerberos again.
5
6 * Make GSS-API library work again when using gss_acquire_cred
7
8 * Add symbol versioning to libgssapi when using GNU ld.
9
10 * Fix memory leaks 
11
12 Changes in release 0.8
13
14  * PK-INIT support.
15
16  * HDB extensions support, used by PK-INIT.
17
18  * New ASN.1 compiler.
19
20  * GSS-API mechglue from FreeBSD.
21
22  * Updated SPNEGO to support RFC4178.
23
24  * Support for Cryptosystem Negotiation Extension (RFC 4537).
25
26  * A new X.509 library (hx509) and related crypto functions.
27
28  * A new ntlm library (heimntlm) and related crypto functions.
29
30  * Updated the built-in crypto library with bignum support using
31    imath, support for RSA and DH and renamed it to libhcrypto.
32
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.
36
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
39    PK-INIT requests.
40
41  * Libkafs defaults to use 2b tokens.
42
43  * Default to use the API cache on Mac OS X.
44
45  * krb5_kuserok() also checks ~/.k5login.d directory for acl files,
46    see manpage for krb5_kuserok for description.
47
48  * Many, many, other update to code and info manual and manual pages.
49
50  * Bug fixes
51
52 Changes in release 0.7.2
53
54 * Fix security problem in rshd that enable an attacker to overwrite
55   and change ownership of any file that root could write.
56
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.
60
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.
64
65 * Fix receiving end of token delegation for GSS-API. It still wrongly
66   uses subkey for sending for compatibility reasons, this will change
67   in 0.8.
68
69 * telnetd, login and rshd are now more verbose in logging failed and
70   successful logins.
71
72 * Bug fixes
73
74 Changes in release 0.7.1
75
76 * Bug fixes
77
78 Changes in release 0.7
79
80  * Support for KCM, a process based credential cache
81
82  * Support CCAPI credential cache
83
84  * SPNEGO support
85
86  * AES (and the gssapi conterpart, CFX) support
87
88  * Adding new and improve old documentation
89
90  * Bug fixes
91
92 Changes in release 0.6.6
93
94 * Fix security problem in rshd that enable an attacker to overwrite
95   and change ownership of any file that root could write.
96
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.
100
101 Changes in release 0.6.5
102
103  * fix vulnerabilities in telnetd
104
105  * unbreak Kerberos 4 and kaserver
106
107 Changes in release 0.6.4
108
109  * fix vulnerabilities in telnet
110
111  * rshd: encryption without a separate error socket should now work
112
113  * telnet now uses appdefaults for the encrypt and forward/forwardable
114    settings
115
116  * bug fixes
117
118 Changes in release 0.6.3
119
120  * fix vulnerabilities in ftpd
121
122  * support for linux AFS /proc "syscalls"
123
124  * support for RFC3244 (Windows 2000 Kerberos Change/Set Password) in
125    kpasswdd
126
127  * fix possible KDC denial of service
128
129  * bug fixes
130
131 Changes in release 0.6.2
132
133  * Fix possible buffer overrun in v4 kadmin (which now defaults to off)
134
135 Changes in release 0.6.1
136
137  * Fixed ARCFOUR suppport
138
139  * Cross realm vulnerability
140
141  * kdc: fix denial of service attack
142
143  * kdc: stop clients from renewing tickets into the future
144
145  * bug fixes
146         
147 Changes in release 0.6
148
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.
153
154 * More complete GSS-API support
155
156 * Better AFS support: kdc (524) supports 2b; 524 in kdc and AFS
157   support in applications no longer requires Kerberos 4 libs
158
159 * Kerberos 4 support in kdc defaults to turned off (includes ka and 524)
160
161 * other bug fixes
162
163 Changes in release 0.5.2
164
165  * kdc: add option for disabling v4 cross-realm (defaults to off)
166
167  * bug fixes
168
169 Changes in release 0.5.1
170
171  * kadmind: fix remote exploit
172
173  * kadmind: add option to disable kerberos 4
174
175  * kdc: make sure kaserver token life is positive
176
177  * telnet: use the session key if there is no subkey
178
179  * fix EPSV parsing in ftp
180
181  * other bug fixes
182
183 Changes in release 0.5
184
185  * add --detach option to kdc
186
187  * allow setting forward and forwardable option in telnet from
188    .telnetrc, with override from command line
189
190  * accept addresses with or without ports in krb5_rd_cred
191
192  * make it work with modern openssl
193
194  * use our own string2key function even with openssl (that handles weak
195    keys incorrectly)
196
197  * more system-specific requirements in login
198
199  * do not use getlogin() to determine root in su
200
201  * telnet: abort if telnetd does not support encryption
202
203  * update autoconf to 2.53
204
205  * update config.guess, config.sub
206
207  * other bug fixes
208
209 Changes in release 0.4e
210
211  * improve libcrypto and database autoconf tests
212
213  * do not care about salting of server principals when serving v4 requests
214
215  * some improvements to gssapi library
216
217  * test for existing compile_et/libcom_err
218
219  * portability fixes
220
221  * bug fixes
222
223 Changes in release 0.4d
224
225  * fix some problems when using libcrypto from openssl
226
227  * handle /dev/ptmx `unix98' ptys on Linux
228
229  * add some forgotten man pages
230
231  * rsh: clean-up and add man page
232
233  * fix -A and -a in builtin-ls in tpd
234
235  * fix building problem on Irix
236
237  * make `ktutil get' more efficient
238
239  * bug fixes
240
241 Changes in release 0.4c
242
243  * fix buffer overrun in telnetd
244
245  * repair some of the v4 fallback code in kinit
246
247  * add more shared library dependencies
248
249  * simplify and fix hprop handling of v4 databases
250
251  * fix some building problems (osf's sia and osfc2 login)
252
253  * bug fixes
254
255 Changes in release 0.4b
256
257  * update the shared library version numbers correctly
258
259 Changes in release 0.4a
260
261  * corrected key used for checksum in mk_safe, unfortunately this
262    makes it backwards incompatible
263
264  * update to autoconf 2.50, libtool 1.4
265
266  * re-write dns/config lookups (krb5_krbhst API)
267
268  * make order of using subkeys consistent
269
270  * add man page links
271
272  * add more man pages
273
274  * remove rfc2052 support, now only rfc2782 is supported
275
276  * always build with kaserver protocol support in the KDC (assuming
277    KRB4 is enabled) and support for reading kaserver databases in
278    hprop
279
280 Changes in release 0.3f
281
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:)
285
286  * improve error reporting and error handling (error messages should
287    be more detailed and more useful)
288
289  * improve building with openssl
290
291  * add kadmin -K, rcp -F 
292
293  * fix two incorrect weak DES keys
294
295  * fix building of kaserver compat in KDC
296
297  * the API is closer to what MIT krb5 is using
298
299  * more compatible with windows 2000
300
301  * removed some memory leaks
302
303  * bug fixes
304
305 Changes in release 0.3e
306
307  * rcp program included
308
309  * fix buffer overrun in ftpd
310
311  * handle omitted sequence numbers as zeroes to handle MIT krb5 that
312    cannot generate zero sequence numbers
313
314  * handle v4 /.k files better
315
316  * configure/portability fixes
317
318  * fixes in parsing of options to kadmin (sub-)commands
319
320  * handle errors in kadmin load better
321
322  * bug fixes
323
324 Changes in release 0.3d
325
326  * add krb5-config
327
328  * fix a bug in 3des gss-api mechanism, making it compatible with the
329    specification and the MIT implementation
330
331  * make telnetd only allow a specific list of environment variables to
332    stop it from setting `sensitive' variables
333
334  * try to use an existing libdes
335
336  * lib/krb5, kdc: use correct usage type for ap-req messages.  This
337    should improve compatability with MIT krb5 when using 3DES
338    encryption types
339
340  * kdc: fix memory allocation problem
341
342  * update config.guess and config.sub
343
344  * lib/roken: more stuff implemented
345
346  * bug fixes and portability enhancements
347
348 Changes in release 0.3c
349
350  * lib/krb5: memory caches now support the resolve operation
351
352  * appl/login: set PATH to some sane default
353
354  * kadmind: handle several realms
355
356  * bug fixes (including memory leaks)
357
358 Changes in release 0.3b
359
360  * kdc: prefer default-salted keys on v5 requests
361
362  * kdc: lowercase hostnames in v4 mode
363
364  * hprop: handle more types of MIT salts
365
366  * lib/krb5: fix memory leak
367
368  * bug fixes
369
370 Changes in release 0.3a:
371
372  * implement arcfour-hmac-md5 to interoperate with W2K
373
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.
377
378  * allow for better control over which encryption types are created
379
380  * make kinit fallback to v4 if given a v4 KDC
381
382  * make klist work better with v4 and v5, and add some more MIT
383    compatibility options
384
385  * make the kdc listen on the krb524 (4444) port for compatibility
386    with MIT krb5 clients
387
388  * implement more DCE/DFS support, enabled with --enable-dce, see
389    lib/kdfs and appl/dceutils
390
391  * make the sequence numbers work correctly
392
393  * bug fixes
394
395 Changes in release 0.2t:
396
397  * bug fixes
398
399 Changes in release 0.2s:
400
401  * add OpenLDAP support in hdb
402
403  * login will get v4 tickets when it receives forwarded tickets
404
405  * xnlock supports both v5 and v4
406
407  * repair source routing for telnet
408
409  * fix building problems with krb4 (krb_mk_req)
410
411  * bug fixes
412
413 Changes in release 0.2r:
414
415  * fix realloc memory corruption bug in kdc
416
417  * `add --key' and `cpw --key' in kadmin
418
419  * klist supports listing v4 tickets
420
421  * update config.guess and config.sub
422
423  * make v4 -> v5 principal name conversion more robust
424
425  * support for anonymous tickets
426
427  * new man-pages
428
429  * telnetd: do not negotiate KERBEROS5 authentication if there's no keytab.
430
431  * use and set expiration and not password expiration when dumping
432    to/from ka server databases / krb4 databases
433
434  * make the code happier with 64-bit time_t
435
436  * follow RFC2782 and by default do not look for non-underscore SRV names
437
438 Changes in release 0.2q:
439
440  * bug fix in tcp-handling in kdc
441
442  * bug fix in expand_hostname
443
444 Changes in release 0.2p:
445
446  * bug fix in `kadmin load/merge'
447
448  * bug fix in krb5_parse_address
449
450 Changes in release 0.2o:
451
452  * gss_{import,export}_sec_context added to libgssapi
453
454  * new option --addresses to kdc (for listening on an explicit set of
455    addresses)
456
457  * bug fixes in the krb4 and kaserver emulation part of the kdc
458
459  * other bug fixes
460
461 Changes in release 0.2n:
462
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
469  * bug fixes
470
471 Changes in release 0.2m:
472
473  * handle glibc's getaddrinfo() that returns several ai_canonname
474
475  * new endian test
476
477  * man pages fixes
478
479 Changes in release 0.2l:
480
481  * bug fixes
482
483 Changes in release 0.2k:
484
485  * better IPv6 test
486
487  * make struct sockaddr_storage in roken work better on alphas
488
489  * some missing [hn]to[hn]s fixed.
490
491  * allow users to change their own passwords with kadmin (with initial
492    tickets)
493
494  * fix stupid bug in parsing KDC specification
495
496  * add `ktutil change' and `ktutil purge'
497
498 Changes in release 0.2j:
499
500  * builds on Irix
501
502  * ftpd works in passive mode
503
504  * should build on cygwin
505
506  * work around broken IPv6-code on OpenBSD 2.6, also add configure
507    option --disable-ipv6
508
509 Changes in release 0.2i:
510
511  * use getaddrinfo in the missing places.
512
513  * fix SRV lookup for admin server
514
515  * use get{addr,name}info everywhere.  and implement it in terms of
516    getipnodeby{name,addr} (which uses gethostbyname{,2} and
517    gethostbyaddr)
518
519 Changes in release 0.2h:
520
521  * fix typo in kx (now compiles)
522
523 Changes in release 0.2g:
524
525  * lots of bug fixes:
526    * push works
527    * repair appl/test programs
528    * sockaddr_storage works on solaris (alignment issues)
529    * works better with non-roken getaddrinfo
530    * rsh works
531    * some non standard C constructs removed
532
533 Changes in release 0.2f:
534
535  * support SRV records for kpasswd
536  * look for both _kerberos and krb5-realm when doing host -> realm mapping
537
538 Changes in release 0.2e:
539
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
549  * bug fixes
550
551 Changes in release 0.2d:
552
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
556  * build bug fixes
557  * other bug fixes
558
559 Changes in release 0.2c:
560
561  * bug fixes (see ChangeLog's for details)
562
563 Changes in release 0.2b:
564
565  * bug fixes
566  * actually bump shared library versions
567
568 Changes in release 0.2a:
569
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
586  * bug fixes
587
588 Changes in release 0.1m:
589
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
597  * lots of bug fixes
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
601  * lots of bug fixes
602
603 Changes in release 0.1l:
604
605  * make ftp and ftpd IPv6-aware
606  * add inet_pton to roken
607  * more IPv6-awareness
608  * make mini_inetd v6 aware
609
610 Changes in release 0.1k:
611
612  * bump shared libraries versions
613  * add roken version of inet_ntop
614  * merge more changes to rshd
615
616 Changes in release 0.1j:
617
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
621
622 Changes in release 0.1i:
623
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
631
632 Changes in release 0.1h:
633
634  * kf: new program for forwarding credentials
635  * portability fixes
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
640  * lots of bug fixes
641
642 Changes in release 0.1g:
643
644  * kgetcred: new program for explicitly obtaining tickets
645  * configure fixes
646  * krb5-aware kx
647  * bug fixes
648
649 Changes in release 0.1f;
650
651  * experimental support for v4 kadmin protokoll in kadmind
652  * bug fixes
653
654 Changes in release 0.1e:
655
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
661  * renew fixes
662  * prototype su program
663  * updated (some) manpages
664  * support for KDC resource records
665  * should build with --without-krb4
666  * bug fixes
667
668 Changes in release 0.1d:
669
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
674  * bug fixes
675
676 Changes in release 0.1c:
677
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
683
684 Changes in release 0.1b:
685
686  * some old -> new crypto conversion utils
687  * bug fixes
688
689 Changes in release 0.1a:
690
691  * new crypto code
692  * more bug fixes
693  * make sure we ask for DES keys in gssapi
694  * support signed ints in ASN1
695  * IPv6-bug fixes
696
697 Changes in release 0.0u:
698
699  * lots of bug fixes
700
701 Changes in release 0.0t:
702
703  * more robust parsing of krb5.conf
704  * include net{read,write} in lib/roken
705  * bug fixes
706
707 Changes in release 0.0s:
708
709  * kludges for parsing options to rsh
710  * more robust parsing of krb5.conf
711  * removed some arbitrary limits
712  * bug fixes
713
714 Changes in release 0.0r:
715
716  * default options for some programs
717  * bug fixes
718
719 Changes in release 0.0q:
720
721  * support for building shared libraries with libtool
722  * bug fixes
723
724 Changes in release 0.0p:
725
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
730  * bug fixes
731
732 Changes in release 0.0o:
733
734  * FTP with GSSAPI support.
735  * Bug fixes.
736
737 Changes in release 0.0n:
738
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.