[Anima] Opsdir last call review of draft-ietf-anima-constrained-join-proxy-14

Jürgen Schönwälder via Datatracker <noreply@ietf.org> Mon, 25 September 2023 13:55 UTC

Return-Path: <noreply@ietf.org>
X-Original-To: anima@ietf.org
Delivered-To: anima@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id 1F874C1522B9; Mon, 25 Sep 2023 06:55:52 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit
From: Jürgen Schönwälder via Datatracker <noreply@ietf.org>
To: ops-dir@ietf.org
Cc: anima@ietf.org, draft-ietf-anima-constrained-join-proxy.all@ietf.org, last-call@ietf.org
X-Test-IDTracker: no
X-IETF-IDTracker: 11.11.0
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <169565015211.3828.7390321322216433118@ietfa.amsl.com>
Reply-To: Jürgen Schönwälder <j.schoenwaelder@jacobs-university.de>
Date: Mon, 25 Sep 2023 06:55:52 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/anima/kXDp7-raxJdvJtMxJUBUinA55jc>
Subject: [Anima] Opsdir last call review of draft-ietf-anima-constrained-join-proxy-14
X-BeenThere: anima@ietf.org
X-Mailman-Version: 2.1.39
List-Id: Autonomic Networking Integrated Model and Approach <anima.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/anima>, <mailto:anima-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/anima/>
List-Post: <mailto:anima@ietf.org>
List-Help: <mailto:anima-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/anima>, <mailto:anima-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 25 Sep 2023 13:55:52 -0000

Reviewer: Jürgen Schönwälder
Review result: Has Issues

Thanks for taking my earlier comment into consideration. I appreciate
that it is now clearer which functionality needs to be implemented and
where.

Concerning the protection against abuse of the join proxy, I now
see that the message is:

       JPY_message =
       [
          pledge_context_message : bstr,
          content   : bstr
       ]

However, I also read about the 'header' and the 'content' fields.  Is
the pledge_context_message field the 'header'? If so, the document is
contradicting itself since in some parts it says what it contains
while in other parts it says pledge_context_message is entirely
implementation specific.

My understanding of the new design is that pledge_context_message
field effectively acts as a nonce and token, it is not protected and
likely even valid for multiple usages. If so, calling the result an
encrypted message is perhaps misleading since I may be able to replay
other messages once I have sniffed the pledge_context_message
value. The targets I may be possible to reach depends on how an
implementation chooses to implement pledge_context_message, the
specification only gives an illustrative example.

Anyway, this is an improvement, but perhaps it would be even better if
there would be a minimum requirement which information needs to be in
the token to prevent abuse of join proxies. But SECDIR people should be
the proper persons to judge this and whether it is find to trust that
implementations understand the significance of including enough
context information. Perhaps this should be discussed in the security
considerations to highlight the security implication of the choice of
the pledge_context_message content.