From patchwork Tue Sep 5 02:03:57 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Niedermayer X-Patchwork-Id: 43555 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:4f16:b0:149:dfde:5c0a with SMTP id gi22csp1560214pzb; Mon, 4 Sep 2023 19:04:21 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHrz2gPO03GDMQhb/vdaN8Tuq6JjHixAHI0en1xhA422H3QGHLUhwSSRaaYeIlO5DRKbXd0 X-Received: by 2002:a05:6402:430f:b0:51e:4218:b91b with SMTP id m15-20020a056402430f00b0051e4218b91bmr15275033edc.1.1693879461637; Mon, 04 Sep 2023 19:04:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1693879461; cv=none; d=google.com; s=arc-20160816; b=0I7BiLjYtB5ofKQV+KsKGmLEpUGrCFEwJaCm7eLe6ngxdQHZunQJNu6VZFib/iH/XW lOrdIYgfhz8QMAzsegK8aG9UwfUpl6m/VawUh82dTP32YNfeOEfARlpY2XOZWm/zi2oR 1tOQmH77D24zznp1nxL4B2vLkt0ueRbVMLnLYh/hGMqlNwJyvsHqxLrEEMycHa/mmUGY um8eXxnMYI9UMRw37msaRQusrkzjl1ZIb/+72dZgji3ZeceN88ZcHqgSB3C6mo0N80bt 2rLbMfNCQLmg4QzghGphXXLtFdf2tk/tCsSqp3MnlNdemzonMO2g7LG8pQatpZhTL78x fzOw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:message-id:date:to:from:delivered-to; bh=ccg0JK8bHr8wNuztK7Lm4+FDLjQa0saUyIjKBOSFRb0=; fh=e5zN9xSzcxLA6bGo3lF+CqTbY/oLwzApV03EO/RBfgQ=; b=KjE6m214Z4Jbw8baKSjoVa8SRiUfkEw5D3yMuciMFBmmidkEdnnvzYaqpQ4X9F7uLR zSs9rTs18fe3viBo29l0B5jcjDCpMlTBGHzMoWD34Jw35JK+ueX0nm6vcYQEiOGZyHo7 vAhctXjezW2pGktTEuWoIm/JzPnrKiOG3rAStiQh4P3gfQ4F/O/ZSW1VHbqIuiCWzVv8 rnHAJ79OZ5SqML/NT+nD5TucvdGWnPhz5OXaJfVN6CpnisAXIzQC4BV0Jy5k9+z0UIUB kEcS/j8N2A5XDRf93jN6LxgzovzNd7+BhU+1HppkGiXy91Fzl+GZXQAdQfFEWt8LcZ0p p0Tw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id k4-20020aa7c384000000b00523c9de0fa5si7043788edq.14.2023.09.04.19.04.09; Mon, 04 Sep 2023 19:04:21 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5893268C7C9; Tue, 5 Sep 2023 05:04:06 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from relay6-d.mail.gandi.net (relay6-d.mail.gandi.net [217.70.183.198]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 144D168C68A for ; Tue, 5 Sep 2023 05:04:00 +0300 (EEST) Received: by mail.gandi.net (Postfix) with ESMTPSA id 2B07DC0006 for ; Tue, 5 Sep 2023 02:03:58 +0000 (UTC) From: Michael Niedermayer To: FFmpeg development discussions and patches Date: Tue, 5 Sep 2023 04:03:57 +0200 Message-Id: <20230905020358.32527-1-michael@niedermayer.cc> X-Mailer: git-send-email 2.17.1 X-GND-Sasl: michael@niedermayer.cc Subject: [FFmpeg-devel] [PATCH 1/2] avcodec/vmixdec: Fix signed integer overflow in dc X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: T+DriqfdxGML Fixes: signed integer overflow: 2147483181 + 1024 cannot be represented in type 'int' Fixes: 61117/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_VMIX_fuzzer-5387692433866752 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer --- libavcodec/vmixdec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/vmixdec.c b/libavcodec/vmixdec.c index b77c90929a..8f2278b2ea 100644 --- a/libavcodec/vmixdec.c +++ b/libavcodec/vmixdec.c @@ -134,7 +134,7 @@ static int decode_dcac(AVCodecContext *avctx, ac_run = get_ue_golomb_long(ac_gb); } - block[0] = dc + add; + block[0] = dc + (unsigned)add; s->idsp.idct_put(dst + x, linesize, block); } From patchwork Tue Sep 5 02:03:58 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Niedermayer X-Patchwork-Id: 43556 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:4f16:b0:149:dfde:5c0a with SMTP id gi22csp1560257pzb; Mon, 4 Sep 2023 19:04:30 -0700 (PDT) X-Google-Smtp-Source: AGHT+IG+c10xvJXrohRUli2sqAKdfsG1gfR4r4eLuHMQhs86x01gK7XrLPStkNsHQYs+j7IB57bX X-Received: by 2002:a17:906:2921:b0:9a5:b8c1:916c with SMTP id v1-20020a170906292100b009a5b8c1916cmr8477528ejd.30.1693879470147; Mon, 04 Sep 2023 19:04:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1693879470; cv=none; d=google.com; s=arc-20160816; b=PmLY67sej1UMCpuHzsmCHhidUFVBtYAuRAn3hwWVMBz7yCsZIs/EhGaw4/sq5pxNq7 WOQ4yGPOovNiCmYmEIWe8N+3lICW4qofcYOXX+iobYG7QnOnaVkKaoGZWw2PSLYSFlYt g+QA+cvLP+DGf6kIypEFCXnRrgv+UbqWBjeF17N4NW4DctorXJyPtSCvh1AXxuRxdCM3 rh9lDnpfYg5XhIvKlQCa50HrRMK8Ygk9eoq3MvUADpHZTa2zHUKgfK+SZ05aGYNh2PSO AebODcFIOTUy+kOFQKlRKel9orum7Wg1lxroAmIrz9pYBfH71JYxCfc0BeKI+VlGu/eT x5rA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:delivered-to; bh=L4wCUwTSBBJSumThA0wSEd6nFtjYxAMNXkvYx2INU1U=; fh=e5zN9xSzcxLA6bGo3lF+CqTbY/oLwzApV03EO/RBfgQ=; b=AbB5sTN6N6sFgMvD6DNUKN9lZDRyoMkNM/7+UIeBv4MWsoXNWD8l5MrfRFqN1PYQFn 4Q/QyP94H9TXXfDbH7B3sn0Nb/9EERnc/cGIOdXQBvQx0vh6gvgpJs07EFM1z0xnwW1H +cNfMboP0TajX0BfJKW4eMRcFhJOC1/3iweKt77EWVHS0jrNPu4aQrgTUFRjgPYlMyl0 /FkliNmmeZWToVwVuhTnmgNqyFZkeV8EmPC9q849AOVsI6Sy6+kKrWj3uumFA4O22paa J57upIY2BN/GJYwQquhZ+KmSXj2WeAQ7WCVVrx0L3ETHvOgNKgxWa1oMnWe6hwW7X0nj K4vA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id k14-20020a1709063e0e00b009930d4e327dsi7057158eji.880.2023.09.04.19.04.18; Mon, 04 Sep 2023 19:04:30 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 76D0C68C7D3; Tue, 5 Sep 2023 05:04:07 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from relay5-d.mail.gandi.net (relay5-d.mail.gandi.net [217.70.183.197]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C140A68C68A for ; Tue, 5 Sep 2023 05:04:00 +0300 (EEST) Received: by mail.gandi.net (Postfix) with ESMTPSA id 255711C0003 for ; Tue, 5 Sep 2023 02:03:59 +0000 (UTC) From: Michael Niedermayer To: FFmpeg development discussions and patches Date: Tue, 5 Sep 2023 04:03:58 +0200 Message-Id: <20230905020358.32527-2-michael@niedermayer.cc> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230905020358.32527-1-michael@niedermayer.cc> References: <20230905020358.32527-1-michael@niedermayer.cc> X-GND-Sasl: michael@niedermayer.cc Subject: [FFmpeg-devel] [PATCH 2/2] avcodec/cbs_h266_syntax_template: Check num_multi_layer_olss X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: 8XtgUXdV7hKi The constraints in the specification are self contradictionary if num_multi_layer_olss is 0 That is they require various variables to be positive and smaller than 0. So num_multi_layer_olss cannot be 0 if vps_each_layer_is_an_ols_flag is 0 Its quite possible a broader check can be used, this is just the first condition that I saw violated Fixes: index 257 out of bounds for type 'uint8_t [257]' Fixes: 61160/clusterfuzz-testcase-minimized-ffmpeg_BSF_VVC_METADATA_fuzzer-6709397181825024 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer --- libavcodec/cbs_h266_syntax_template.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libavcodec/cbs_h266_syntax_template.c b/libavcodec/cbs_h266_syntax_template.c index 4075897b9a..31b9d0b030 100644 --- a/libavcodec/cbs_h266_syntax_template.c +++ b/libavcodec/cbs_h266_syntax_template.c @@ -944,6 +944,10 @@ static int FUNC(vps) (CodedBitstreamContext *ctx, RWContext *rw, if (!current->vps_each_layer_is_an_ols_flag) { uint16_t vps_num_dpb_params; + + if (num_multi_layer_olss <= 0) + return AVERROR_INVALIDDATA; + ue(vps_num_dpb_params_minus1, 0, num_multi_layer_olss - 1); if (current->vps_each_layer_is_an_ols_flag) vps_num_dpb_params = 0;