[Jsonpath] Roman Danyliw's No Objection on draft-ietf-jsonpath-base-19: (with COMMENT)

Roman Danyliw via Datatracker <noreply@ietf.org> Tue, 22 August 2023 18:25 UTC

Return-Path: <noreply@ietf.org>
X-Original-To: jsonpath@ietf.org
Delivered-To: jsonpath@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id A9D60C151991; Tue, 22 Aug 2023 11:25:45 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit
From: Roman Danyliw via Datatracker <noreply@ietf.org>
To: The IESG <iesg@ietf.org>
Cc: draft-ietf-jsonpath-base@ietf.org, jsonpath-chairs@ietf.org, jsonpath@ietf.org, tbray@textuality.com, tbray@textuality.com
X-Test-IDTracker: no
X-IETF-IDTracker: 11.8.0
Auto-Submitted: auto-generated
Precedence: bulk
Reply-To: Roman Danyliw <rdd@cert.org>
Message-ID: <169272874568.62794.13726920218887322980@ietfa.amsl.com>
Date: Tue, 22 Aug 2023 11:25:45 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/jsonpath/mpDstAMspbLkesqN12eN6zXPRzY>
Subject: [Jsonpath] Roman Danyliw's No Objection on draft-ietf-jsonpath-base-19: (with COMMENT)
X-BeenThere: jsonpath@ietf.org
X-Mailman-Version: 2.1.39
List-Id: A summary description of the list to be included in the table on this page <jsonpath.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/jsonpath>, <mailto:jsonpath-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/jsonpath/>
List-Post: <mailto:jsonpath@ietf.org>
List-Help: <mailto:jsonpath-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/jsonpath>, <mailto:jsonpath-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 22 Aug 2023 18:25:45 -0000

Roman Danyliw has entered the following ballot position for
draft-ietf-jsonpath-base-19: No Objection

When responding, please keep the subject line intact and reply to all
email addresses included in the To and CC lines. (Feel free to cut this
introductory paragraph, however.)


Please refer to https://www.ietf.org/about/groups/iesg/statements/handling-ballot-positions/ 
for more information about how to handle DISCUSS and COMMENT positions.


The document, along with other ballot positions, can be found here:
https://datatracker.ietf.org/doc/draft-ietf-jsonpath-base/



----------------------------------------------------------------------
COMMENT:
----------------------------------------------------------------------

Thank you to Dan Harkins for the SECDIR review.

** Section 4.2.  Recommend unpacking “translated” to be more specific.

OLD
   These variables need to be translated into the
   form they take in a JSONPath query, e.g., by escaping string
   delimiters, or by only allowing specific constructs such as .name to
   be formed when the given values allow that.

NEW
These input variables will need to be validated against application-specific
constraints (e.g., only allowing specific constructs such as .name to be formed
when the given values allow that) and reformatted (e.g., by escaping string
delimiters).

** Section 4.2.  I found the language of “Availability, Confidentiality, and
Integrity breaches” generic.  Consider:

OLD
  Failure to perform these
   translations correctly can lead to unexpected failures, which can
   lead to Availability, Confidentiality, and Integrity breaches, in
   particular if an adversary has control over the values (e.g., by
   entering them into a Web form).  The resulting class of attacks,
   _injections_ (e.g., SQL injections), is consistently found among the
   top causes of application security vulnerabilities and requires
   particular attention.

NEW
In certain applications (e.g., a web-form), an adversary might be able to
directly control the input into a JSONPath.  Failure to validate and escape
input can result in variety of injection attacks whose result could include
compromise of the endpoint running the application and arbitrary code
execution; corruption or alteration of data assessable to the endpoint (e.g.,
SQL injection); or altering the security context of execution (e.g., XSS).