Subject: [secdir] Security review of http://www.ietf.org/id/draft-ietf-nsis-qos-nslp-17.txt

From: Ran Canetti <[email-masked]>
Date: Fri, 27 Nov 2009 18:15:46 +0200

***   I have reviewed this document as part of the security directorate's
***   ongoing effort to review all IETF documents being processed by the
***   IESG.  These comments were written primarily for the benefit of the
***   security area directors.  Document editors and WG chairs should treat
***   these comments just like any other last call comments.

The document describes the NSIS signaling layer protocol, for signaling QOS 
reservations. The document builds on extensive ground work in the NSIS WG - 
in particular a  requirements document (RFC 3726), a security threats 
document  (RFC 4081), and a framework document (RFC 4080).

Indeed, overall the document seems well thought out. I didn't find any 
issues with the proposed protocol in of itself. Here are some general 
remarks/thoughts that came to mind, and some nits:

- regarding the NJT analogy  (section 7.2) - on the NJT all payments are 
made to a single entity, thus this "pricing by distance" is easy. On the 
internet there are  multiple independent business entities (eg, ISPs)... 
Does the protocol provide a way for the client to avoid having to setup 
business relationship separately with each server on the way?

(Note that this is different from letting the traffic go through without 
QOS negotiation with each router on the way - Ideally the client should not 
even have to be aware of all  the entities on the way. This does not seem 
compatible with the model where there is a single entity that's associated 
with a session, and this entity has to establish a relationship with each
netwrok on the way.)

-A very basic security issue with QOS is how the client (either at the data 
origin or destination)  gets an assurance that the reservation was made
(ie, that he got what he paid for). I havnt found mentioning of this issue 
in 4081.

- Another issue is the need for authentication of the data packets. 
Deploying QOS without proper authentication of each and every QOS packet is 
dangerous... beyond the issue of correct charging, there is the danger that 
lack of authetication for QOS protected packets
may adversely affect all traffic on the Internet, even non-QOS related 
traffic: without authentication, it may be possible to flood the network 
with rogoue high priority packets.

Nits:

- section 2: Why do SIDs need to be "cryptographically random"?
(whatever this term means...) uniqueness (with high probability) seems enough.

- might be good to explain the differences from RSVP (or point to where 
these are explained.)

Best,

Ran