[Hipsec] Comments on hiccups draft
Tobias Heer <heer@cs.rwth-aachen.de> Mon, 27 July 2009 14:26 UTC
Return-Path: <heer@informatik.rwth-aachen.de>
X-Original-To: hipsec@core3.amsl.com
Delivered-To: hipsec@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 180DB28C185 for <hipsec@core3.amsl.com>; Mon, 27 Jul 2009 07:26:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.801
X-Spam-Level:
X-Spam-Status: No, score=-4.801 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HELO_EQ_DE=0.35, HELO_MISMATCH_DE=1.448, 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 wHFs5-ebCBIX for <hipsec@core3.amsl.com>; Mon, 27 Jul 2009 07:26:12 -0700 (PDT)
Received: from mta-2.ms.rz.rwth-aachen.de (mta-2.ms.rz.RWTH-Aachen.DE [134.130.7.73]) by core3.amsl.com (Postfix) with ESMTP id DF87628C1E4 for <hipsec@ietf.org>; Mon, 27 Jul 2009 07:26:11 -0700 (PDT)
MIME-version: 1.0
Content-transfer-encoding: 7bit
Content-type: text/plain; charset="US-ASCII"; format="flowed"; delsp="yes"
Received: from ironport-out-1.rz.rwth-aachen.de ([134.130.5.40]) by mta-2.ms.rz.RWTH-Aachen.de (Sun Java(tm) System Messaging Server 6.3-7.04 (built Sep 26 2008)) with ESMTP id <0KNG00KEO2RLZR50@mta-2.ms.rz.RWTH-Aachen.de> for hipsec@ietf.org; Mon, 27 Jul 2009 16:26:09 +0200 (CEST)
X-IronPort-AV: E=Sophos;i="4.43,276,1246831200"; d="scan'208";a="20522195"
Received: from relay-auth-1.ms.rz.rwth-aachen.de (HELO relay-auth-1) ([134.130.7.78]) by ironport-in-1.rz.rwth-aachen.de with ESMTP; Mon, 27 Jul 2009 16:26:09 +0200
Received: from dhcp-11f5.meeting.ietf.org ([unknown] [130.129.17.245]) by relay-auth-1.ms.rz.rwth-aachen.de (Sun Java(tm) System Messaging Server 7.0-3.01 64bit (built Dec 9 2008)) with ESMTPA id <0KNG006V52RKSM00@relay-auth-1.ms.rz.rwth-aachen.de> for hipsec@ietf.org; Mon, 27 Jul 2009 16:26:08 +0200 (CEST)
Message-id: <6512FD53-0253-4B49-BC0D-41022DBB9644@cs.rwth-aachen.de>
From: Tobias Heer <heer@cs.rwth-aachen.de>
To: hip WG <hipsec@ietf.org>
Date: Mon, 27 Jul 2009 16:26:05 +0200
X-Mailer: Apple Mail (2.935.3)
Subject: [Hipsec] Comments on hiccups draft
X-BeenThere: hipsec@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: "This is the official IETF Mailing List for the HIP Working Group." <hipsec.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/hipsec>, <mailto:hipsec-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/hipsec>
List-Post: <mailto:hipsec@ietf.org>
List-Help: <mailto:hipsec-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/hipsec>, <mailto:hipsec-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 27 Jul 2009 14:26:13 -0000
Some comments on the hiccups draft. In general I find the approach interesting and worth pursuing. Below are some questions that mostly focus on security: Conceptual comments and questions: ---------------------------------- Section 3: Existence of the HMAC in the packet: The hiccups draft states that "[the payload is] protected by a PAYLOAD_HMAC parameter". To me it is unclear how such protection can possibly work. Since there is no previous handshake there are no keys for use in the HMAC. Jan explained that the HMAC is merely used as a way to create a digest over the packet for making the signature more efficient. However, if it is only used for creating the digest, I wonder why it is actually transmitted in the packet because without a secret included in the packet, the digest can easily be calculated and transmitting the digest in a packet seems to be a unnecessary waste of space. Am I missing something here? It would be nice if the draft was more precise about the nature and the use of the HMAC. Section 4.3: Sending R1 if receiver suspects an attack: I guess that in this case, the receiver drops the data packet and its content should be retransmitted (by a higher-layer mechanism?)? If yes, this could be mentioned somewhere. Replay protection: The draft talks about a immediate replays of DATA packets in the context of DoS attacks targeted at ACK signature generation. However, it does not talk about replays after a longer time (e.g. to mess with upper-layer state machines). How can hosts shelter against replays of valid but old hiccups packets? The sequence number only works from the second packet on and still complete sequences of HIP DATA packets can be replayed. Caching packets or keeping state for every ever-received packet is probably not feasible. Is there a solution? If not, this should also be stated in the text and the security considerations. Various sections: DoS resistance: The draft briefly mentions that the protocol is susceptible to DoS attacks. This statement is rather vague and only mentions the absence of "half-stateless DoS protection nature of the base exchange" and immediate replays. However, CPU targeted DoS attacks (verification of PK-sigantures without a puzzle or working HMAC to shelter against floods of HIP DATA packets - not necessarily replays) seem much more realistic to me than state a space exhaustion attacks. Using HIP DATA packet creates a computational asymmetry between the attacker and the victim (receiver). This imbalance could be mentioned in a more explicit way. Editorial comments: ------------------- Section 4.3: "The host MAY responds" -> "The host MAY respond" Best regards, Tobias -- Dipl.-Inform. Tobias Heer, Ph.D. Student Distributed Systems Group RWTH Aachen University, Germany tel: +49 241 80 207 76 web: http://ds.cs.rwth-aachen.de/members/heer
- [Hipsec] Comments on hiccups draft Tobias Heer
- Re: [Hipsec] Comments on hiccups draft Jan Melen
- Re: [Hipsec] Comments on hiccups draft Tobias Heer
- Re: [Hipsec] Comments on hiccups draft Jan Melen
- Re: [Hipsec] Comments on hiccups draft Tobias Heer
- Re: [Hipsec] Comments on hiccups draft Jan Melen
- Re: [Hipsec] Comments on hiccups draft Jan Melen
- Re: [Hipsec] Comments on hiccups draft Tobias Heer