The PDF file itself has no many objects and only one encoded stream:
If we make a diff between the first decoded bytes of two different PDF files we can see that the differences start in the section marked in green and that it's the CharStrings Index.
Although I've not read the full specification yet, I think that this vulnerability is related to a kind of overflow in the Type 2 argument stack and not to the FlateDecode filter itself. At the moment there's no available patch so it's recommended some type of mitigation and to be careful with the visited links.
Update (2010-08-06):
Thanks to a message in the Full Disclosure list I've known that the very next day I published this post apatch was released (not for Apple products yet). The diff shows that the bug was in the arguments stack, not checking the end of it after operators execution.
출처 : http://eternal-todo.com/
댓글