Jump to content
Chevrosky

Reverse Code Engineering pour les Nuls : Introduction

Recommended Posts

Salut!

 

 

Je tiens d'abord a remercier el-farouk pour l'idée, Maverick pour son enthousiasme, et Samir_dz pour l'espace et la compréhension. :D

 

 

Reverse Code Engineering est un art d'une extreme vitalité pour les professionnels et les experts de la sécurité d'aujourd'hui.De la rétro-ingénierie d'un malware à la découverte des vulnérabilités dans un binarie, un tel savoir est exigé de nos jours afin de pouvoir sécuriser convenablement une organisation dans un monde ou l'évolution des menaces est en perpétuelle croissance ( plus de 1 millions de virus en 1998 d'apres les laboratoires de Kaspersky).

 

 

 

Reverse Code Engineering est une compétence essentielle ?

 

 

Les pirates utilisent de plus en chevaux de Troie personnalisés qui ne sont pas détectés par les antivirus. En outre, de nombreux programmes binaires contiennent des vulnérabilités, telles que les dépassements de tampon et de l'utilisation de très faibles algorithmes cryptographiques. La seule facon de découvrir ces vulnérabilités critiques pour les programmes de closed-source ( le contraire d'open source) est bien le reverse code engineering.

Le RCE est également nécessaire afin de comprendre les mécanismes complexes de l'obscurcissement binaires utilisés par les fournisseurs de protection contre la copie, ainsi que l'obscurcissement mis en place par les éditeurs de logiciels commerciaux.

 

 

Dans cette section, vous apprendrez les connaissances d'analyse binaires nécessaires pour découvrir la vraie nature de tout binaire Windows ( Rappelez vous qu'un Logiciel freeware ne veut pas dire Open Source), vous apprendrez également comment reconnaitre la construction des langages de haut niveau ( branching statements (if, else, switch), looping functions et le code socket réseau), essentiels à l'exécution d'une analyse consciencieuse et professionnelle d'un binaire.

 

 

En somme, vous apprendrez :

 

- Comprendre les états de branchement conditionnel

 

- Identification des variables

 

- Gestion de la mémoire

 

- Formats d'exécutable de Win32

 

- Fondements de l'IDA Pro

 

- Utilisation avancée de l'IDA Pro avec le code hostile

 

- Utilisation d'OllyDbg pour l'analyse d'exécution de logiciels malveillants

 

- Mode débogage du noyau (Kernel) avec SoftICE (ring 0)

 

- Dump d'un exécutables à partir de la mémoire

 

- Localisation des API non documentées

 

- Le Reversing de ntdll.dll

 

- Obfuscation de formats de fichiers

 

- Comprendre les fonctions de hachage

 

- Travailler avec des fichiers binaires cryptées

 

- Unpacking ( décompression ) d'UPX et d'autres types de compression (ACProtect, ASProtect, Armadillo, Obsidium, Themida, PCGuard, etc)

 

- Découvrir les débordements de pile

 

- Suivi des modifications du Registre

 

- Contrecarrer le code anti-debugger

 

- Débogage des programmes multi-thread , etc

 

 

 

Après avoir appris ces connaissances préliminaires importantes, vous avancerez à l'analyse de :

 

 

- Code hostile & Malware ( vers, virus, chevaux de Troie, les rootkits et les bots ) .

 

