Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
* [FFmpeg-devel] [PATCH 1/3] avformat/cafdec: sanity check channels and bps
@ 2024-03-22 23:08 Michael Niedermayer
  2024-03-22 23:08 ` [FFmpeg-devel] [PATCH 2/3] avformat/mov: Do not deallocate heif_item in a input dependant way Michael Niedermayer
                   ` (3 more replies)
  0 siblings, 4 replies; 21+ messages in thread
From: Michael Niedermayer @ 2024-03-22 23:08 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

Fixes: Timeout
Fixes: 67044/clusterfuzz-testcase-minimized-ffmpeg_dem_CAF_fuzzer-5791144363491328

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
---
 libavformat/cafdec.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/libavformat/cafdec.c b/libavformat/cafdec.c
index 426c56b9bd..334077efb5 100644
--- a/libavformat/cafdec.c
+++ b/libavformat/cafdec.c
@@ -33,6 +33,7 @@
 #include "isom.h"
 #include "mov_chan.h"
 #include "libavcodec/flac.h"
+#include "libavcodec/internal.h"
 #include "libavutil/intreadwrite.h"
 #include "libavutil/intfloat.h"
 #include "libavutil/dict.h"
@@ -87,6 +88,10 @@ static int read_desc_chunk(AVFormatContext *s)
     st->codecpar->ch_layout.nb_channels = avio_rb32(pb);
     st->codecpar->bits_per_coded_sample = avio_rb32(pb);
 
+    if (st->codecpar->ch_layout.nb_channels > FF_SANE_NB_CHANNELS ||
+        st->codecpar->bits_per_coded_sample > 64)
+        return AVERROR_INVALIDDATA;
+
     if (caf->bytes_per_packet < 0 || caf->frames_per_packet < 0 || st->codecpar->ch_layout.nb_channels < 0)
         return AVERROR_INVALIDDATA;
 
-- 
2.17.1

_______________________________________________
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".

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2024-07-02 10:50 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-03-22 23:08 [FFmpeg-devel] [PATCH 1/3] avformat/cafdec: sanity check channels and bps Michael Niedermayer
2024-03-22 23:08 ` [FFmpeg-devel] [PATCH 2/3] avformat/mov: Do not deallocate heif_item in a input dependant way Michael Niedermayer
2024-03-26  1:22   ` James Almer
2024-03-26 19:29     ` Michael Niedermayer
2024-03-22 23:08 ` [FFmpeg-devel] [PATCH 3/3] avformat/aiffdec: Check for previously set channels Michael Niedermayer
2024-04-01 16:59   ` Michael Niedermayer
2024-03-27  7:39 ` [FFmpeg-devel] [PATCH 1/3] avformat/cafdec: sanity check channels and bps Anton Khirnov
2024-03-27 23:27   ` Michael Niedermayer
2024-06-25 19:25     ` Michael Niedermayer
2024-06-25 19:27       ` Anton Khirnov
2024-06-26 23:50         ` Michael Niedermayer
2024-06-27  6:40           ` Paul B Mahol
2024-06-29 23:40             ` Michael Niedermayer
2024-06-27  6:53           ` Anton Khirnov
2024-06-29 23:28             ` Michael Niedermayer
2024-06-27  0:52 ` James Almer
2024-06-29 23:37   ` Michael Niedermayer
2024-06-30 23:07     ` James Almer
2024-07-01 23:42       ` Michael Niedermayer
2024-07-02  0:01         ` James Almer
2024-07-02 10:50           ` Michael Niedermayer

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git