Hostnames

2008-06-27 Thread Krauss, Michael
List members,

Is t possible to have a server without a hostname?

Thanks,
-Michael

Kerberos mailing list   Kerberos@mit.edu
https://mailman.mit.edu/mailman/listinfo/kerberos


Re: Question about dns_lookup_realm and domain_realm

2008-06-27 Thread Ken Raeburn
On Jun 27, 2008, at 11:51, Simo Sorce wrote:
> Thanks, the explanation there makes a lot of sense, but reading  
> through
> the lines it probably would not affect the original poster security,
> because the "insecurity" of the TXT record is exploitable only in  
> case a
> trusted realm is compromised (and the DNS spoofed at the same time).

The "trusted realm" idea gets tossed around a lot, without a lot of  
specifics.  Sometimes what is meant is, "a client in realm A can prove  
its identity to a server in realm B", and with multi-hop cross-realm  
authentication and (someday, we hope) something like PKCROSS, that  
doesn't have to imply any relationship directly between the two.  With  
PKCROSS, all that's needed is KDCs to have certificates issued by  
trusted CAs.  Sometimes what is meant is, "I know the administrators  
of realm B (or run it myself), and I put complete trust in anything  
they tell me, even if they're telling me something about my own users  
or servers". Kerberos cross-realm authentication is about the former.

That said, if you don't exchange cross-realm keys with any outside  
realms, and disable PKCROSS if/when it gets implemented, you could  
have an isolated set of realms collectively considered part of your  
trusted computing base.

>>> How is local configuration data trustworthy given that to resolve  
>>> names
>>> to IPs we still rely on DNS ? Or do you also rely on /etc/hosts  
>>> for most
>>> of the data ?
>> If the host name resolves to a different IP address, the  
>> authentication
>> will fail.
>
> Uhmm perhaps we are thinking of two different things, once you control
> DNS you control both direct and reverse address resolution.

The RFC says a Kerberos implementation shouldn't rely on DNS for  
determining the service principal name.  That MIT's implementation  
does is a bug.  (A long-standing one, one with implications as far as  
choices of names stored in keytabs, and changing it will involve some  
transition issues, as well as needing better support for handling  
multiple names for a server.)  The name you attempt to *authenticate*  
to SHOULD be the name provided by the user, possibly transformed in  
some secure ways (e.g., add the local domain name, but do not look it  
up in DNS without DNSSEC).

Ken

Kerberos mailing list   Kerberos@mit.edu
https://mailman.mit.edu/mailman/listinfo/kerberos


Re: Question about dns_lookup_realm and domain_realm

2008-06-27 Thread Jeffrey Altman

Simo Sorce wrote:


Uhmm perhaps we are thinking of two different things, once you control
DNS you control both direct and reverse address resolution.

Hence the reason that reverse DNS lookups are not to be used as per the 
Security Considerations

of RFC 4120.

Jeffrey Altman



smime.p7s
Description: S/MIME Cryptographic Signature

Kerberos mailing list   Kerberos@mit.edu
https://mailman.mit.edu/mailman/listinfo/kerberos


Re: Question about dns_lookup_realm and domain_realm

2008-06-27 Thread Jos Backus
On Fri, Jun 27, 2008 at 08:37:23AM -0400, Jeffrey Altman wrote:
> > That's something my patch changes as it performs the DNS lookup first (when
> > configured).
> Which in turn would disable Kerberos referrals.  

Good to know. If referrals solve my problem, I'll set that up.

> There is a serious need for the zero configuration solution for Kerberos 
> deployments.
> Of course, DNS is insecure so relying on DNS to boot strap your 
> authentication system
> is undesirable.  That is not to say it has not been used but only 
> because there have
> been no other choices.

Amen.

> For referrals to work the user must have already obtained a TGT.  If you 
> are trying to decide
> which identity a user should obtain a credential for based upon the host 
> that the user is going
> to communicate with, that is not something that will be solved by 
> referrals. 

