Skip to Content
Nouvelle version 12 disponible 🎉
ObfuscatorChiffrement des valeursRésistance à la désobfuscation

Résistance à la désobfuscation

Une fois une constante chiffrée, sa valeur réelle ne figure plus dans le corps de méthode : l’IL ne contient qu’un index dans une table chiffrée, déchiffrée à l’exécution. Un décompilateur affiche donc des index opaques à la place des nombres ou du contenu des tableaux d’origine.

Le chiffrement des valeurs et des tableaux de Babel est vérifié face aux principaux outils open source de désobfuscation .NET. Les exécuter sur un assembly protégé ne permet pas de récupérer les valeurs chiffrées : les constantes d’origine n’apparaissent pas sous forme de littéraux dans la sortie nettoyée, l’indirection de déchiffrement reste en place et la table de données chiffrée reste nécessaire. La protection tient.

Pour un résultat optimal, combinez le chiffrement des valeurs et des tableaux avec les autres couches de protection (le renommage des symboles, le chiffrement des chaînes, l’obfuscation du flux de contrôle et le chiffrement du code), afin qu’aucune couche, une fois analysée, ne révèle à elle seule l’ensemble.

Last updated on