From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id B540740F2A for ; Sun, 13 Mar 2022 19:03:45 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 4190D68B18C; Sun, 13 Mar 2022 21:03:42 +0200 (EET) Received: from mail-oi1-f178.google.com (mail-oi1-f178.google.com [209.85.167.178]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7255268A958 for ; Sun, 13 Mar 2022 21:03:36 +0200 (EET) Received: by mail-oi1-f178.google.com with SMTP id z8so15243757oix.3 for ; Sun, 13 Mar 2022 12:03:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=message-id:date:mime-version:user-agent:subject:content-language:to :references:from:in-reply-to:content-transfer-encoding; bh=w8xOeKyuM4rJXdh2rx6AnzQ779om1MvmgcJbMe0x+uE=; b=I7TOo0dx5Yr/2i42nesajYqLEGn0IVDm17sLNLq5eQVH/1zNAUox7yZ4kPHaeBfuEJ oU+X2pA38NnNZqwFORv7Hr4HxvTeywOBCVFLFMKQ/gIBWprqNpZY5kTPLxXoW8vLzWxa bTFceA4Nns74gmG70jWDNRt+9IFLWJN+6gwyo0CQC55cZkHesMghrZduSY+r06MIFE5a oae/gOEcQo/APuGW1tB25Lb1CYWuhctA1Fg+6qiYhHprmL4a29mLY7ilZU3XZLU9Ptzy 3s3WDScz/yUdZ4K9RUC67L3eMoMJdoq2gBq8oja1fHogdEh82ILKXT0vGR3sMIKKDAxC V62A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:date:mime-version:user-agent:subject :content-language:to:references:from:in-reply-to :content-transfer-encoding; bh=w8xOeKyuM4rJXdh2rx6AnzQ779om1MvmgcJbMe0x+uE=; b=i8FYtm2eaixbLwQTvmN1iNFthBbAn3vIMpKscfSERWcsLbLUWwU7bbAucPa6Bu+7af y3ZdsEO6xEtZeIYep53jdWQ72TDE4oIB9c7QT36FISdIr9YvPZA6F57WQzfokGTc7ObH LjBig5rWWtIYJoOXwO9pPtjZu7edKElKcH3LAH8C/zBy1utq6lxOKtQkNFgXP+yjBbp4 5DlkaTVjyQr1t4FdwStV7eolAHUKAe2FWoSUlrt5E15ppMpPWNYfOGytpLJoODehWm+/ sfV/QRS9QST2IhokForE95KK8hSumCvrl6it7c0mRgxeCm+qMJHEkGIaCzDl4adOx9pY ud/w== X-Gm-Message-State: AOAM533lw6ZBI6c63jcsxsXRsTvX0XxluHvWbrKR+PcgAA7h3dZoH9LC gUC61CU93hG4HXsw+YmUPW49AX5mdM/9zg== X-Google-Smtp-Source: ABdhPJws+fakKtvUV8RPtpw8GoL1SaZKloHqRwKq5LaF50t19XolVGoLsMgI61sGad12nUSw2NNDRA== X-Received: by 2002:aca:f1d5:0:b0:2ec:eaab:eb9b with SMTP id p204-20020acaf1d5000000b002eceaabeb9bmr803829oih.228.1647198214571; Sun, 13 Mar 2022 12:03:34 -0700 (PDT) Received: from [192.168.0.13] ([186.136.131.95]) by smtp.gmail.com with ESMTPSA id 184-20020a4a03c1000000b003240492fc15sm3079716ooi.36.2022.03.13.12.03.33 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 13 Mar 2022 12:03:34 -0700 (PDT) Message-ID: Date: Sun, 13 Mar 2022 16:03:42 -0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.6.2 Content-Language: en-US To: ffmpeg-devel@ffmpeg.org References: <20220312235227.19626-1-michael@niedermayer.cc> From: James Almer In-Reply-To: <20220312235227.19626-1-michael@niedermayer.cc> Subject: Re: [FFmpeg-devel] [PATCH 1/4] avcodec/vp9_superframe_split_bsf: Check in size 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 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: On 3/12/2022 8:52 PM, Michael Niedermayer wrote: > Fixes: Out of array read > Fixes: 45137/clusterfuzz-testcase-minimized-ffmpeg_BSF_VP9_SUPERFRAME_SPLIT_fuzzer-4984270639202304 > > Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg > Signed-off-by: Michael Niedermayer > --- > libavcodec/vp9_superframe_split_bsf.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/libavcodec/vp9_superframe_split_bsf.c b/libavcodec/vp9_superframe_split_bsf.c > index ed0444561a..6af555c078 100644 > --- a/libavcodec/vp9_superframe_split_bsf.c > +++ b/libavcodec/vp9_superframe_split_bsf.c > @@ -51,6 +51,11 @@ static int vp9_superframe_split_filter(AVBSFContext *ctx, AVPacket *out) > return ret; > in = s->buffer_pkt; > > + if (in->size == 0) { !in->size > + ret = AVERROR_INVALIDDATA; > + goto fail; > + } > + > marker = in->data[in->size - 1]; Do we want to abort on in->data && !in->size, or just pass the packet through? I'm partial to the latter, so it would mean initializing marker to 0 and check instead for in->size before setting marker, so the check below fails and the packet is just passed through. Not sure what others think about it. > if ((marker & 0xe0) == 0xc0) { > int length_size = 1 + ((marker >> 3) & 0x3); _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".