At 12:48 PM -0700 1/6/10, Grewal, Ken wrote:
Steve,
The either-or on using an ICV or explicitly checking the WESP header on the recipient was based on the assumption that the threat does not come from the sender and only from some other malicious entity after the packet has been sent. This was the reason for simplifying the header check by using the ICV, instead of explicitly checking every field.

You cited my comments about a vulnerability as the rationale for pursuing this design. I noted that my comments did not specify the source of the mismatch between header data that IPsec acts upon (for access control) vs. what WESP caused an intermediate system to examine. You chose to focus on one possible source of manipulation, i.e., a MITM attack. That's fine, but it does not necessitate changing the ESP ICV computation, i.e., checking by the recipient suffices. Also, the I-D calls for consistency checking, so I was (justifiably) confused by the either-or statement you made.

If the sender is malicious, then an encrypted (covert) channel is all that is needed to bypass any intermediate checking and furthermore, any explicit checking of each WESP field on the recipient does not help, as the payload can contain whatever is intended by the malicious sender!

I see we have a miscommunication about the nature of the vulnerability that I cited. It is what I noted above, i.e., "a mismatch between header data that IPsec acts upon (for access control) vs. what WESP caused an intermediate system to examine." This is an old security concern, dating from the mid/late 1970s, when it was discovered that one could make a call to an OS with one set of parameters, and then change the parameters after an access control check was performed but before the OS acted upon the call. The fix for this sort of attavck was to copy the parameters into OS-controlled address space, out of user-space. An encrypted covert channel was not what motivated my comments, because IPsec makes its access control decisions based on the 5-tuples from the IP and transport layer headers.

We did debate this a number of times and extending the integrity appears as early as May of last year in version 3 of the draft (at version 12 now), so it should not have been a surprise at last call.

I have already apologized for not closely tracking the changes to WESP. However, during IETF last call everyone is free to raise questions of this sort, so we ought not devote too much time and energy to this aspect of the discussion.

In either case, as Gabriel indicates in a separate email, if it makes sense to go back to not integrity protecting the WESP header, I am fine with that. This was the original position and aligns with your other email on WESP acting as a wrapper to ESP, and should also address other comments indicating that the name Wrapped ESP is a misnomer!

That works for me too, but I would feel better if we were all in agreement about the nature of the vulnerability that I cited, which motivated this in the first place.

Steve
_______________________________________________
IPsec mailing list
IPsec@ietf.org
https://www.ietf.org/mailman/listinfo/ipsec

Reply via email to