In May 2012, a highly advanced malware for espionage dubbed Flame was found targeting the Middle-East. As it turned out, it used a forged signature to infect Windows machines by MITM-ing Windows Update. Using counter-cryptanalysis, Stevens found that the forged signature was made possible by a chosen-prefix attack on MD5 \cite{DBLP:conf/crypto/Stevens13}. He uncovered some details that prove that this attack differs from collision attacks in the public literature, yet many questions about techniques and complexity remained unanswered. In this paper, we demonstrate that significantly more information can be deduced from the example collision. Namely, that these details are actually sufficient to reconstruct the collision attack to a great extent using some weak logical assumptions. In particular, we contribute an analysis of the differential path family for each of the four near-collision blocks, the chaining value differences elimination procedure and a complexity analysis of the near-collision block attacks and the associated birthday search for various parameter choices. Furthermore, we were able to prove a lower-bound for the attack's complexity. This reverse-engineering of a non-academic cryptanalytic attack exploited in the real world seems to be without precedent. As it allegedly was developed by some nation-state(s) \cite{WashingtonPost_Flame,kaspersky_flame,crysis_flame}, we discuss potential insights to their cryptanalytic knowledge and capabilities.

, , , ,
Springer
T. Iwata , J.H. Cheon
doi.org/10.1007/978-3-662-48800-3_24
Lecture Notes in Computer Science
Counter-cryptanalysis of Cryptologic Primitives
Annual International Conference on the Theory and Applications of Cryptology & Information Security
Cryptology

Fillinger, M., & Stevens, M. (2015). Reverse-Engineering of the Cryptanalytic Attack Used in the Flame Super-Malware. In T. Iwata & J. H. Cheon (Eds.), Advances in Cryptology, ASIACRYPT 2015, Proceedings, Part II (pp. 586–611). Springer. doi:10.1007/978-3-662-48800-3_24