Diaoul / enzyme

Python video metadata parser
MIT License
59 stars 24 forks source link

KeyError: 149 #20

Open fgeek opened 9 years ago

fgeek commented 9 years ago

Fuzzed sample: http://bugs.fi/media/afl/enzyme/enzyme-014.mkv Fuzzers used: http://lcamtuf.coredump.cx/afl/ https://bitbucket.org/jwilk/python-afl SHA1: 88e26346a3631de7b112b4e102e7f1ee6779abfa

mkvinfo.py:

import sys
import enzyme
inputfile = sys.argv[1]
try:
    with open(inputfile, 'rb') as f:
        mkv = enzyme.MKV(f)
    print(mkv.info)
    print(mkv.video_tracks)
    print(mkv.audio_tracks)
except enzyme.exceptions.MalformedMKVError:
    pass
Traceback (most recent call last):
  File "mkvinfo.py", line 8, in <module>
    mkv = enzyme.MKV(f)
  File "/usr/local/lib/python2.7/dist-packages/enzyme-0.4.1-py2.7.egg/enzyme/mkv.py", line 54, in __init__
    self._parse_seekhead(seek_head, segment, stream, specs)
  File "/usr/local/lib/python2.7/dist-packages/enzyme-0.4.1-py2.7.egg/enzyme/mkv.py", line 61, in _parse_seekhead
    element_name = specs[element_id][1]
KeyError: 149