[31593] in CVS-changelog-for-Kerberos-V5

home help back first fref pref prev next nref lref last post

krb5 commit: Correctly abort parse on invalid JSON array

daemon@ATHENA.MIT.EDU (ghudson@mit.edu)
Fri Oct 30 17:36:43 2026

From: ghudson@mit.edu
To: cvs-krb5@mit.edu
Message-Id: <20261030213624.C606510580A@krbdev.mit.edu>
Date: Fri, 30 Oct 2026 17:36:24 -0400 (EDT)
MIME-Version: 1.0
Reply-To: krbdev@mit.edu
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: cvs-krb5-bounces@mit.edu

https://github.com/krb5/krb5/commit/27fccac69d0e81f7441e01f3d6446541b26a622a
commit 27fccac69d0e81f7441e01f3d6446541b26a622a
Author: Andrew Donnellan <andrew@donnellan.id.au>
Date:   Wed Oct 7 16:59:23 2026 +1100

    Correctly abort parse on invalid JSON array
    
    In parse_value(), don't ignore the error result from parse_array().
    
    (This bug was found as part of an LLM-assisted automated testing and
    fuzzing project, using Claude Opus 5.5, Claude Haiku 5.5 and GPT-5.6 Sol
    Daybreak Blue.)
    
    [ghudson@mit.edu: shortened commit message]
    
    ticket: 9253 (new)
    tags: pullup
    target_version: 1.22-next

 src/util/support/json.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/util/support/json.c b/src/util/support/json.c
index ac2e5be0b..efd6a2d13 100644
--- a/src/util/support/json.c
+++ b/src/util/support/json.c
@@ -1036,6 +1036,8 @@ parse_value(struct decode_ctx *ctx, k5_json_value *val_out)
         if (ctx->depth-- == 1)
             return EINVAL;
         ret = parse_array(ctx, &array);
+        if (ret)
+            return ret;
         ctx->depth++;
         *val_out = array;
     } else if (is_digit(*ctx->p) || *ctx->p == '-') {
_______________________________________________
cvs-krb5 mailing list
cvs-krb5@mit.edu
https://mailman.mit.edu/mailman/listinfo/cvs-krb5

home help back first fref pref prev next nref lref last post