2023 s'annonce comme une année mouvementée pour la cryptographie. Nous allons probablement commencer à voir nos premières certifications pour FIPS 140-3 et des explorations plus sérieuses du impact de l'informatique quantique sur le chiffrement. De plus, nous verrons plus de protections contre les puissantes attaques DFA qui, autrement, tourmentent les cryptographes. 2023 pourrait même être l'année la plus excitante en cryptographie depuis 2001, lorsque la (alors) nouvelle spécification Advanced Encryption Standard (AES) a été finalisée, mettant à la disposition du public un algorithme de chiffrement mathématiquement sûr et performant.
Conçu pour remplacer les anciens algorithmes cryptographiques qui commençaient à montrer des faiblesses dans leurs calculs et à être vulnérables à la puissance de calcul croissante disponible pour les attaquants, AES a remis le pouvoir entre les mains de ceux qui essayaient de protéger leurs données. Les attaquants ont rapidement reconnu que les attaques par force brute et les attaques sur les calculs d'AES allaient être inefficaces et qu'ils avaient plutôt besoin d'une nouvelle approche.
Avec le premier article de recherche sur le sujet publié en 2002, l'analyse différentielle des défauts, ou DFA, est une technique d'attaque conçue pour récupérer les clés cryptographiques des applications en injectant des « défauts » dans le code cryptographique de l'application au moment de l'exécution et en observant les changements dans l'application. comportement. Un défaut consiste essentiellement à retourner un peu à l'intérieur d'un calcul interne et à observer ce qui change. Les défauts peuvent être injectés de diverses manières, telles que la variation des niveaux de puissance dans les périphériques matériels ou la modification de bits de mémoire dans le logiciel.
Les attaquants injectent des défauts dans de nombreuses parties différentes de l'application jusqu'à ce qu'ils trouvent un endroit où un défaut modifie la sortie d'une opération de chiffrement d'une manière spécifique. En fonction de la façon dont la sortie de l'opération de chiffrement change, DFA et certains calculs peuvent permettre de récupérer les clés de chiffrement. Une fois ces clés récupérées, toutes les données chiffrées avec elles sont vulnérables et à risque.
À l'origine, DFA était une attaque principalement contre les périphériques matériels, où le code machine n'était pas facilement accessible aux attaquants. Le cas du logiciel était beaucoup plus simple, car les clés de chiffrement étaient généralement clairement visibles dans le code de l'application, où des outils tels que les désassembleurs pouvaient facilement s'afficher. Pendant longtemps, si un morceau de code faisait de la cryptographie, il était conservé dans un environnement sécurisé, où les attaquants ne pouvaient pas facilement regarder le code de l'application pour trouver ces clés. Premièrement, ces environnements étaient la propriété physique des entreprises technologiques. Aujourd'hui, chaque entreprise est une entreprise technologique, et la sécurité physique et « virtuelle » des technologies/logiciels/secrets/clés est dans la plupart des cas laissée entre les mains redoutables de géants tels qu'AWS, Google Cloud et Microsoft Azure.
L’autre différence à laquelle nous sommes confrontés en 2023 est qu’une grande partie de la technologie que nous créons ne réside ni dans le cloud bien protégé (nous supposons) ni dans les centres de données d’entreprise. Au contraire, les logiciels/technologies et même les clés se trouvent dans les applications que les consommateurs ont sur leurs téléphones mobiles, ordinateurs de bureau, téléviseurs intelligents et automobiles. Parce que acteurs de la menace Si vous pouvez désormais simplement consulter les instructions qui composent l'application, les applications logicielles ont besoin d'une protection pour leurs routines et clés cryptographiques. La cryptographie en boîte blanche a été introduite en 2002 pour répondre précisément à cette préoccupation, la même année où le premier article du DFA a été publié.
La cryptographie en boîte blanche a été introduite pour permettre de fournir des implémentations cryptographiques sécurisées dans des applications où les attaquants peuvent manipuler le code et les données à volonté. La cryptographie en boîte blanche est un moyen d'obtenir la même sortie pour une entrée donnée qu'une implémentation cryptographique normale, mais les éléments internes de la façon dont cela est fait sont complètement différents d'une implémentation cryptographique standard. Cela rend très difficile pour un attaquant de comprendre ce qui se passe. En raison de la difficulté qu'ils avaient à comprendre les implémentations de chiffrement en boîte blanche, en s'appuyant sur le succès du matériel, les attaquants ont commencé à utiliser DFA comme technique contre la cryptographie en boîte blanche dans les implémentations logicielles.
DFA est de plus en plus courant. Divers chercheurs en sécurité parlent des attaques DFA lors de conférences, ils mettent en œuvre des attaques DFA matérielles et logicielles et publient comment procéder. DFA n'est plus uniquement une attaque limitée aux universités ou aux laboratoires de sécurité haut de gamme. Les attaques du monde réel sont là, et avec la prolifération et la militarisation du code d'attaque, la fréquence des attaques signalées augmente.
Au fur et à mesure que DFA progresse en termes d'efficacité et de standardisation, il est impératif de s'assurer que vos défenses contre lui suivent le rythme et soient toujours capables de protéger les routines cryptographiques au sein de votre application. Vous pouvez prendre plusieurs mesures pour vous assurer que vous faites le maximum pour vous défendre contre les attaques DFA.
La première consiste à s'assurer que vous utilisez une implémentation de cryptographie moderne en boîte blanche, conçue pour se défendre contre DFA et testée par un tiers réputé. Étant donné que les attaques gagnent en sophistication au fil du temps, il est important d'utiliser une implémentation en boîte blanche qui est activement développée pour suivre le rythme des nouvelles attaques.
Deuxièmement, vous devez vous assurer que votre application utilise le blindage d'application (c'est-à-dire la protection dans l'application, c'est-à-dire obscurcissement du code, techniques anti-falsification et anti-code lift) pour rendre plus difficile aux attaquants de lancer une attaque DFA en premier lieu. Les applications avec obfuscation font qu'il est difficile pour les attaquants de comprendre où injecter des erreurs et les applications capables de reconnaître quand elles sont attaquées (c'est-à-dire les applications avec anti-falsification) peuvent immédiatement prendre des mesures pour arrêter l'attaque avant qu'elle ne progresse.
Pour en savoir plus sur la protection de vos applications mobiles, de bureau et de serveur, consultez notre Digital.ai Présentation de la solution de cryptographie White-Box.
Êtes-vous prêt à faire évoluer votre entreprise ?
Explorer
Quoi de neuf dans le monde de Digital.ai
Code d'obscurcissement d'une application Android
Découvrez l’importance de l’obscurcissement du code sur Android. Découvrez les avantages, les outils et les meilleures pratiques pour protéger votre adresse IP et améliorer la sécurité.
Résumé de l'incident CrowdStrike et de la prévention avec Digital.ai Solutions
Le 19 juillet 2024, une mise à jour de configuration logicielle défectueuse de…
Guide : Comment masquer le code
Apprenez à masquer efficacement le code dans ce guide complet. Découvrez l'importance de l'obscurcissement du code et explorez différents types et techniques.