Abstract
Product vendors sometimes develop their own cryptographic algorithms to either protect their intellectual property or ensure information confidentiality (data or communications). Many of these algorithms have been proven to contain critical weaknesses which defeat their purpose, weaken security and might expose customer data or systems.
Most research on home-made algorithms is usually done through reverse engineering of the hardware or software parts implementing these cryptographic primitives. This article tackles a different approach on an unknown and simple algorithm.
During the study of an embedded system firmware, the author was not allowed to tamper with the targeted product. With hardware-based attacks or research out of the equation, this article proposes a first-hand account on how black-box cryptanalysis was performed on a custom algorithm in order to retrieve a 40 MB firmware from an 18 MB compressed and encrypted image.
The author discloses approaches, methods, ideas and tools developed throughout the part-time 6-weeks process, and discusses explored ideas and attacks which proved to be either successful or dead-ends.
Résumé
Les constructeurs de produits développent parfois leurs propres algorithmes cryptographiques pour protéger soit leur propriété intellectuelle, soit la confidentialité de certaines informations (données stockées ou communications). Nombre de ces algorithmes présentent des faiblesses les rendant inutiles, abaissant la sécurité et mettant potentiellement en danger les données et systèmes de leurs utilisateurs.
La plupart de la recherche effectuée sur des algorithmes propriétaires se base sur la rétro-ingénierie des composants matériel ou logiciel implémentant leurs primitives cryptographiques. Cet article prend une approche différente sur un algorithme simple et inconnu.
Lors de l'étude du micrologiciel d'un système embarqué, l'auteur n'était pas autorisé à ouvrir ou modifier matériellement le produit. Les attaques matérielles étant donc exclues, cet article relate la manière dont a été effectuée la cryptanalyse, en boite noire complète, dans le but de récupérer le firmware de 40 Mo uniquement à partir d'une image compressée et chiffrée de 18 Mo.
L'auteur détaille l'approche, les méthodes, les idées et les outils développés pendant les 6 semaines du processus. Les idées et attaques mises en œuvre sont toutes présentées, y compris les tentatives infructueuses.