35 Commits

Author SHA1 Message Date
Taylor R Campbell
ad23636db8 Add a test for potential DNS leaks via symbol interposition.
We build variants of kinit and test_acquire_cred that define their
own symbols rk_dns_lookup, gethostbyname, gethostbyname2, and
getaddrinfo to print a message and abort.  For getaddrinfo, we abort
only if the caller failed to specify AI_NUMERICHOST; otherwise we use
dlsym(RTLD_NEXT, "getaddrinfo") instead.

The new test tests/gss/check-nodns is like tests/gss/check-basic, but
uses kinit_auditdns and test_acquire_cred_auditdns to verify that no
DNS resolution happens.

This test should work and be effective on ELF platforms where the
getaddrinfo function is implemented by the symbol `getaddrinfo'.  On
non-ELF platforms it may not be effective -- and on platforms where
the getaddrinfo function is implemented by another symbol (like
`__getaddrinfo50') it may not work, but we can cross that bridge when
we come to it.

Verified manually that the test fails, with the expected error
message and abort, without `block_dns = yes' in krb5-nodns.conf.  No
automatic test of the mechanism for now because it might not work on
some platforms.

XXX check-nodns.in is copypasta of check-basic.in, should factor out
the common parts so they don't get out of sync.
2024-01-08 10:22:02 -06:00
Nicolas Williams
77a452f4fd kdc: Make path to MIT Kerberos for testing configurable 2023-01-04 00:43:35 -06:00
Nicolas Williams
df244493ee krb5: Test KCM
Finally, we have a test for KCM.  It shall not break again.
2022-01-25 15:38:55 -06:00
Isaac Boukris
152e28fc40 tests: add PAC test for CVE-2020-17049 (bronze bit) 2021-09-19 12:58:40 +10:00
Nicolas Williams
9574783d04 kdc: Add httpkadmind
TBD:

 - improve error handling, logging, tracing!
 - move all REST services out of kdc/
2020-09-08 14:34:08 -05:00
Luke Howard
4fb6a6adc9 gss: port NegoEx implementation from MIT
An implementation of draft-zhu-negoex-04 for MIT Kerberos was developed in
2011. This has been recently integrated, with many fixes from Greg Hudson. This
commit ports it to Heimdal. The implementation has been interoperability tested
with MIT Kerberos and Windows, using the GSS EAP mechanism developed as part of
the Moonshot project.

The SPNEGO code was also updated to import the state machine from Apple which
improves mechListMIC processing and avoids discarding initial context tokens
generated during mechanism probing, that can be used for optimistic tokens.

Finally, to aid in testing, the GSS-API mechanism glue configuration file can
be changed using the environment variable GSS_MECH_CONFIG. This environment
variable name, along with the format of the configuration file, is compatible
with MIT (although it would be difficult for a single mechanism binary to
support both implementations).
2020-02-04 17:28:35 +11:00
Nicolas Williams
575c67806b Add bx509d 2019-12-04 21:34:44 -06:00
Nicolas Williams
dfada0ccad kx509: Add CSR support
This commit adds support for proof of posession to the kx509 protocol by
using PKCS#10 CSRs.

This allows conveyance of extReq CSR attributes requesting desired
Certificate Extensions.
2019-10-09 20:53:30 -05:00
Nicolas Williams
2027aa11ed Use --detach in tests to avoid waiting 2016-12-07 19:52:29 -06:00
Jelmer Vernooij
2b365b2327 Rename kcc to heimtools.
This should prevent naming clashes with other utilities named 'kcc'.

Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2012-03-06 00:06:26 -08:00
Nicolas Williams
abd065be02 Add a test for krb5_kuserok() 2011-12-08 13:34:02 -06:00
Nicolas Williams
da14596f0e Add a test for aname2lname 2011-12-02 01:03:31 -06:00
Love Hörnquist Åstrand
3f1d903a85 add kinit test to kdc-tester 2011-11-21 20:34:36 -08:00
Nicolas Williams
349609ed20 Initial test of x-realm TGT w/ kvno 0 and key rollover
NOTE: The test runs and succeeds, but the client seems to be getting
	  a new x-realm TGT after we set the kvno to 0 or remove the
	  kvno from the tickets.  This means we're not really testing
	  the TGS paths!  So this test is not yet ready.
2011-11-15 21:53:34 -06:00
Nicolas Williams
8fde93e3fb Initial name canon rules tests (just kgetcred) 2011-10-22 14:54:26 -05:00
Love Hornquist Astrand
5f342b59b8 add gsstool 2010-11-26 00:09:48 -08:00
Love Hornquist Astrand
55e96fabf2 switch kswitch to kcc 2010-11-25 09:29:29 -08:00
Love Hornquist Astrand
e186ea15b1 use kcc for klist 2010-11-24 19:43:40 -08:00
Love Hornquist Astrand
86da42df1d abstract out --no-afslog and --no-unlog 2010-06-01 14:42:16 -07:00
Love Hornquist Astrand
ccacfda1cc dont pass --no-unlog if afs is not configured. Patch partly from Eray Asian 2010-06-01 10:17:37 -07:00
Love Hornquist Astrand
869d8fe465 clean KRB5CCNAME and KRB5_CONFIG, require test to reset them 2009-12-17 10:05:49 +01:00
Love Hornquist Astrand
a0603b4900 add kdigest 2009-09-07 16:23:33 -07:00
Love Hornquist Astrand
ade7052a48 add kpasswd and kpasswdd 2009-09-07 16:22:36 -07:00
Love Hornquist Astrand
7bb288bad9 add more tools 2009-09-07 15:47:36 -07:00
Love Hornquist Astrand
7cbd7c2bf0 sort lines 2009-09-07 15:34:49 -07:00
Love Hornquist Astrand
d33cbbda51 sort lines 2009-09-07 15:34:43 -07:00
Love Hornquist Astrand
72590fb0c9 sort lines 2009-09-07 15:34:29 -07:00
Love Hornquist Astrand
cdee28dd25 add kadmind 2009-09-07 15:34:18 -07:00
Love Hornquist Astrand
e8dfb4b2d3 send logs to /tmp/heim-malloc-log 2009-09-07 14:22:06 -07:00
Love Hornquist Astrand
1825f6b404 add iprop commands 2009-09-07 13:21:33 -07:00
Love Hornquist Astrand
6ef0e4204d Add heim_malloc_debug 2009-09-07 13:14:00 -07:00
Love Hornquist Astrand
2b9ca6c027 add kswitch 2009-09-06 23:24:21 -07:00
Love Hornquist Astrand
4cee1d0b58 add newline 2009-09-06 23:19:18 -07:00
Love Hornquist Astrand
6683a553f2 externlize env-setup 2009-09-06 23:16:03 -07:00
Love Hornquist Astrand
45cb91dde2 switch to mostly configuration in setup-env for check-kdc 2009-09-06 18:38:23 -07:00