Understood. Thankfully that's not the issue here - the user already has a TGT.

> To be honest, I don't think it will be solved by domain_realm mappings 
> whether stored
> locally or in DNS.

Based on what I know, I agree.

Thanks,
-- 
Jos Backus
jos at catnook.com

Kerberos mailing list   Kerberos@mit.edu
https://mailman.mit.edu/mailman/listinfo/kerberos


Re: Question about dns_lookup_realm and domain_realm

2008-06-27 Thread Simo Sorce
On Fri, 2008-06-27 at 11:31 -0400, Jeffrey Altman wrote:
> Simo Sorce wrote:
> >> There are several issues here.  First, DNS TXT records are known to be 
> >> insecure.
> >
> > Jeff,
> > this statements is interesting, how are TXT records "insecure" ?
> I will refer you to the security considerations section of the internet 
> draft.  Note that
> the insecurity is one reason that the TXT record portion of the draft 
> was not
> added to RFC 4120 as the DNS SRV records portion was.
> 
> http://tools.ietf.org/html/draft-ietf-krb-wg-krb-dns-locate-03

Thanks, the explanation there makes a lot of sense, but reading through
the lines it probably would not affect the original poster security,
because the "insecurity" of the TXT record is exploitable only in case a
trusted realm is compromised (and the DNS spoofed at the same time).

But it is a very interesting consideration nonetheless.

> > How is local configuration data trustworthy given that to resolve names
> > to IPs we still rely on DNS ? Or do you also rely on /etc/hosts for most
> > of the data ?
> If the host name resolves to a different IP address, the authentication 
> will fail.

Uhmm perhaps we are thinking of two different things, once you control
DNS you control both direct and reverse address resolution.

> >> The safe way to add DNS TXT records back into the equation would be to 
> >> add the DNS TXT
> >> lookup after the referrals request fails.
> >
> > Do we have information on which clients support referrals ?
> > And are they implemented in MIT KDC (and how) ?
> >
> Heimdal, MIT, and Microsoft support referrals as implemented in Windows 
> Active Directory. 
> The IETF Kerberos working group is still working on an RFC for referrals.
> 
> http://www.ietf.org/internet-drafts/draft-ietf-krb-wg-kerberos-referrals-10.txt

Thanks a lot,
lots of very useful info here.

Simo.

-- 
Simo Sorce * Red Hat, Inc * New York


Kerberos mailing list   Kerberos@mit.edu
https://mailman.mit.edu/mailman/listinfo/kerberos


Re: Question about dns_lookup_realm and domain_realm

2008-06-27 Thread Jeffrey Altman

Simo Sorce wrote:
There are several issues here.  First, DNS TXT records are known to be 
insecure.


Jeff,
this statements is interesting, how are TXT records "insecure" ?
I will refer you to the security considerations section of the internet 
draft.  Note that
the insecurity is one reason that the TXT record portion of the draft 
was not

added to RFC 4120 as the DNS SRV records portion was.

http://tools.ietf.org/html/draft-ietf-krb-wg-krb-dns-locate-03



  Turning
them on for use in realm resolution provides for convenience but at the 
risk that your clients

can be redirected to a realm that you do not control.


You can do the same with DNS poisoning, if you do not trust DNS any name
resolution becomes "insecure".
Isn't "validation" all about verifying the KDC is one we can really
trust by using a trusted secret ?
If the host name resolves to a different IP address, the authentication 
will fail.


Second, any domain_realm mapping for your domain .foo.com is going to 
override the use
of DNS lookups.  That is because local configuration data is considered 
to be trustworthy

whereas DNS lookups are not.


How is local configuration data trustworthy given that to resolve names
to IPs we still rely on DNS ? Or do you also rely on /etc/hosts for most
of the data ?
If the host name resolves to a different IP address, the authentication 
will fail.


The safe way to add DNS TXT records back into the equation would be to 
add the DNS TXT

lookup after the referrals request fails.


