[Reverse Engineering] Cracker des softs Windows avec ProcMon

 

 

L'art du Reverse Engineering (Ingénierie inversée), consiste à observer le comportement de quelques choses, matériel ou immatériel, pour en détourner l'usage ...

Vous pourrez par exemple faire en sorte qu'un logiciel payant devienne gratuit ...
Ou bien faire en sorte d'accéder à des données confidentielles cachées dans ledit logiciel (comme des portes dérobées dans des caméras de surveillance ;) ).
Modifier le comportement d'un programme pour en ajouter ou customiser les fonctionnalités !

...etc...

Lorsque je vous parle d'une observation, il faut prendre en compte qu'un logiciel, un programme, ou un objet, doit être analysé sous toutes ses coutures, et qu'il n'y a donc pas une seule et unique méthode universelle.

 

Quelques manières de faire

Certains analyseront tous les fichiers du logiciel à la recherche d'informations, de configuration.
D'autres regarderont plutôt ce qui se passe sur le réseau ...
Les plus déterminés, sortiront un éditeur hexadécimal et un désassembleur pour éplucher les fichiers binaires, un truc que j'aime bien faire, et qui me ramène avec Nostalgie à me rappeler des tutoriels de Deamon Crack
Pour terminer il y a ceux qui analyseront l'impact (les modifications) généré par le logiciel sur le système (décortiquer la base de registres par exemple)

Un outil fabuleux fourni par Microsoft pour Windows

Ce n'est pas tous les jours que j'envoie des fleurs à Microsoft, mais là clairement, j'ai découvert l'un de leurs outils il y a peu, et je suis tombé sur le cul ... (désolé pour les âmes sensibles)

Cet outil c'est PocMon (Process Monitor) disponible sur le site de Microsoft ici :
https://technet.microsoft.com/en-us/sysinternals/processmonitor

S'il venait à disparaître, voici une Sauvegarde

Concrètement, grâce à cet outil vous aurez la possibilité d'analyser tout ce que va faire un programme !

  • Les clés de registres qu'il ajoutera / modifiera / consultera
  • Les fichiers qu'il écrira / modifiera / consultera
  • ...

Toutes ces informations qui vous seront utiles pour comprendre le fonctionnement d'un programme.

Je vous laisse constater ce qu'il est possible de faire en vidéo

Cas d'exemple

Pour cracker un programme, il faut se mettre dans la peau du développeur, essayer de comprendre comment celui-ci a réfléchi la sécurité de son programme.

Lorsqu'un programme s'ouvre celui-ci ira peut-être chercher dans la base de registres si une valeur lui indiquera que le programme a bien été acheté et enregistré ?
Peut-être ira-t-il ensuite faire une requête sur un serveur pour voir si la clé qu'il a en mémoire est valide

....

 

Conclusion

 

N’hésitez pas à tester cet outil et faire des petits retours en commentaire.
Il est possible qu'il existe des alternatives Open Source, n’hésitez pas non plus à partager tout cela ici.

Je vous souhaite une bonne journée !

Partagez ce contenu

2 comments

  • C’est un logiciel très connu du côté de Malekal. On s’en sert pour observer les programmes malicieux, comprendre leurs comportements etc… Ou tout simplement pour vérifier si un programme est un virus ou autres.

    • C’est vrai ;)
      L’analyse d’un malware est une forme de reverse Engineering, il est donc possible en effet que les méthodes et les
      outils soit souvent les mêmes ^^
      Si le cœur t’en dis, tu pourrais nous partager peut être un « paper » de comment analyser un virus ^^

Laisser une réponse

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *