FFmpeg/libavformat
Michael Niedermayer 91d96dc8dd
avformat/hls: Be more picky on extensions
This blocks disallowed extensions from probing
It also requires all available segments to have matching extensions to the format
mpegts is treated independent of the extension

It is recommended to set the whitelists correctly
instead of depending on extensions, but this should help a bit,
and this is easier to backport

Fixes: CVE-2023-6602 II. HLS Force TTY Demuxer
Fixes: CVE-2023-6602 IV. HLS XBIN Demuxer DoS Amplification

The other parts of CVE-2023-6602 have been fixed by prior commits

Found-by: Harvey Phillips of Amazon Element55 (element55)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-01-26 01:12:28 +01:00
..
riscv
tests
.gitignore
3dostr.c
4xm.c
a64.c
aacdec.c
aadec.c
aaxdec.c
ac3_channel_layout_tab.c
ac3dec.c
ac4dec.c
ac4enc.c
acedec.c
acm.c
act.c
adp.c
ads.c
adtsenc.c
adxdec.c
aeadec.c avformat/aeadec: Use sample rate as time base 2024-03-19 02:54:24 +01:00
aeaenc.c
afc.c
aiff.c
aiff.h
aiffdec.c
aiffenc.c
aixdec.c
allformats.c
alp.c
amr.c
amvenc.c
anm.c
apac.c
apc.c
ape.c
apetag.c
apetag.h
apm.c
apngdec.c
apngenc.c
aptxdec.c
aqtitledec.c
argo_asf.c
argo_asf.h
argo_brp.c
argo_cvg.c
asf.c
asf.h
asf_tags.c
asfcrypt.c
asfcrypt.h
asfdec_f.c
asfdec_o.c
asfenc.c
assdec.c
assenc.c
ast.c
ast.h
astdec.c
astenc.c
async.c
au.c
av1.c
av1.h
av1dec.c
avc.c
avc.h
avformat.c
avformat.h
avformat_internal.h
avformatres.rc
avi.h
avidec.c
avienc.c
avio.c
avio.h
avio_internal.h
aviobuf.c
avisynth.c
avlanguage.c
avlanguage.h
avr.c
avs.c
avs2dec.c
avs3dec.c
bethsoftvid.c
bfi.c
bink.c
binka.c
bintext.c
bit.c
bluray.c
bmv.c
boadec.c
bonk.c
brstm.c
c93.c
cache.c
caf.c
caf.h
cafdec.c
cafenc.c
cavsvideodec.c
cdg.c
cdxl.c
chromaprint.c
cinedec.c
codec2.c
concat.c
concatdec.c
crcenc.c
crypto.c
dash.c
dash.h
dashdec.c
dashenc.c
data_uri.c
dauddec.c
daudenc.c
dca_sample_rate_tab.c
dcstr.c
demux.c
demux.h
demux_utils.c
derf.c
dfa.c
dfpwmdec.c
dhav.c
diracdec.c
dnxhddec.c
dovi_isom.c
dovi_isom.h
dsfdec.c
dsicin.c
dss.c
dtsdec.c
dtshddec.c
dump.c
dv.c
dv.h
dvbsub.c
dvbtxt.c
dvdclut.c
dvdclut.h
dvdvideodec.c
dvenc.c
dxa.c
eacdata.c
electronicarts.c
epafdec.c
evc.c
evc.h
evcdec.c
ffjni.c
ffmeta.h
ffmetadec.c
ffmetaenc.c
fifo.c
file.c
file_open.c
filmstripdec.c
filmstripenc.c
fitsdec.c
fitsenc.c
flac_picture.c
flac_picture.h
flacdec.c
flacenc.c
flacenc.h
flacenc_header.c
flic.c
flv.h
flvdec.c
flvenc.c
format.c
framecrcenc.c
framehash.c
frmdec.c
fsb.c
ftp.c
fwse.c
g722.c
g723_1.c
g726.c
g729dec.c
gdv.c
genh.c
gif.c
gifdec.c
golomb_tab.c
gopher.c
gsmdec.c avformat/avformat: Add FFInputFormat, hide internals of AVInputFormat 2024-03-07 08:53:31 -03:00
gxf.c
gxf.h Avoid _t in gxf enum type names 2008-12-13 21:58:17 +00:00
gxfenc.c
h261dec.c
h263dec.c
h264dec.c
hashenc.c
hca.c
hcom.c
hdsenc.c
hevc.c
hevc.h
hevcdec.c
hls.c
hls_sample_encryption.c
hls_sample_encryption.h
hlsenc.c
hlsplaylist.c
hlsplaylist.h
hlsproto.c
hnm.c
http.c
http.h
httpauth.c
httpauth.h
iamf.c
iamf.h
iamf_parse.c
iamf_parse.h
iamf_reader.c
iamf_reader.h
iamf_writer.c
iamf_writer.h
iamfdec.c
iamfenc.c
icecast.c
icodec.c
icoenc.c
id3v1.c
id3v1.h
id3v2.c
id3v2.h
id3v2enc.c
idcin.c
idroqdec.c
idroqenc.c
iff.c
ifv.c
ilbc.c
imf.h
imf_cpl.c
imfdec.c
img2.c
img2.h
img2_alias_pix.c
img2_brender_pix.c
img2dec.c
img2enc.c
imx.c
ingenientdec.c
internal.h
ip.c
ip.h
ipfsgateway.c
ipmovie.c avformat/ipmovie: Check signature_buffer read 2025-01-21 22:55:09 +01:00
ipudec.c
ircam.c
ircam.h
ircamdec.c
ircamenc.c
isom.c
isom.h
isom_tags.c
iss.c
iv8.c
ivfdec.c
ivfenc.c
jacosubdec.c
jacosubenc.c
jpegtables.c
jpegxl_anim_dec.c
jpegxl_parse.c
jvdec.c
kvag.c
lafdec.c
latmenc.c
lc3.c
libamqp.c
libavformat.v
libgme.c
libmodplug.c
libopenmpt.c
librist.c
librtmp.c
libsmbclient.c
libsrt.c
libssh.c
libzmq.c
lmlm4.c
loasdec.c
log2_tab.c
lrc.c
lrc.h
lrcdec.c
lrcenc.c
luodatdec.c
lvfdec.c
lxfdec.c
m4vdec.c
Makefile
matroska.c
matroska.h
matroskadec.c
matroskaenc.c
mca.c
mccdec.c
md5proto.c
metadata.c
metadata.h
mgsts.c
microdvddec.c
microdvdenc.c
mj2kdec.c
mkvtimestamp_v2.c
mlpdec.c avformat/avformat: Add FFInputFormat, hide internals of AVInputFormat 2024-03-07 08:53:31 -03:00
mlvdec.c
mm.c
mmf.c
mms.c
mms.h
mmsh.c
mmst.c
mods.c
moflex.c
mov.c
mov_chan.c
mov_chan.h
mov_esds.c
movenc.c
movenc.h
movenc_ttml.c
movenc_ttml.h
movenccenc.c
movenccenc.h
movenchint.c
mp3dec.c
mp3enc.c
mpc.c
mpc8.c
mpeg.c
mpeg.h
mpeg4audio_sample_rates.c
mpegaudiotabs.c
mpegenc.c
mpegts.c
mpegts.h
mpegtsenc.c
mpegvideodec.c
mpjpeg.c
mpjpegdec.c
mpl2dec.c
mpsubdec.c
msf.c avformat/avformat: Add FFInputFormat, hide internals of AVInputFormat 2024-03-07 08:53:31 -03:00
msnwc_tcp.c
mspdec.c
mtaf.c
mtv.c
musx.c
mux.c
mux.h
mux_utils.c
mvdec.c
mvi.c
mxf.c
mxf.h
mxfdec.c
mxfenc.c
mxg.c
nal.c
nal.h
ncdec.c
network.c
network.h
nistspheredec.c
nspdec.c
nsvdec.c
nullenc.c
nut.c
nut.h
nutdec.c
nutenc.c
nuv.c
oggdec.c
oggdec.h
oggenc.c
oggparsecelt.c
oggparsedirac.c
oggparseflac.c
oggparseogm.c
oggparseopus.c
oggparseskeleton.c
oggparsespeex.c
oggparsetheora.c
oggparsevorbis.c
oggparsevp8.c
oma.c
oma.h
omadec.c
omaenc.c
options.c
options_table.h
os_support.c
os_support.h
osq.c
paf.c
pcm.c
pcm.h
pcmdec.c
pcmenc.c
pdvdec.c
pjsdec.c
pmpdec.c
pp_bnk.c
prompeg.c
protocols.c
psxstr.c
pva.c
pvfdec.c
qcp.c
qoadec.c
qtpalette.c
qtpalette.h
r3d.c
rangecoder_dec.c
rawdec.c
rawdec.h
rawenc.c
rawenc.h
rawutils.c
rawutils.h
rawvideodec.c
rcwtdec.c
rcwtenc.c
rdt.c
rdt.h
realtextdec.c
redspark.c
replaygain.c
replaygain.h
riff.c
riff.h
riffdec.c
riffenc.c
rka.c
rl2.c
rm.c
rm.h
rmdec.c
rmenc.c
rmsipr.c
rmsipr.h
rpl.c
rsd.c
rso.c
rso.h
rsodec.c
rsoenc.c
rtmp.h
rtmpcrypt.c
rtmpcrypt.h
rtmpdh.c
rtmpdh.h
rtmpdigest.c
rtmphttp.c
rtmppkt.c
rtmppkt.h
rtmpproto.c
rtp.c
rtp.h
rtpdec.c
rtpdec.h
rtpdec_ac3.c
rtpdec_amr.c
rtpdec_asf.c
rtpdec_dv.c
rtpdec_formats.h
rtpdec_g726.c
rtpdec_h261.c
rtpdec_h263.c
rtpdec_h263_rfc2190.c
rtpdec_h264.c
rtpdec_hevc.c
rtpdec_ilbc.c
rtpdec_jpeg.c
rtpdec_latm.c avutil/common: Don't auto-include mem.h 2024-03-31 00:08:43 +01:00
rtpdec_mpa_robust.c
rtpdec_mpeg4.c
rtpdec_mpeg12.c
rtpdec_mpegts.c
rtpdec_qcelp.c
rtpdec_qdm2.c
rtpdec_qt.c
rtpdec_rfc4175.c
rtpdec_svq3.c
rtpdec_vc2hq.c
rtpdec_vp8.c
rtpdec_vp9.c
rtpdec_xiph.c
rtpenc.c
rtpenc.h
rtpenc_aac.c
rtpenc_amr.c
rtpenc_chain.c
rtpenc_chain.h
rtpenc_h261.c
rtpenc_h263.c
rtpenc_h263_rfc2190.c
rtpenc_h264_hevc.c
rtpenc_jpeg.c
rtpenc_latm.c
rtpenc_mpegts.c
rtpenc_mpv.c
rtpenc_rfc4175.c avformat/rtpenc_rfc4175: Use 64bit in computation if copy_offset 2024-07-12 16:40:51 +02:00
rtpenc_vc2hq.c
rtpenc_vp8.c
rtpenc_vp9.c
rtpenc_xiph.c
rtpproto.c
rtpproto.h
rtsp.c
rtsp.h
rtspcodes.h
rtspdec.c
rtspenc.c
s337m.c
samidec.c
sapdec.c
sapenc.c
sauce.c
sauce.h
sbcdec.c
sbgdec.c
sccdec.c
sccenc.c
scd.c
sctp.c
sdns.c
sdp.c
sdr2.c
sdsdec.c
sdxdec.c
seek.c
segafilm.c
segafilmenc.c
segment.c
serdec.c
sga.c
shortendec.c
sierravmd.c
siff.c
smacker.c
smjpeg.c
smjpeg.h
smjpegdec.c
smjpegenc.c
smoothstreamingenc.c
smush.c
sol.c
sox.h
soxdec.c
soxenc.c
spdif.c
spdif.h
spdifdec.c
spdifenc.c
srtdec.c
srtenc.c
srtp.c
srtp.h
srtpproto.c
stldec.c
subfile.c
subtitles.c
subtitles.h
subviewer1dec.c
subviewerdec.c
supdec.c
supenc.c
svag.c
svs.c
swf.c
swf.h
swfdec.c
swfenc.c
takdec.c
tcp.c
tedcaptionsdec.c
tee.c
tee_common.c
tee_common.h
teeproto.c
thp.c
tiertexseq.c
tls.c
tls.h
tls_gnutls.c
tls_libtls.c
tls_mbedtls.c
tls_openssl.c
tls_schannel.c
tls_securetransport.c
tmv.c
to_upper4.c
tta.c
ttaenc.c
ttmlenc.c
ttmlenc.h
tty.c
txd.c
ty.c
udp.c
uncodedframecrcenc.c
unix.c
url.c
url.h
urldecode.c avformat/urldecode: add the ability to not decode plus sign to space 2020-02-15 18:41:36 +01:00
urldecode.h
usmdec.c
utils.c
vag.c
vapoursynth.c
vc1dec.c
vc1test.c
vc1testenc.c
version.c
version.h
version_major.h
vividas.c
vivo.c
voc.c
voc.h
voc_packet.c
vocdec.c
vocenc.c
vorbiscomment.c
vorbiscomment.h
vpcc.c
vpcc.h
vpk.c
vplayerdec.c
vqf.c
vvc.c
vvc.h
vvcdec.c
w64.c
w64.h
wady.c
wavarc.c
wavdec.c
wavenc.c
wc3movie.c
webm_chunk.c
webmdashenc.c
webpenc.c
webvttdec.c
webvttenc.c
westwood_aud.c
westwood_audenc.c
westwood_vqa.c
wsddec.c
wtv.h
wtv_common.c
wtvdec.c
wtvenc.c
wv.c
wv.h
wvdec.c
wvedec.c
wvenc.c
xa.c
xmd.c
xmv.c
xvag.c
xwma.c
yop.c
yuv4mpeg.h
yuv4mpegdec.c
yuv4mpegenc.c