Une classe d’ing?nierie inverse est le concept utilis? pour l’observation, l’?tude et la compr?hension de tout programme logiciel sp?cifique ou large. L’ing?nierie inverse est le terme appliqu? ? la fa?on dont les ?tudiants d?couvrent un programme logiciel, un appareil ?lectronique ou un objet m?canique particulier en le d?montant et en examinant son fonctionnement. Il existe un certain nombre de techniques diff?rentes qui sont adopt?es par les r?tro-ing?nieurs, telles que le piratage pour obtenir le code source d’un logiciel. Apprendre l’art de l’ing?nierie inverse n’est en aucun cas une t?che facile, car l’?tudiant devra apprendre le processus de travail en arri?re ? travers un programme pour voir comment cela fonctionne.
Afin de choisir le meilleur cours d’ing?nierie inverse, assurez-vous qu’il enseigne ? l’?tudiant la structure x86, les comp?tences en programmation et que l’enseignant poss?de une solide connaissance de base des circuits logiques num?riques. Les portes logiques telles que OU, ET, NON et bien d’autres, telles que XOR, XNOR et NAND doivent toutes ?tre couvertes dans la salle de classe. La prochaine ?tape importante et significative vers l’apprentissage de l’ing?nierie inverse est la compr?hension des fonctionnalit?s des diff?rents logiciels et programmes, tels que Driver Studio, Visual Basic, Java Cracking Software et d’autres tels que SoftICE. Il est extr?mement important de comprendre et de se familiariser avec les logiciels de d?veloppement et de piratage polyvalents et de garder tous les outils bien r?gl?s, de sorte que le meilleur cours de r?tro-ing?nierie couvrira tous ces aspects en profondeur.
Plusieurs strat?gies et aspects de protection devraient ?galement ?tre couverts dans la classe d’ing?nierie inverse, tels que les protections par mot de passe, les protections mat?rielles, l’activation/la d?sactivation de fonctions et d’autres programmes de s?curit? commerciaux. La s?curit? et la protection sont le premier mur que les r?tro-ing?nieurs doivent franchir pour r?ussir. Il existe de nombreuses strat?gies de protection et de confidentialit? adopt?es par les d?veloppeurs de logiciels et les entreprises, de sorte que la classe doit en avoir une connaissance approfondie et ?tre capable d’enseigner comment les contourner ou les parcourir.
Les concepts de base et la connaissance du langage assembleur et de ses applications sont ?galement des pr?requis pour un cours de r?tro-ing?nierie. L’?tudiant devra ?galement se familiariser avec les d?bogueurs, les d?sassembleurs et autres logiciels utilitaires. Le concept de base et l’id?e sur les diff?rents aspects et vuln?rabilit?s des violations de s?curit? sont obligatoires pour les ?tudiants en r?tro-ing?nierie. Les autres techniques qu’ils devraient enseigner sont la recherche de vuln?rabilit?s, l’?valuation des solutions et l’utilisation de langages de haut niveau, tels que les codes d’assemblage et de signature binaire.