Do we have information on which clients support referrals ?
And are they implemented in MIT KDC (and how) ?

Heimdal, MIT, and Microsoft support referrals as implemented in Windows 
Active Directory. 
The IETF Kerberos working group is still working on an RFC for referrals.


http://www.ietf.org/internet-drafts/draft-ietf-krb-wg-kerberos-referrals-10.txt

Jeffrey Altman



smime.p7s
Description: S/MIME Cryptographic Signature

Kerberos mailing list   Kerberos@mit.edu
https://mailman.mit.edu/mailman/listinfo/kerberos


Re: Question about dns_lookup_realm and domain_realm

2008-06-27 Thread Ken Raeburn
On Jun 27, 2008, at 11:17, Simo Sorce wrote:
> this statements is interesting, how are TXT records "insecure" ?

If a forged TXT RR is received, the client may be told the server is  
in a different realm.  That realm may have been compromised by an  
attacker, and cross-realm authentication to it may be possible  
(especially if and when we get something PKINIT-like deployed).  So  
the client can "successfully" authenticate to host/[EMAIL PROTECTED] 
, and never know that that's not the principal it should be  
authenticating to for server.foo.com.

> Isn't "validation" all about verifying the KDC is one we can really
> trust by using a trusted secret ?

Cross-realm authentication and the possibility of compromised  
"neighbor" realms makes it much more complicated.

> How is local configuration data trustworthy given that to resolve  
> names
> to IPs we still rely on DNS ?

Trusting address records from DNS, but not trusting DNS at all for  
authentication purposes, would mean the attacker could get the client  
to connect to server.black-hats.tld, but it would try authenticating  
to the originally intended service principal; since the black hats  
don't have the service key, it would fail, and the client should  
disconnect.  It's a denial of service, but not a transparent spoofing  
of the service.

> Do we have information on which clients support referrals ?

Current Microsoft and MIT clients do, I wouldn't be surprised if  
Heimdal does as well.

> And are they implemented in MIT KDC (and how) ?

Not yet.  A basic implementation (using the domain_realm mapping from  
the KDC's config files) is currently on my plate.

Ken

Kerberos mailing list   Kerberos@mit.edu
https://mailman.mit.edu/mailman/listinfo/kerberos


Re: Question about dns_lookup_realm and domain_realm

2008-06-27 Thread Simo Sorce
On Fri, 2008-06-27 at 01:57 -0400, Jeffrey Altman wrote:
> Jos Backus wrote:
> > On Fri, Jun 27, 2008 at 12:52:49AM -0400, Jeffrey Altman wrote:
> >> This behavior was most likely broken when the referrals code was added. 
> >
> > So it's a regression. Until this is fixed properly (which I don't claim my
> > patch does :-) ) I'm possibly need of a workaround. Do you see anything 
> > wrong
> > with the patch as such?

> There are several issues here.  First, DNS TXT records are known to be 
> insecure.

Jeff,
this statements is interesting, how are TXT records "insecure" ?

>   Turning
> them on for use in realm resolution provides for convenience but at the 
> risk that your clients
> can be redirected to a realm that you do not control.

You can do the same with DNS poisoning, if you do not trust DNS any name
resolution becomes "insecure".
Isn't "validation" all about verifying the KDC is one we can really
trust by using a trusted secret ?

> Second, any domain_realm mapping for your domain .foo.com is going to 
> override the use
> of DNS lookups.  That is because local configuration data is considered 
> to be trustworthy
> whereas DNS lookups are not.

How is local configuration data trustworthy given that to resolve names
to IPs we still rely on DNS ? Or do you also rely on /etc/hosts for most
of the data ?

> The safe way to add DNS TXT records back into the equation would be to 
> add the DNS TXT
> lookup after the referrals request fails.

Do we have information on which clients support referrals ?
And are they implemented in MIT KDC (and how) ?

thanks,
Simo.

-- 
Simo Sorce * Red Hat, Inc * New York


