Recently I came across and malformed mp4 that when played on the iPhone would crash the device. I am trying to figure out which bits are specifically responsible for the crash. I am wondering if there is any software out there that can help me inspect the different mp4 meta fields and find out where the problem is so that I can write detection logic to block files like it.

I don't want to directly link the mp4, but some google searches should be able to bring it up easily.

  • I don't think its meta information is the reason for the crashes. Like, "its title is 1MB long" makes your iPhone crash while playing. More likely, it's a bug or undefined behavior in the actual data decoding. For this to find, you need (1) a thorough understanding of the movie format, and - essential - (2) the source code of the movie decoder.
    – Jongware
    Nov 30 '16 at 23:30
  • I did use ffmpeg and was able to find the error below, so I think it has something to do with the header because that's where the intra-frame coding is. "[h264 @ 0x8f4720] top block unavailable for requested intra4x4 mode -1 at 0 0 [h264 @ 0x8f4720] error while decoding MB 0 0"
    – MikeSchem
    Nov 30 '16 at 23:36
  • 3
  • I usually use 010 templates for this. If you don't have it, you can always use the python pfp library to run the templates -- there's even a vim extension for it.
    – broadway
    Jan 11 '17 at 21:51