<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Painless Security &#187; Standards</title>
	<atom:link href="http://www.painless-security.com/blog/category/standars/feed" rel="self" type="application/rss+xml" />
	<link>http://www.painless-security.com/blog</link>
	<description>Sam Hartman on Security for Real-World Users</description>
	<lastBuildDate>Tue, 01 Jun 2010 08:18:07 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Internet2 Moonshot Briefing Paper</title>
		<link>http://www.painless-security.com/blog/2010/05/18/moonshot-i2</link>
		<comments>http://www.painless-security.com/blog/2010/05/18/moonshot-i2#comments</comments>
		<pubDate>Tue, 18 May 2010 16:14:40 +0000</pubDate>
		<dc:creator>hartmans</dc:creator>
				<category><![CDATA[Moonshot]]></category>
		<category><![CDATA[Standards]]></category>

		<guid isPermaLink="false">http://www.painless-security.com/blog/?p=62</guid>
		<description><![CDATA[Please see here for a briefing paper including snapshots of all our specs as well as an updated use case paper.  This paper was presented at the end of April at the Internet2 Spring Members meeting. This is a great snapshot of Project Moonshot at the end of last month.
]]></description>
			<content:encoded><![CDATA[<p>Please see <a href="http://www.project-moonshot.org/sites/default/files/moonshot%20briefing-i2.pdf">here</a> for a briefing paper including snapshots of all our specs as well as an updated use case paper.  This paper was presented at the end of April at the Internet2 Spring Members meeting. This is a great snapshot of Project Moonshot at the end of last month.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.painless-security.com/blog/2010/05/18/moonshot-i2/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Two SASL mechanisms for Federated Authentication</title>
		<link>http://www.painless-security.com/blog/2010/03/25/two-sasl-mechanisms-for-federated-authentication</link>
		<comments>http://www.painless-security.com/blog/2010/03/25/two-sasl-mechanisms-for-federated-authentication#comments</comments>
		<pubDate>Thu, 25 Mar 2010 22:30:13 +0000</pubDate>
		<dc:creator>hartmans</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[Moonshot]]></category>
		<category><![CDATA[Standards]]></category>

		<guid isPermaLink="false">http://www.painless-security.com/blog/?p=52</guid>
		<description><![CDATA[There are two other approaches that are likely to come up tonight; see this message for details.  These mechanisms require significantly lower infrastructure than Moonshot, but do not provide all the benefits.  One question is whether there is a continuum of use-cases depending on what level of investment in client changes are made.
]]></description>
			<content:encoded><![CDATA[<p>There are two other approaches that are likely to come up tonight; see <a href="https://www.jiscmail.ac.uk/cgi-bin/webadmin?A2=MOONSHOT-COMMUNITY;b66a3e8c.1003">this message</a> for details.  These mechanisms require significantly lower infrastructure than Moonshot, but do not provide all the benefits.  One question is whether there is a continuum of use-cases depending on what level of investment in client changes are made.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.painless-security.com/blog/2010/03/25/two-sasl-mechanisms-for-federated-authentication/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Federated Authentication discussion tonight at 9 PM Pacific</title>
		<link>http://www.painless-security.com/blog/2010/03/25/moonshot3</link>
		<comments>http://www.painless-security.com/blog/2010/03/25/moonshot3#comments</comments>
		<pubDate>Thu, 25 Mar 2010 18:03:05 +0000</pubDate>
		<dc:creator>hartmans</dc:creator>
				<category><![CDATA[Debian]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[Standards]]></category>

		<guid isPermaLink="false">http://www.painless-security.com/blog/?p=47</guid>
		<description><![CDATA[The federated authentication bar BOF will be held tonight at 9 PM US Pacific time in the Manhattan room at the IETF 77 meeting..  Here is information for participation.
Reading List

 Use case/briefing paper

EAP GSS-API Mechanism draft 

RADIUS SAML attributes draft

sstc-saml-binding-aaa-draft-00

sstc-saml-eapgss-sso-draft-00

Feasibility analysis of the approach

Brief overview


Remote Participation

 Join our audio stream during the session

Join our [...]]]></description>
			<content:encoded><![CDATA[<p>The federated authentication bar BOF will be held tonight at 9 PM US Pacific time in the Manhattan room at the IETF 77 meeting..  Here is information for participation.</p>
<h3>Reading List</h3>
<ul>
<li> <a href='http://www.painless-security.com/wp/wp-content/uploads/2010/03/moonshot-ietf-77-briefing-paper.pdf'>Use case/briefing paper</a>
</li>
<li><a href="http://tools.ietf.org/html/draft-howlett-eap-gss">EAP GSS-API Mechanism draft </a>
</li>
<li><a href='http://www.painless-security.com/wp/wp-content/uploads/2010/03/draft-howlett-radius-saml-attr-00.txt'>RADIUS SAML attributes draft</a>
</li>
<li><a href='http://www.painless-security.com/wp/wp-content/uploads/2010/03/sstc-saml-binding-aaa-draft-00.pdf'>sstc-saml-binding-aaa-draft-00</a>
</li>
<li><a href='http://www.painless-security.com/wp/wp-content/uploads/2010/03/sstc-saml-eapgss-sso-draft-00.pdf'>sstc-saml-eapgss-sso-draft-00</a>
</li>
<li><a href="http://www.painless-security.com/wp/wp-content/uploads/2010/02/moonshot-feasibility-analysis.pdf">Feasibility analysis of the approach</a>
</li>
<li><a href="http://www.painless-security.com/blog/2010/02/12/moonshot1">Brief overview</a>
</li>
</ul>
<h3>Remote Participation</h3>
<ul>
<li> Join our <a href="http://videolab.uoregon.edu/events/ietf/ietf776.m3u">audio stream</a> during the session
</li>
<li>Join our jabber chat room at moonshot@conference.jabber.postel.org
</li>
</ul>
<li>Join our <a href="http://jiscmail.ac.uk/cgi-bin/webadmin?LIST=MOONSHOT-COMMUNITY">mailing list</a></li>
]]></content:encoded>
			<wfw:commentRss>http://www.painless-security.com/blog/2010/03/25/moonshot3/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
<enclosure url="http://videolab.uoregon.edu/events/ietf/ietf776.m3u" length="45" type="audio/x-mpegurl" />
		</item>
		<item>
		<title>Moonshot Bar BOF Thursday March 20 at 9 PM; specs available</title>
		<link>http://www.painless-security.com/blog/2010/03/11/moonshot-bar-bof-thursday-march-20-at-9-pm-specs-available</link>
		<comments>http://www.painless-security.com/blog/2010/03/11/moonshot-bar-bof-thursday-march-20-at-9-pm-specs-available#comments</comments>
		<pubDate>Thu, 11 Mar 2010 19:38:28 +0000</pubDate>
		<dc:creator>hartmans</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[Moonshot]]></category>
		<category><![CDATA[Standards]]></category>

		<guid isPermaLink="false">http://www.painless-security.com/blog/?p=45</guid>
		<description><![CDATA[At IETF 77, we&#8217;re having a get together to discuss federated authentication beyond the web.  The meeting will be in the Mahattan room starting at 9 PM US Pacific time.  I think audio streaming will be available; I will post a link closer to the meeting time.
In the last entry, I mentioned that [...]]]></description>
			<content:encoded><![CDATA[<p>At <a href="http://www.ietf.org/">IETF 77</a>, we&#8217;re having a get together to discuss <a href="http://www.painless-security.com/blog/2010/02/12/moonshot1">federated authentication</a> beyond the web.  The meeting will be in the Mahattan room starting at 9 PM US Pacific time.  I think audio streaming will be available; I will post a link closer to the meeting time.</p>
<p>In the last entry, I mentioned that a preliminary spec would be available; see <a href="http://tools.ietf.org/html/draft-howlett-eap-gss">the preliminary EAP GSS-API</a> mechanism.  A use case paper and slide set are being reviewed internally and should be ready early next week.  We may even have preliminary versions of the binding between RADIUS and SAML available before IETF.
</p>
<p>There have been a number of great discussions on the moonshot-community list and with others interested in the broader area.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.painless-security.com/blog/2010/03/11/moonshot-bar-bof-thursday-march-20-at-9-pm-specs-available/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Moonshot: Federated Authentication Beyond the Web</title>
		<link>http://www.painless-security.com/blog/2010/02/12/moonshot1</link>
		<comments>http://www.painless-security.com/blog/2010/02/12/moonshot1#comments</comments>
		<pubDate>Fri, 12 Feb 2010 23:25:34 +0000</pubDate>
		<dc:creator>hartmans</dc:creator>
				<category><![CDATA[Moonshot]]></category>
		<category><![CDATA[Standards]]></category>

		<guid isPermaLink="false">http://www.painless-security.com/blog/?p=43</guid>
		<description><![CDATA[Recently, I&#8217;ve been working on an exciting project with JaNet(UK) on a project to bring federated authentication to non-web applications.  I&#8217;ve worked on authentication projects a lot, although this is the first federation project I&#8217;ve worked on.  The big difference appears to be an emphasis on credential independence: the subject (person trying to [...]]]></description>
			<content:encoded><![CDATA[<p>Recently, I&#8217;ve been working on an exciting project with <a href="http://www.ja.net">JaNet(UK)</a> on a project to bring federated authentication to non-web applications.  I&#8217;ve worked on authentication projects a lot, although this is the first federation project I&#8217;ve worked on.  The big difference appears to be an emphasis on credential independence: the subject (person trying to authenticate) and service will not share a common credential type.  Within their organization, the subject and their identity provider share a credential.  Then, the federation has some credential mechanism such that the user&#8217;s organization and the service share some (probably completely different) type of credential.  The other emphasis is on providing personalization.  </p>
<p>For web applications, there are a lot of options to achieve this: <a href="http://en.wikipedia.org/wiki/Information_Card">Information Card</a>, <a href="http://en.wikipedia.org/wiki/OpenID">Open ID</a>, <a href="http://en.wikipedia.org/wiki/Security_Assertion_Markup_Language">SAML</a>, and <a href="http://en.wikipedia.org/wiki/OAuth">OAuth</a> all provide solutions in this space.  However there are not good options for non-web applications.  If you out-source your mail and chat infrastructure but want to use your own chat client or IMAP client, then you will not get the same federation benefits you can get with the web.  If you&#8217;re using usernames and passwords and don&#8217;t mind the potential problems with your out-sourcing provider being able to impersonate all your users, you can simply synchronize usernames and passwords.  Within an enterprise, you can do better using Kerberos. JaNet(UK) runs the UK Access Federation, which is a SAML-based web single-sign-on federation.  In order to better meet the needs of their customers they&#8217;d like to expand this offering to non-web applications. This demand is apparently shared across the European academic community.  I suspect there is also some demand in the US academic community and in enterprise situations.  </p>
<p>With the web, it turns out that you have a convenient platform for interactions with the identity provider: you can simply direct a web browser to the identity provider and need not specify the user interaction with the web browser at all. This is seen as a significant branding and usability advantage.  With other environments, it becomes necessary to specify the interaction with the identity provider.  Consider an automated client that wishes to examine a mail box and provide advanced mail sorting or aggregation.  That automated client cannot directly use a web browser. OAuth solves this issue with an enrollment step that does typically involve a web browser that produces a consumer key and an authentication step that does not.  However for non-web clients it seems like avoiding reliance on the browser authentication will be important.  It turns out we already have widely used technologies that do this: <a href="http://en.wikipedia.org/wiki/Extensible_Authentication_Protocol">the Extensible Authentication Protocol (EAP)</a> mediates the interaction between a subject and identity provider for obtaining network access. It also turns out that we have fairly good technologies for abstract security services within non-web applications: thanks to Kerberos and Active Director, many application protocols and a fair number of applications support GSS-API.  JaNet(UK) proposes to combine these technologies with SAML in order to produce a solution for federation beyond the web.  </p>
<p>I prepared a <a href='http://www.painless-security.com/wp/wp-content/uploads/2010/02/moonshot-feasibility-analysis.pdf'>feasibility analysis</a> of this proposal.  At a technical level, the proposal is sound.  There&#8217;s a lot of standardization and implementation work, but there appears to be sufficient motivation to form the seeds of a standards activity and put together a proof-of-concept implementation. However, the big question is &#8220;Will anyone use it?&#8221;  In particular, to be useful beyond fairly small communities, support from client vendors and application framework vendors will be needed.  It&#8217;s taken massive money and around 20 years to get Kerberos support to a point where it is effective within an enterprise.  Moonshot can leverage that work to a large extent, but moonshot may also have greater usability and penetration goals.  </p>
<p>It&#8217;s interesting that I&#8217;m advocating EAP for application layer authentication.  When I was a Security AD, I made a <a href="http://www.ietf.org/proceedings/62/isms.html">strong statement</a> that EAP must only be used for network access.  I&#8217;ve been fairly consistent about that since then.  I think there are two huge problems with using EAP for application authentication.  The first is that EAP only authenticates the home realm; it does not authenticate what service you&#8217;re going to.  So you might try to connect to your e-mail and end up giving something access to your stored files and pictures instead.  That is, EAP has a phishing exposure in the federated context.  If the only thing you can get by using EAP is network access, that exposure is only moderate.  However in a fully federated environment that is a huge exposure.  Moonshot will address this problem by using EAP channel binding and by doing the necessary work to make that a viable solution.  The second concern is that interoperability is reduced when you have multiple authentication approaches for the same problem.  If EAP is going to be used for application authentication, we need to understand how it relates to the rest of the application authentication metasystem.  Moonshot proposes such a relationship, addressing my objection. </p>
<p>Moonshot is designed to work well with the objectives of the <a href="http://en.wikipedia.org/wiki/Identity_Metasystem">Identity Metasystem</a> and its laws of identity.  It uses a different technology, but does have an approach for dealing with claims-based identity and hopefully will have a user experience very similar to the identity metasystem.  It uses a different underlying technology.  However one of the main beliefs behind the identity metasystem is that is the user experience and universal interoperability that is important, not any specific technology.  In its domain, the technologies Moonshot selects will be a better fit than a web services stack. </p>
<p>It&#8217;s strange not to be working on Kerberos; Moonshot uses some Kerberos technology, but its core is definitely not today&#8217;s Kerberos.  In some ways it is fun to be working on something new.  There&#8217;s one aspect of Kerberos I really miss: Moonshot has nothing like tickets.  There&#8217;s no place to remember state or exchange to directly involve the client in what the server learns.  My analysis talks about ways to make Moonshot more like Kerberos; there are some potential advantages, but so far, the tradeoffs do not justify changes. </p>
<p>We&#8217;re hoping to have a bar BOF at IETF 77 and a BOF in the summer at IETF 78. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.painless-security.com/blog/2010/02/12/moonshot1/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Lost in security</title>
		<link>http://www.painless-security.com/blog/2008/03/05/lost</link>
		<comments>http://www.painless-security.com/blog/2008/03/05/lost#comments</comments>
		<pubDate>Thu, 06 Mar 2008 03:04:48 +0000</pubDate>
		<dc:creator>hartmans</dc:creator>
				<category><![CDATA[Standards]]></category>

		<guid isPermaLink="false">http://www.painless-security.com/blog/2008/03/lost/</guid>
		<description><![CDATA[One of the last documents I&#8217;m reviewing before my term on the IESG ends is LOST, a protocol for locating the right service center to handle 9-1-1 calls.  It illustrates one of the easiest security mistakes to make: insecure binding.  Here&#8217;s how it works.
  You know what domain you are in.  [...]]]></description>
			<content:encoded><![CDATA[<p>One of the last documents I&#8217;m reviewing before my term on the IESG ends is <a href="http://tools.ietf.org/internet-drafts/draft-ietf-ecrit-lost">LOST</a>, a protocol for locating the right service center to handle 9-1-1 calls.  It illustrates one of the easiest security mistakes to make: insecure binding.  Here&#8217;s how it works.</p>
<p>  You know what domain you are in.  You look up using  <a href="http://www.ietf.org/rfc/rfc4848.txt">U-NAPTR</a> to convert that domain and the label &#8220;lost&#8221; into a URI.  You expect the URI to be an HTTPS URI and go to the LOST server at that address.
</p>
<p>Finding the right server is important.  An attacker could cause your 9-1-1 call to be intercepted by the attacker, or could misdirect critical calls.  So, how do you  know you have the right server?  The current spec says you follow the rules in <a href="http://www.ietf.org/rfc/rfc2818.txt">RFC 2818</a>.  You take the hostname from the URI and expect it to be in a certificate that you get from the server you talk to.  That certificate  is signed by someone you trust.  So, you have a binding from the hostname to the public key of the server you&#8217;re talking to.
</p>
<p>There&#8217;s one big problem.  How do you know you got the right hostname?  You just got this URI out of DNS.  There&#8217;s dnssec, but you&#8217;re not actually using that today.    Currently in the spec, you have no way to actually secure that the DNS information you got is the one you expect.
</p>
<p>  The problem is one of binding.  For authentication to be secure, you need to establish a binding from some name that you trust to the party you&#8217;re talking to.  That binding needs to be trusted.  With LOST, the name that you have is your domain name.  However, today, there is no way to trust the binding of that name to the result from DNS, so you don&#8217;t actually have a way to authenticate that you are talking to the right party.
</p>
<p>Problems can get even worse in situations where you don&#8217;t have a name you trust.  Let&#8217;s say you have some GUI that allows you to pick the service you want to talk to in a peer-to-peer environment.  The services are described by user friendly strings.  You pick &#8220;Bob&#8217;s computer&#8221; from the list.  How can you trust that name?  What stops anyone from going into their computer and renaming it &#8220;Bob&#8217;s computer?&#8221;  For systems like the web, we can come close to solving the trustable name problem because  entities can prove to companies like Verisign   that they are permitted to use the domain name they are using.  However in systems where people get to choose their own name and where there aren&#8217;t good ways to figure out if the person who chose the name is reasonably allowed to use that name, it becomes difficult or impossible.
</p>
<p>All hope of security is not lost in this sort of situation, but there are attacks you cannot protect against.  You can do things like make sure it is the same &#8220;Bob&#8217;s computer&#8221; that you&#8217;ve talked to in the past.  Assuming of course that Bob never needs to reinstall or replace his computer.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.painless-security.com/blog/2008/03/05/lost/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ietf 70 in Vancouver</title>
		<link>http://www.painless-security.com/blog/2007/12/12/ietf70</link>
		<comments>http://www.painless-security.com/blog/2007/12/12/ietf70#comments</comments>
		<pubDate>Wed, 12 Dec 2007 16:48:32 +0000</pubDate>
		<dc:creator>hartmans</dc:creator>
				<category><![CDATA[Phishing]]></category>
		<category><![CDATA[Standards]]></category>

		<guid isPermaLink="false">http://www.painless-security.com/blog/2007/12/ietf70/</guid>
		<description><![CDATA[Last week, I attended IETF 70 in Vancouver.  I had hoped to blog during the week, but  the schedule was sufficiently intense that I did not find the time.  However, I think that there are a few points that are worth summarizing.

At the TLS session, the topic of using EAP authentication in [...]]]></description>
			<content:encoded><![CDATA[<p>Last week, I attended <a href="http://www.ietf.org/">IETF 70</a> in Vancouver.  I had hoped to blog during the week, but  the schedule was sufficiently intense that I did not find the time.  However, I think that there are a few points that are worth summarizing.</p>
<p>
At the <a href="http://tools.ietf.org/wg/tls">TLS</a> session, the topic of <a href="http://tools.ietf.org/id/draft-nir-tls-eap">using <i>EAP</i> authentication in TLS </a> was discussed.  The IDEA is that EAP can be used within a TLS session  for authentication either instead of or in addition to certificates.  This would allow one-time passwords, <a href="http://en.wikipedia.org/wiki/Subscriber_Identity_Module">SIM</a> or other authentication methods to be used in TLS.  In principle this could be very useful.  There&#8217;s one significant problem: EAP  has a fairly strict applicability statement which says that EAP should only be used for network access.  There are a lot of reasons you might want this limitation.  It&#8217;s useful to be able to distinguish EAP from <i>GSS-API</i> and <i>SASL</i>.  When should one framework be used and when should another framework be used?  Also, EAP is a three-party authentication protocol.  The EAP peer authenticates to an EAP server typically by using a passthrough<br />
authenticator<br />
such as an 802.11 access point.  However, EAP does not typically verify the identity of the passthrough authenticator.  If EAP is only used for network access, this is a manageable risk; Russ Housley argued at the IETF 70 <a href="http://tools.ietf.org/wg/hokey">HOKEY</a> session that for service provider uses of EAP, this may not even be a problem.   However as the applicability expands, the identity of the party actually taking advantage of the authentication becomes more critical.   You don&#8217;t want to give someone access to your mail when you thought you were accessing some wireless network.  I think that this effort has enough support it is more desirable  to figure out how to do it right than to try and stop it.  So, the big question is what is necessary to expand the EAP applicability safely.
</p>
<p>There was a BOF on <a href="http://lists.osafoundation.org/pipermail/ietf-http-auth/2007-December/000499.html">web authentication</a>.  There seems to be general interest in doing the work although the problem is difficult.   I hope to get Nico, Leif and the folks from Mozilla together.
</p>
<p>
The <a href="http://tools.ietf.org/wg/sasl">SASL</a> working group is focusing on a new password mechanism designed to  provide authentication and <a href="http://www.painless-security.com/blog/2007/11/channel-binding/"><i>channel binding</i></a>.  We ran into two challenges.  The first is that channel binding data may sometimes require confidentiality.    Our existing approach for channel binding in SASL does not guarantee that the channel binding provides confidentiality.    It also turns out that it is more complex than I had hoped to provide channel binding in a mechanism that is both a GSS-API mechanism and a SASL mechanism.  For a GSS-API mechanism you want channel bindings to be included as part of the authentication exchange.  However SASL does not take advantage of this but instead uses a wrap token.  Ideally you would not need both facilities.  I&#8217;ll discuss this issue on the list, but I&#8217;m not sure there is a good way around this.
</p>
<p>
<a href="http://tools.ietf.org/wg/hokey">HOKEY</a> focused on the role of AAA proxies and EAP.  <a href="http://www.ietf.org/rfc/rfc3962.txt">RFC 3962</a> describes how we want key management for network access to work.   Ideally keys would be shared by at most three parties.  However real-world networks tend to involve AAA  proxies between providers that also know the keys.  There is a significant debate ongoing about  to what extent we need to provide a solution to work around this problem.  There is no ongoing work to meet this requirement.  The good news is that the difference in consensus seems to be a lot less than I had originally expected.
</p>
<p>
I will speak to the Kerberos activities at IETF in a later entry.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.painless-security.com/blog/2007/12/12/ietf70/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RFC 5056 Published</title>
		<link>http://www.painless-security.com/blog/2007/11/20/channel-binding</link>
		<comments>http://www.painless-security.com/blog/2007/11/20/channel-binding#comments</comments>
		<pubDate>Tue, 20 Nov 2007 22:02:15 +0000</pubDate>
		<dc:creator>hartmans</dc:creator>
				<category><![CDATA[Kerberos]]></category>
		<category><![CDATA[Standards]]></category>

		<guid isPermaLink="false">http://www.painless-security.com/blog/2007/11/channel-binding/</guid>
		<description><![CDATA[!

I wrote about the challenge of securing high-performance connections in NFS.  One of the technologies that will be important to making that working is channel binding.  You perform some application layer authentication and then bind it to a high performance cryptographic channel at a lower layer.  The framework document describing how channel [...]]]></description>
			<content:encoded><![CDATA[<p>!
</p>
<p>I <a href="http://www.painless-security.com/blog/2007/10/nfs-rddp/">wrote</a> about the challenge of securing high-performance connections in NFS.  One of the technologies that will be important to making that working is <i>channel binding</i>.  You perform some application layer authentication and then bind it to a high performance cryptographic channel at a lower layer.  The framework document describing how channel binding works has been <a href="http://www.ietf.org/rfc/rfc5056.txt">published</a>.  </p>
<p> The document describes channel binding as a concept and gives requirements for how to use lower level cryptographic  channels such as <a href="http://en.wikipedia.org/wiki/IPsec">IPsec</a>.  The document doesn&#8217;t define specific details of any given channel but does outline what would need to be done.  Work is on going in the BTNS working group of the IETF to specify this for IPsec.
</p>
<p>
The document goes on to discuss how applications can use these channels.  The SASL working group has defined a binding for <a href="http://tools.ietf.org/internet-drafts/draft-ietf-sasl-gs2-09.txt">GSS-API  </a> binding that supports channel binding.  That has been a good validation of the design.<br />
We will also work on using this in NFS, which should continue to validate the approach.<br />
I&#8217;m very excited at the progress we&#8217;ve made with this concept.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.painless-security.com/blog/2007/11/20/channel-binding/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Performance, Security and NFS</title>
		<link>http://www.painless-security.com/blog/2007/10/17/nfs-rddp</link>
		<comments>http://www.painless-security.com/blog/2007/10/17/nfs-rddp#comments</comments>
		<pubDate>Thu, 18 Oct 2007 04:59:09 +0000</pubDate>
		<dc:creator>hartmans</dc:creator>
				<category><![CDATA[Standards]]></category>

		<guid isPermaLink="false">http://www.painless-security.com/blog/2007/10/nfs-rddp/</guid>
		<description><![CDATA[When I started working on computer security, one of the most common  complaints was that it is hard to get good performance with security enabled.  You don&#8217;t hear that as much today: computers are much faster and hardware acceleration is widely available.    However there are some cases where performance and [...]]]></description>
			<content:encoded><![CDATA[<p>When I started working on computer security, one of the most common  complaints was that it is hard to get good performance with security enabled.  You don&#8217;t hear that as much today: computers are much faster and hardware acceleration is widely available.    However there are some cases where performance and security are still at odds.  The NFS community wants to use <a href="http://www.ietf.org/rfc/rfc4297.txt"><i>Remote Direct Memory Access</i></a> it order to improve <a href="http://tools.ietf.org/internet-drafts/draft-ietf-nfsv4-nfs-rdma-problem-statement.txt">performance</a>.  Current NFS implementations end up needing to copy NFS data multiple times especially in the receiver.  By using RDMA and by offloading TCP to the network interface controller, significant performance advantages can be gained.<br />
However, on the surface this appears to be incompatible with <a href="http://www.ietf.org/rfc/rfc2203.txt">NFS security</a>.    The problem is that in order to construct the security data and perform encryption you typically have to  copy the data or to perform the same sorts of CPU interactions that are involved in copying.  This  can be handled by hardware acceleration in some protocols.  However NFS uses <a href="http://en.wikipedia.org/wiki/GSS-API"><i>GSS-API</i></a> for security.  Few if any hardware devices support accelerated handling for GSS-API.  Also, efficient hardware operations have not been a requirement for the design of gss-API tokens.</p>
<p><a href="http://en.wikipedia.org/wiki/IPsec"><i>IPsec</i></a> seems like a good fit for RDMA security.  Packets can be decrypted before they are passed to the TCP layer.    There is one huge problem.  The sort of infrastructure you need to authenticate IPsec is not what you typically use to authenticate NFS.   IPsec authentication tends to be per-host not per-user.  IPsec doesn&#8217;t have a good way to work well with Kerberos.  (There are a couple of mechanisms but they have non-ideal components.)    One solution would be to have separate authentication at the NFS layer and the IPsec layer.  That  is very problematic because  it increases the cost.  Also, the authentications can become mismatched and that decreases security.  A huge cost is that two security infrastructures are harder to use than one.</p>
<p>The solution is <a href="http://tools.ietf.org/internet-drafts/draft-williams-on-channel-binding.txt"><i>channel binding</i></a>.    You generate a cryptographic name for the IPsec association.  Then, you exchange an integrity protected version of this name over the GSS-API channel.    Both ends of the channel confirm that the cryptographic name actually corresponds to the IPsec association.  One nice thing about this is that the IPsec-level authentication doesn&#8217;t matter.  It is important that both ends are the same, but it is not important to tie them to any real-world subjects.  The down side of this approach is that it does require more complex interactions between  the two layers.  The advantage is that it actually provides security that is relatively easy to use.</p>
<p> Channel binding was designed for the NFS usage situation.  However as <a href="http://blogs.sun.com/nico/entry/phishing_as_a_man_in">Nico discusses</a>, it can also be applied to other situations such as the web.</p>
<p>Unfortunately the NFS specs  being presented for approval side step the problem of security that performs well completely.  I think that&#8217;s going to be a long discussion.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.painless-security.com/blog/2007/10/17/nfs-rddp/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Kerberos and SAML</title>
		<link>http://www.painless-security.com/blog/2007/09/14/kaml</link>
		<comments>http://www.painless-security.com/blog/2007/09/14/kaml#comments</comments>
		<pubDate>Sat, 15 Sep 2007 02:56:36 +0000</pubDate>
		<dc:creator>hartmans</dc:creator>
				<category><![CDATA[Standards]]></category>

		<guid isPermaLink="false">http://www.painless-security.com/blog/2007/09/kaml/</guid>
		<description><![CDATA[One question we often get asked is how do Kerberos and SAML fit
together.  At the IETF 69 in July, we got a group of interested people
together to discuss that question.  Leif Johansson organized an
informal session to scope out the demand for interoperability between Kerberos and SAML.  At that session, we identified three [...]]]></description>
			<content:encoded><![CDATA[<p>One question we often get asked is how do Kerberos and SAML fit<br />
together.  At the IETF 69 in July, we got a group of interested people<br />
together to discuss that question.  Leif Johansson organized an<br />
informal session to scope out the demand for interoperability between Kerberos and SAML.  At that session, we identified three areas where work is needed:</p>
<ol>
<li>Determining level of assurance for Kerberos authentication.  SAML has a rich description of what forms of authentication and what context that authentication is in.  There is a desire to reuse this facility for Kerberos.</li>
<li> Standardized description of authorizations.  Proprietary platforms like Active Directory have platform-specific mechanisms for describing  authorization.  It is hoped that SAML may proved a solution for a standards-based platform-independent way to describe authorization.</li>
<li> If a n application uses the SAML Web SSO profile, it is difficult to get from that profile to Kerberos tickets for use in backend applications.  There is a desire to work  on a standardized solution to this problem.</li>
</ol>
<p>A summary of the meeting is <a href="http://www1.ietf.org/mail-archive/web/kaml/current/msg00002.html">here</a><br />
A <a href="http://www1.ietf.org/mailman/listinfo/kaml">mailing list</a> has been organized to develop these use cases and if there is sufficient interest attempt to form an IETF working group to produce standards in this space.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.painless-security.com/blog/2007/09/14/kaml/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