Kerberos mailing list   Kerberos@mit.edu
https://mailman.mit.edu/mailman/listinfo/kerberos


Re: guidance

2008-06-27 Thread Kevin Coffman
Are you aware that there are two different flavors of pkinit?  There
is the original protocol deployed by Microsoft in Windows 2000
(sometimes referred to as the "Draft 9 version" because it was
basically the version defined by draft 9 of the RFC) and then the
finalized RFC version (which was something like draft number 24).

Do you know which version your client uses?  The code in MIT 1.6.3
supports both versions of the protocol.  It would be up to your client
to make sure that it correctly identifies the protocol version it is
using.  (There are different preauth padata types for each version.)

#define KRB5_PADATA_PK_AS_REQ_OLD   14 /* PKINIT */
#define KRB5_PADATA_PK_AS_REP_OLD   15 /* PKINIT */
#define KRB5_PADATA_PK_AS_REQ   16 /* PKINIT */
#define KRB5_PADATA_PK_AS_REP   17 /* PKINIT */

Beyond that, you would probably need to compile the KDC code to
support debugging and trace through to find the portion of the
client's request that the server code does not like.  You might start
looking at the code in src/lib/krb5/asn.1/asn1_k_decode.c.

K.C.

On Fri, Jun 27, 2008 at 8:42 AM, naveen.bn <[EMAIL PROTECTED]> wrote:
>
> Hi Kevin,
>
> I am facing a problem and would like to get suggestion from you regarding it
> .
>
> My seniors had come up with a kerberos client which took the reference from
> krb5-1.2.2, which was with out PKINIT support and they
> had added the PKINIT support for it.  I have no contact with them , I have
> no idea what server they had used.
> But, now that the  krb5-1.6.3 supports PKINIT, I am trying to use it as
> Server .  My client works without PKINIT, but with PKINIT
> support the server (krb5-1.6.3)  is not able to decode AS_REQ  packet and
> the kdc log says
> preauth (pkinit) verify failure: ASN.1 identifier doesn't match expected
> value.
>
> I tested the AS_REQ with the tool dumpasn1.c, I found no problem in pkinit
> asn1 dump.
>
> Kindly help me in solving this problem
> Thank you
>
> naveen
>
>
>
>
>
>
> This e-mail contains PRIVILEGED AND CONFIDENTIAL INFORMATION intended solely
> for the use of the addressee(s). If you are not the intended recipient,
> please notify the sender by e-mail and delete the original message.Global
> Edge Software Ltd has taken every reasonable precaution to minimize this
> risk, but is not liable for any damage you may sustain as a result of any
> virus in this e-mail. You should carry out your own virus checks before
> opening the e-mail or attachment. Global Edge Software Ltd reserves the
> right to monitor and review the content of all messages sent to or from this
> e-mail address
>
> This e-mail contains PRIVILEGED AND CONFIDENTIAL INFORMATION intended solely
> for the use of the addressee(s). If you are not the intended recipient,
> please notify the sender by e-mail and delete the original message.Global
> Edge Software Ltd has taken every reasonable precaution to minimize this
> risk, but is not liable for any damage you may sustain as a result of any
> virus in this e-mail. You should carry out your own virus checks before
> opening the e-mail or attachment. Global Edge Software Ltd reserves the
> right to monitor and review the content of all messages sent to or from this
> e-mail address
>
>

Kerberos mailing list   Kerberos@mit.edu
https://mailman.mit.edu/mailman/listinfo/kerberos


guidance

2008-06-27 Thread naveen.bn


Hi Kevin,

I am facing a problem and would like to get suggestion from you regarding it .

My seniors had come up with a kerberos client which took the reference from krb5-1.2.2, which was with out PKINIT support and they 

had added the PKINIT support for it.  I have no contact with them , I have no idea what server they had used.  

But, now that the  krb5-1.6.3 supports PKINIT, I am trying to use it as Server .  My client works without PKINIT, but with PKINIT 

support the server (krb5-1.6.3)  is not able to decode AS_REQ  packet and the kdc log says 