- Vulnérabilités dans les binaires ( des vulnérabilités de chaine de format, les conditions de dépassement de mémoire tampon, et l'identification des lacunes des schémas cryptographiques).

 

- Les schémas d'obscurcissement binaires utilisés par : ( les Pirates informatiques, les concepteurs de Trojans et les algorithmes de protection contre la copie ).

 

Vous apprendrez supplémentairement comment reconnaitre les caractéristiques des compilateurs (optimiseurs) modernes ( la famille gcc 4.x et l'omniprésent Visual Studio. NET).

 

 

 

 

 

 

 

PS : Le prochain post sera consacré a l'assembleur

 

http://fr.wikipedia.org/wiki/Assembleur

  • Like 7

Share this post


Link to post
Share on other sites
snip

 

Salam,

 

Peut tu faire une traduction à l'algérienne pour cet article? histoire de le rendre comestible pour nos tète (nous les V.I.N. ou Very Ignorant Newbies)

Share this post


Link to post
Share on other sites

Merci pour cette introduction, que je trouves un peu orientée.

Si vous permettez chevrosky, j'estimes qu'il faut aussi expliquer et rappeler ce que signifie "Reverse Engineering" globalement en omettant le mot code, notement pour les nuls(titre du sujet oblige) j'aurais préféré pour débutants. on indiquant ce lien Wikipedia :http://en.wikipedia.org/wiki/Reverse_engineering ou http://fr.wikipedia.org/wiki/R%C3%A9tro-ing%C3%A9nierie

 

J'attends votre prochain post.

 

mes salutations

Edited by MoiAtmane
add lien

Share this post


Link to post
Share on other sites

Parmi les points d'entrée de ce monde, peut être le désassemblage (IDA ou windasm (je sais pas si il obsolète celui là :) ), approche dead list donc et live approach (softice).

:)

Share this post


Link to post
Share on other sites
Parmi les points d'entrée de ce monde, peut être le désassemblage (IDA ou windasm (je sais pas si il obsolète celui là :) ), approche dead list donc et live approach (softice).

:)

 

Est ce que tu as appris a faire la différence entre un désassmbleur et un debuggeur en mode noyau ? Softice est mort depuis 2006, on peut citer quelques remplaçant , à savoir http://rr0d.droids-corp.org/, qui est open source. http://www.sysersoft.com/ qui nécessite une license, mais un excellent remplacant. TRW 2000 http://www.knlsoft.com/ payant aussi, pourtant il était gratuit les premiers temps de son developpement. Dans le pire des cas y'a le WinDbg de chez windows dispo sur http://www.microsoft.com/whdc/devtools/debugging/default.mspx.

En ce qui concerne l'approche, je pralais de la mienne concernant la facon dont je comptais animer cette section du forum.

 

 

 

PS: http://www.linice.com/ un clone, mais sous Linux. ;) Je vous promets qu'on touchera a tout ( Windows + Linux + Mac OS x), alors s'il vous plait, soyez patients!

 

Merci!

Edited by Chevrosky

Share this post


Link to post
Share on other sites
En ce qui concerne le titre de l'article, un lien comblera surement des lacunes

 

je voulais juste dire qu'une étape vous a échappé dans l'introduction compte tenu du titre sans plus, mais bon, une mise au point est toujours bienvenue. (ceci témoigne mon intéressement à cette rubrique)

bonne continuation et merci !

Share this post


Link to post
Share on other sites
je voulais juste dire qu'une étape vous a échappé dans l'introduction compte tenu du titre sans plus, mais bon, une mise au point est toujours bienvenue. (ceci témoigne mon intéressement à cette rubrique)

bonne continuation et merci !

 

MoiAtmane, je vous remercie pour l'interet que vous portez pour cette séction

, sachez que vos remarques et vos mises au point seront toujours les bienvenue.Merci!

 

Merci j'att tes cours

sinon ça c'est pas pour les NULL !

faut au moi étre nul ;)

 

;)

Share this post


Link to post
Share on other sites
Peut tu faire une traduction à l'algérienne pour cet article? histoire de le rendre comestible pour nos tète (nous les V.I.N. ou Very Ignorant Newbies)

 

Salut,

