Re: [Syslog] Fingerprint/handshake
"Joseph Salowey (jsalowey)" <jsalowey@cisco.com> Thu, 29 May 2008 00:31 UTC
Return-Path: <syslog-bounces@ietf.org>
X-Original-To: syslog-archive@megatron.ietf.org
Delivered-To: ietfarch-syslog-archive@core3.amsl.com
Received: from [127.0.0.1] (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 383A43A6A50; Wed, 28 May 2008 17:31:50 -0700 (PDT)
X-Original-To: syslog@core3.amsl.com
Delivered-To: syslog@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id EDEA73A6A8C for <syslog@core3.amsl.com>; Wed, 28 May 2008 17:31:48 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.599
X-Spam-Level:
X-Spam-Status: No, score=-6.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id BUBS3Y2FUq0R for <syslog@core3.amsl.com>; Wed, 28 May 2008 17:31:46 -0700 (PDT)
Received: from sj-iport-6.cisco.com (sj-iport-6.cisco.com [171.71.176.117]) by core3.amsl.com (Postfix) with ESMTP id A83AF28C149 for <syslog@ietf.org>; Wed, 28 May 2008 17:30:45 -0700 (PDT)
X-IronPort-AV: E=Sophos;i="4.27,558,1204531200"; d="scan'208";a="105275231"
Received: from sj-dkim-3.cisco.com ([171.71.179.195]) by sj-iport-6.cisco.com with ESMTP; 28 May 2008 17:30:55 -0700
Received: from sj-core-1.cisco.com (sj-core-1.cisco.com [171.71.177.237]) by sj-dkim-3.cisco.com (8.12.11/8.12.11) with ESMTP id m4T0UtHT030993; Wed, 28 May 2008 17:30:55 -0700
Received: from xbh-sjc-211.amer.cisco.com (xbh-sjc-211.cisco.com [171.70.151.144]) by sj-core-1.cisco.com (8.13.8/8.13.8) with ESMTP id m4T0UtdC022486; Thu, 29 May 2008 00:30:55 GMT
Received: from xmb-sjc-225.amer.cisco.com ([128.107.191.38]) by xbh-sjc-211.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.1830); Wed, 28 May 2008 17:30:55 -0700
X-MimeOLE: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Date: Wed, 28 May 2008 17:31:41 -0700
Message-ID: <AC1CFD94F59A264488DC2BEC3E890DE505E7E825@xmb-sjc-225.amer.cisco.com>
In-Reply-To: <577465F99B41C842AAFBE9ED71E70ABA309090@grfint2.intern.adiscon.com>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [Syslog] Fingerprint/handshake
Thread-Index: Aci597ZxZLhWgaMcSke8NLzWgHaUOAABInCQAT9t6xAAii+fYA==
References: <003901c8b9f7$b671959d$060013ac@intern.adiscon.com> <AC1CFD94F59A264488DC2BEC3E890DE505DFD8E5@xmb-sjc-225.amer.cisco.com> <577465F99B41C842AAFBE9ED71E70ABA309090@grfint2.intern.adiscon.com>
From: "Joseph Salowey (jsalowey)" <jsalowey@cisco.com>
To: Rainer Gerhards <rgerhards@hq.adiscon.com>, syslog@ietf.org
X-OriginalArrivalTime: 29 May 2008 00:30:55.0113 (UTC) FILETIME=[41BF4790:01C8C123]
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; l=4090; t=1212021055; x=1212885055; c=relaxed/simple; s=sjdkim3002; h=Content-Type:From:Subject:Content-Transfer-Encoding:MIME-Version; d=cisco.com; i=jsalowey@cisco.com; z=From:=20=22Joseph=20Salowey=20(jsalowey)=22=20<jsalowey@ci sco.com> |Subject:=20RE=3A=20[Syslog]=20Fingerprint/handshake |Sender:=20; bh=TK+uPQFiOBlzyT5hvr4T+VoTYwmU17vOA5DIDDr2ZOo=; b=AJSG8D2jrXxBxLzIggNLI68CFEWJdeOk9Bp0XKJyV4iHL9CN1DfrghSefP DziwJvU8A+BgoLx6zry8XT9n5YVIrcKpvvhGn2aeGy8TfkDKUey7C3JZEiUR 7DJQribA5B;
Authentication-Results: sj-dkim-3; header.From=jsalowey@cisco.com; dkim=pass ( sig from cisco.com/sjdkim3002 verified; );
Subject: Re: [Syslog] Fingerprint/handshake
X-BeenThere: syslog@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Security Issues in Network Event Logging <syslog.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/syslog>, <mailto:syslog-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/pipermail/syslog>
List-Post: <mailto:syslog@ietf.org>
List-Help: <mailto:syslog-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/syslog>, <mailto:syslog-request@ietf.org?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: syslog-bounces@ietf.org
Errors-To: syslog-bounces@ietf.org
Hi Rainer, A TLS alert could be sent by the server indicating the error condition. Would this help? Joe > -----Original Message----- > From: Rainer Gerhards [mailto:rgerhards@hq.adiscon.com] > Sent: Sunday, May 25, 2008 11:46 PM > To: Joseph Salowey (jsalowey); syslog@ietf.org > Subject: RE: [Syslog] Fingerprint/handshake > > Hi Joe, > > inline > > > -----Original Message----- > > From: Joseph Salowey (jsalowey) [mailto:jsalowey@cisco.com] > > Sent: Friday, May 23, 2008 8:21 PM > > To: Rainer Gerhards; syslog@ietf.org > > Subject: RE: [Syslog] Fingerprint/handshake > > > > The fingerprint check should be done where certificate validation > would > > be done. This is typically done within the handshake itself, > > I agree to this, but have found this to be problematic with > some TLS libraries. Of course, that doesn't mean the standard > needs to change, but I would still like to provide some > implementation feedback. > > With GnuTLS, for example, you can do the final authentication > only after the handshake [1]. With NSS, it can be done during > the handshake. As of my understanding, OpenSSL does support > it after the handshake only (but I have not actually used > OpenSSL, this is based on my understanding after reading > doc). This brings me to the conclusion that, at least in some > environments I may be forced to delay the authentication > check to after the handshake. > [Joe] Its been a while since I used OpenSSL, but if I remember correctly they do have hooks in the certificate validation code. > > because if > > the validation fails you do not want to send or receive data on the > > connection. I suppose you could implement the check after the > > handshake, but you need to make sure you do not send or receive > > application before successful validation has occurred. > > This is where it gets really problematic. We get into a race > condition here. Remember that syslog is simplex and works > without any app-level acks (in -transport-tls). > > If the client authenticates the server, everything is fine. > Authentication fails, client never sends data and the session > is terminated. Everything is fine. > > But if the server authenticates the client (and > authentication fails), the client will still receive the > server's TLS Finished message. After that, the server drop > connection. HOWEVER, the client blindly sending data doesn't > know this until at least the second message sent (due to > local buffering at the client). *After* some messages, the > client gets a connection broken indication, but at this point > it is too late to react intelligently. In essence, those > messages sent after the initial handshake are lost. Even > worse, the client "gets the impression" that the remote > server is accepting its connection requests. This is because > there is no failure indication after the handshake. This can > lead to more frequent retries. > > This problem is rooted in the underlying plain tcp transport. > I have described it in [2]. It's inherent to all plain tcp > syslog implementations. RFC3195 is a cure for it. With TLS > auth, it just gets to a new magnitude as it will now happen > every time during a failed authentication. > > This is not a theoretic issue but one I can reliable > reproduce in my lab with actual software. Actually, I am > unable to NOT reproduce it - there is no work-around for this > problem (at least I have found none). > > Again, I am not trying to say we need to change anything. I > am providing real world feedback. It may be worth, however, > adding a note or two to the I-D describing these issues. > > Rainer > > [1] > http://lists.gnu.org/archive/html/help-gnutls/2008-05/msg00017.html > (full conversation, long) > [2] > http://blog.gerhards.net/2008/04/on-unreliability-of-plain-tcp > -syslog.ht > ml > > _______________________________________________ Syslog mailing list Syslog@ietf.org https://www.ietf.org/mailman/listinfo/syslog
- [Syslog] Fingerprint/handshake Rainer Gerhards
- Re: [Syslog] Fingerprint/handshake Joseph Salowey (jsalowey)
- Re: [Syslog] Fingerprint/handshake Rainer Gerhards
- Re: [Syslog] Fingerprint/handshake Joseph Salowey (jsalowey)
- Re: [Syslog] Fingerprint/handshake Rainer Gerhards
- Re: [Syslog] Fingerprint/handshake Balazs Scheidler
- Re: [Syslog] Fingerprint/handshake Rainer Gerhards
- Re: [Syslog] Fingerprint/handshake tom.petch
- Re: [Syslog] Fingerprint/handshake Balazs Scheidler