preauth (pkinit) verify failure: ASN.1 identifier doesn't match expected value.

I tested the AS_REQ with the tool dumpasn1.c, I found no problem in pkinit asn1 
dump.

Kindly help me in solving this problem 


Thank you

naveen





This e-mail contains PRIVILEGED AND CONFIDENTIAL INFORMATION intended solely 
for the use of the addressee(s). If you are not the intended recipient, please 
notify the sender by e-mail and delete the original message.Global Edge 
Software Ltd has taken every reasonable precaution to minimize this risk, but 
is not liable for any damage you may sustain as a result of any virus in this 
e-mail. You should carry out your own virus checks before opening the e-mail or 
attachment. Global Edge Software Ltd reserves the right to monitor and review 
the content of all messages sent to or from this e-mail address

Kerberos mailing list   Kerberos@mit.edu
https://mailman.mit.edu/mailman/listinfo/kerberos


Re: Question about dns_lookup_realm and domain_realm

2008-06-27 Thread Jeffrey Altman

Jos Backus wrote:

On Fri, Jun 27, 2008 at 01:57:37AM -0400, Jeffrey Altman wrote:
There are several issues here.  First, DNS TXT records are known to be 
insecure.  Turning
them on for use in realm resolution provides for convenience but at the 
risk that your clients

can be redirected to a realm that you do not control.
 
Understood.


Second, any domain_realm mapping for your domain .foo.com is going to 
override the use
of DNS lookups.  That is because local configuration data is considered 
to be trustworthy

whereas DNS lookups are not.
 
That's something my patch changes as it performs the DNS lookup first (when

configured).
Which in turn would disable Kerberos referrals.  


In the case of two realms, PROD.FOO.COM and DEV.FOO.COM some of your 
hosts are
in one and some are in the other.   By default you want PROD.FOO.COM to 
be used.
However, for specific hosts you want DEV.FOO.COM.Using the config 
file you would

specify

[domain_realm]
  devhost1.foo.com = DEV.FOO.COM
  .foo.com = PROD.FOO.COM


Yup, tried that, works, but doesn't scale well.
There is a serious need for the zero configuration solution for Kerberos 
deployments.
Of course, DNS is insecure so relying on DNS to boot strap your 
authentication system
is undesirable.  That is not to say it has not been used but only 
because there have

been no other choices.


If you want to rely on DNS TXT records you have to make sure that there 
are no mappings

in the config file.  Then you would create records for

  _kerberos.devhost1.foo.com IN TXT DEV.FOO.COM
  _kerberos.foo.com IN TXT PROD.FOO.COM


Okay. We have the former (obviously) but not the latter. I can add that.

Because DNS TXT records are insecure and there is a need to be able to 
provide for centralized
configuration data Microsoft created the Kerberos referrals mechanism.  
Using referrals a client
asks the KDC belonging to the TGT realm for a referral to the correct 
realm for the desired
service principal.  Referrals are used whenever there is not a local 
[domain_realm] mapping.
 
So this implies two-way trust and communication, yes? I wonder if this will

require network/ACL changes.
For referrals to work the user must have already obtained a TGT.  If you 
are trying to decide
which identity a user should obtain a credential for based upon the host 
that the user is going
to communicate with, that is not something that will be solved by 
referrals. 

To be honest, I don't think it will be solved by domain_realm mappings 
whether stored

locally or in DNS.


The safe way to add DNS TXT records back into the equation would be to 
add the DNS TXT

lookup after the referrals request fails.


ISTR that's where krb5_get_fallback_host_realm() is called, from a comment in
the code. Now it's clear why although I still don't quite grok the referral
mechanism. Time to study the documentation.

Thanks for the critique and helpful information, Jeffrey.

  

No problem.



smime.p7s
Description: S/MIME Cryptographic Signature

Kerberos mailing list   Kerberos@mit.edu
https://mailman.mit.edu/mailman/listinfo/kerberos