Le problème c'est que le sujet est un peu complexe. Pas évident de l'expliquer à des débutants en informatique, il faut avoir un minimum de pré-requis (en système d'exploitation) et de pratique (en programmation).

Share this post


Link to post
Share on other sites
Salut,

Le problème c'est que le sujet est un peu complexe. Pas évident de l'expliquer à des débutants en informatique, il faut avoir un minimum de pré-requis (en système d'exploitation) et de pratique (en programmation).

 

Si je suis la, c'est surement pour relever le défis, quitte à faire des tutorials en dialecte algérien.

  • Like 1

Share this post


Link to post
Share on other sites
Salut!

 

 

Je tiens d'abord a remercier el-farouk pour l'idée, Maverick pour son enthousiasme, et Samir_dz pour l'espace et la compréhension. :D

 

 

Reverse Code Engineering est un art d'une extreme vitalité pour les professionnels et les experts de la sécurité d'aujourd'hui.De la rétro-ingénierie d'un malware à la découverte des vulnérabilités dans un binarie, un tel savoir est exigé de nos jours afin de pouvoir sécuriser convenablement une organisation dans un monde ou l'évolution des menaces est en perpétuelle croissance ( plus de 1 millions de virus en 1998 d'apres les laboratoires de Kaspersky).

 

 

 

Reverse Code Engineering est une compétence essentielle ?

 

 

Les pirates utilisent de plus en chevaux de Troie personnalisés qui ne sont pas détectés par les antivirus. En outre, de nombreux programmes binaires contiennent des vulnérabilités, telles que les dépassements de tampon et de l'utilisation de très faibles algorithmes cryptographiques. La seule facon de découvrir ces vulnérabilités critiques pour les programmes de closed-source ( le contraire d'open source) est bien le reverse code engineering.

Le RCE est également nécessaire afin de comprendre les mécanismes complexes de l'obscurcissement binaires utilisés par les fournisseurs de protection contre la copie, ainsi que l'obscurcissement mis en place par les éditeurs de logiciels commerciaux.

 

 

Dans cette section, vous apprendrez les connaissances d'analyse binaires nécessaires pour découvrir la vraie nature de tout binaire Windows ( Rappelez vous qu'un Logiciel freeware ne veut pas dire Open Source), vous apprendrez également comment reconnaitre la construction des langages de haut niveau ( branching statements (if, else, switch), looping functions et le code socket réseau), essentiels à l'exécution d'une analyse consciencieuse et professionnelle d'un binaire.

 

 

En somme, vous apprendrez :

 

- Comprendre les états de branchement conditionnel

 

- Identification des variables

 

- Gestion de la mémoire

 

- Formats d'exécutable de Win32

 

- Fondements de l'IDA Pro

 

- Utilisation avancée de l'IDA Pro avec le code hostile

 

- Utilisation d'OllyDbg pour l'analyse d'exécution de logiciels malveillants

 

- Mode débogage du noyau (Kernel) avec SoftICE (ring 0)

 

- Dump d'un exécutables à partir de la mémoire

 

- Localisation des API non documentées

 

- Le Reversing de ntdll.dll

 

- Obfuscation de formats de fichiers

 

- Comprendre les fonctions de hachage

 

- Travailler avec des fichiers binaires cryptées

 

- Unpacking ( décompression ) d'UPX et d'autres types de compression (ACProtect, ASProtect, Armadillo, Obsidium, Themida, PCGuard, etc)

 

- Découvrir les débordements de pile

 

- Suivi des modifications du Registre

 

- Contrecarrer le code anti-debugger

 

- Débogage des programmes multi-thread , etc

 

 

 

Après avoir appris ces connaissances préliminaires importantes, vous avancerez à l'analyse de :

 

 

- Code hostile & Malware ( vers, virus, chevaux de Troie, les rootkits et les bots ) .

 

