Polyglottes binaires et implicationsAnge Albertini

De l'exploitation à l'infection, les malwares modernes utilisent de nombreux formats de fichier binaires. Il est crucial de pouvoir correctement les identifier et les analyser, si possible de manière automatique. À priori clairement différenciés, il est malheureusement possible de combiner certains d'entre eux dans un seul et même fichier. De tels binaires polyglottes ont donc dans un premier temps été créés. Ensuite, plusieurs caractéristiques non documentées de chaque format concerné ont été rajouté, pour mettre en évidence l'importance du problème entre les limites des documentations officielles, et la réalité (du monde des virus). Les conséquences sur le fonctionnement des outils de sécurités sont finalement mises en évidence, avec ce que ça implique pour l'utilisateur final.


From exploitation to infection, modern malware rely on many binary file formats. It's critical to be able to identify them reliably, and analyze them in an automated way. While most of them are trivial to tell apart, it's sadly possible to combine some of them in a single file. As an experiment, such binary polyglots were written. Then, various undocumented yet supported characteristics were added to each file format, to highlight the difficulty to tell between a corrupted and a working file, between the limits of official documentations and the reality of the malware landscape. Finally, consequences for security software are presented, and the implications for the end-user.