- Vulnérabilités dans les binaires ( des vulnérabilités de chaine de format, les conditions de dépassement de mémoire tampon, et l'identification des lacunes des schémas cryptographiques).

 

- Les schémas d'obscurcissement binaires utilisés par : ( les Pirates informatiques, les concepteurs de Trojans et les algorithmes de protection contre la copie ).

 

Vous apprendrez supplémentairement comment reconnaitre les caractéristiques des compilateurs (optimiseurs) modernes ( la famille gcc 4.x et l'omniprésent Visual Studio. NET).

 

 

 

 

 

 

 

PS : Le prochain post sera consacré a l'assembleur

 

http://fr.wikipedia.org/wiki/Assembleur

 

Merci l'ami pour ton sujet, moi même je pratique le reverse code engineering (pas simple à première vue) mais cette pratique requiert une méthodologie très spécifique. J'ai des docs en PDF je vais voir si je peux les retrouver et les poster ici.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.




  • Posts

    • Hello les jeunes,   J'ai acquis ce modem hier et je cherche le meilleur firmware a installer, d'origine il y a le ME1.16.   Merci
    • Que dit la religion islamique sur la femme? Le Coran met en avant une condition valorisée de la femme. Historiquement, l'Islam a été la première culture à admettre par exemple la totale indépendance financière de la femme, à lui accorder des droits codifiés, que même certaines parties de l'Europe d'aujourd'hui leur refuse (le vote par ex.). Dans l'idéologie islamique, la femme n'a jamais été un objet purement sexuel, à contrôler, à voiler, à exclure de la vie sociale. Et les quelques versets coraniques ci-dessus le disent bien (voir supra). Qu'on n'accuse pas la position de l'Islam, et ni la présentation qui en est ici faite sur ce “problème” de la femme, de faire l'amalgame entre la condition de femme et la condition de mère......Ce n'est pas l'égalité quantitative, extérieure (concept humain) que l'Islam préconise, mais plutôt une équité, une justice, un sentiment de complémentarité entre l'homme et la femme, au sein de la famille et de la société en général. La femme, avant d'être une mère, est un être humain, différent de l'homme de par sa nature même. Dieu, notre Créateur Sublîme, sait mieux que quiconque les forces et les faiblesses de ses créatures. L'homme, ou la femme, ne peuvent avec nos sens limités, embraser la science de Dieu. Il recommande à la femme de préserver sa pudeur, avant son mariage, et qu'après son mariage, le rôle de la femme le plus sacré et le plus essentiel est de veiller au bien-être et à l'harmonie du foyer, à l'éducation des enfants et au bonheur de sa famille. Énormes responsabilités, pour quiconque réfléchit aux implications qu'elles comportent. Mais l'Islam ne s'oppose pas au travail de la femme, mère ou célibataire, en dehors de son foyer (en accord avec son mari). Si cela est une nécessité pour le bien-être du couple. Les deux grands principes à respecter, principes imposées par Dieu, mais qui découlent de la logique: le travail exercé par une musulmane doit préserver sa dignité et sa pudeur, tout autant que sa vie de famille (qui ne doit jamais être négligée). Vous avez raison! Ces mêmes principes s'appliquent à l'homme aussi! Mais un détail qui a son importance: l'Islam ne fait aucune obligation à la femme de dépenser (sauf si elle le veut) le salaire de son travail pour l'entretien de sa famille: son salaire ou son héritage lui appartient exclusivement. Obligation est faite par contre à l'homme de subvenir aux besoins de sa famille par le fruit de son travail. Il faut le rappeler. Le principe général est que tout ce qui touche à la vie du couple et de la famille doit se faire en concertation; et que le mari a la responsabilité de la décision finale, car compte lui sera demandé sur cette responsabilité. Mais, dira-t-on, pourquoi “la prééminence à l'homme sur la femme”? Pourquoi “la femme obtient le tiers de l'héritage de l'homme”? Pourquoi ceci, pourquoi cela? Tout a une réponse. Notre Créateur, dans Son infinie Sagesse, a prévu ce qu'il fallait prévoir, et a fait silence ailleurs. Rien n'est fortuit. Mais, la globalité de ce problème ne peut certes être exposée en quelques lignes, il faut le relier à une autre religion, autre histoire, autre culture, les exposer en préliminaire et ce n'est pas peu dire! Vous savez le mot “autre”? L'”autre”, est un mot que l'occidental connaît peu. Cet “autre” qui est différent, donc, forcément coupable. Nous, musulmans et musulmanes, acceptons l'ensemble du message coranique. Et nous ne faisons aucun accommodement, c'est la Parole de Dieu, incréée et éternelle. Dieu sait mieux, c'est tout. Nous faisons acte d'Islam non par foi aveugle, mais par acceptation de la cohérence de l'ensemble des principes de Dieu dans le Coran, car nous restituons le problème dans ce cadre et non selon l'étroite vision occidentale Que dit l'Islam sur la Femme ? Rachid El jay - YouTube https://www.youtube.com/watch?v=EoadRQHHYg4 Pour Les Femmes: Regardez Cette Vidéo et Vous Convertirez Certainement à l'Islam! https://www.youtube.com/watch?v=kSSm4fCjt6Q
    • depuis le coronavirus les sites en ligne....explosent en voici encore un autre: https://www.smarketalgerie.com/
×
×
  • Create New...