IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI Delphi Discussion :

empecher de dechiffrer le contenu du fichier executable de Delphi


Sujet :

EDI Delphi

  1. #1
    Membre chevronné Avatar de jeffray03
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2008
    Messages
    1 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 501
    Points : 2 120
    Points
    2 120
    Par défaut empecher de dechiffrer le contenu du fichier executable de Delphi
    Salut tout le monde, comment faire pour que le fichier executable de delphi ne contienne que code assembler, permettant a quiconque voudrait le desassembler de ne pas avoir le code en clair.
    je sais qu´il ya une facon de mettre le compilateur ON ou OFF.
    mais je n´ai aucune idée de comment faire.
    Merci d´avance pour votre aide si precieuse

  2. #2
    Membre confirmé
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Février 2006
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : Belgique

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2006
    Messages : 537
    Points : 460
    Points
    460
    Par défaut
    Bonjour,
    à voir tes deux poste qui parlent de sécuriser une application, je me dis que le mieux, si tu as un peu de temps, c'est de te renseigner, apprendre, essayer le côté obscur de la force afin de comprendre comment travaillent les softs de piratage et voir ce qui ce récupère réellement.
    Ceci dans un but pédagogique bien entendu.

    Pour ce faire, Google est ton ami, moi je ne peux pas te conseiller de sites.

    André

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    398
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 398
    Points : 645
    Points
    645
    Par défaut
    il n'y a rien à faire... les exe win32 de Delphi ne contiennent JAMAIS ton code source

    par contre ils embarquent les DFM de tes fiches sous forme de ressources donc on pourra effectivement les récupérer, ils existent des composants pour crypter mais bon ce n'est pas super utile...

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 71
    Points : 43
    Points
    43
    Par défaut
    Bonjour,

    comment faire pour que le fichier executable de delphi ne contienne que code assembler
    Une fois ton exe compiler, il est possible de receuillir des informations.
    Par exemple, pour delphi, il existe DEDE Decompiler, tres bon soft qui permet de repérer tres facilement les procédures interressente pour reverser une application delphi(la modifier).
    Ensuite, une fois que cette procédure est repérer, ont y récupère les adresses pour y poser des "break point" dans un désassembler/Debugger qui va permettre d'analyser la routine pas à pas pour en comprendre son fonctionnement.
    " OllyDbg, Ida, SyserDebugger" (qui sont de tres bon outils)
    Pour éviter cela, ou plûtot pour faire perdre un peu de temps au reverser, il faut penser au anti-debug de type "furtif"...
    Penser à crypter ou packer l'executable qui permettent de ne pas révéler le point d'entrée originale du binaire (le point d'entrée seras celui du crypter d'exe).
    " Armadillo, Themida, FSG, PECompact..."
    Pense aussi à introduire des checksum qui peuvent provoquer un dysfonctionnement de l'application (à ton choix) si celle-ci se vois modifier (assez repérable tous de même).

    Pour en finir vite fais, car je ne vais pas passez mon temps sur ce post, il existe beaucoup de techniques pour protèger une application comme il en existe beaucoup pour la casser.
    Beaucoup d'outils, mêmes tres nombreux sont mis à la disposition du reverser.
    apprendre, essayer le côté obscur de la force afin de comprendre comment travaillent les softs de piratage et voir ce qui ce récupère réellement.
    Pour comprendre, il n'y as pas 36 solutions, c'est d'apprendre.
    Il ne s'agit pas d'un coté obscure, mais de développer ses connaissances, sa curiosité car ça vaut le détour pour apprendre à coder les protections.
    Pour t'y inspirer, tu peut toujours analyser les fameux " Keygen-Me, Crack-Me, Reverse-Me..." pour comprendre les diverses techniques mises en oeuvres pour protèger une appli.
    Je le répète, une protéction n'est fiable que dans une durée, elle ne le seras jamais à vie
    Si tu as d'autes questions, n'hesite pas !
    a++

  5. #5
    Membre chevronné Avatar de jeffray03
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2008
    Messages
    1 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 501
    Points : 2 120
    Points
    2 120
    Par défaut
    Merci yannfrance, je vien de commencer avec Delphi et j´essaie de savoir.
    c´est vrai que j´avais pas tres bien compris, mais maintenant tout est clair.
    j´aurais seulement voulu savoir si Delphi avait mis a la disposition des programmeur, une option a appliquer en debut du programme pour mettre le code en assembleur tout simplement.
    Mais apparemment tel n´est pas le cas.
    Merci de vos reactions.

  6. #6
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 770
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 770
    Points : 13 396
    Points
    13 396
    Par défaut
    Delphi génère du code machine (L'assembleur est déjà un language textuel).
    Pour t'en convaincre, tu n'as qu'à regarder dans les fenêtres de debugage, fenêtre CPU.

    Et si tu ouvres ton exe dans un bête éditeur, tu n'y verras aucune ligne en pascal.

    A noter que l'assembleur est amplement suffisant pour cracker un soft. Connaître le compilateur qui l'a généré n'a pas grand intérêt.

  7. #7
    Membre confirmé
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Février 2006
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : Belgique

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2006
    Messages : 537
    Points : 460
    Points
    460
    Par défaut
    Citation Envoyé par Andnotor Voir le message
    l'assembleur est amplement suffisant pour cracker un soft.
    +1

    André

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 71
    Points : 43
    Points
    43
    Par défaut
    l'assembleur est amplement suffisant pour cracker un soft.
    Ont va dire que ça en fait partie, mais çe n'est pas suffisant.
    Il faut impérativement maitriser les outils qui permettent l'analyse.
    Car lire du code assembleur, c'est bien, mais le lire sans l'analyser, c'est pas suffisant, d' ou l'interet du debugger qui permet d'analyser ligne par ligne, step by step le code désassembler pour calculer çe que contient les registres etc...
    La première protection, c'est de connaitre les outils mis à disposition du casseur.
    A partir de ce point là, il est toujours possible de développer une routine qui permet de détecter le desassembler/debugger et par exemple, une fois detecter, le binaire va orienter le casseur vers un code ou un algorythme qui permet de générer une fausse clé. (c'est un exemple parmi tant d'autre, il faut être creatif).
    Sachant que pour freiner le programme pour analyser une procédure interressante pour le casseur, il doit poser des "break point hardware", d' ou l'interet des anti HBP, mais il peut aussi utiliser des points d'arrets en accès sur la mémoire (Hardware break point on memory acces), ollydbg permet de faire cela.

    Connaître le compilateur qui l'a généré n'a pas grand intérêt.
    Oui, mais le langage à son importance pour le casseur.
    Tiens, essai d'analyser un binaire coder en c, et ensuite passe au VB, On distingue parfois une "difficulté" face au VB parce qu'ont dirais que c'est la m***e à l'interieur ...

    Enfin bref, tous ça pour dire qu'il y'as plusieurs techniques pour protèger une application et que pour les mettres en place, il vaut mieux y avoir de l'imagination

    Et si tu ouvres ton exe dans un bête éditeur, tu n'y verras aucune ligne en pascal.
    Ah oui, j'allais oublier, lors d'un desassemblage, les string sont afficher en clair, il est parfois utile de les crypter pour que les débutants puissent se décourager, mais possibilité de les décrypter lors de l'analyse, donc, c'est du kif kif au même bien que la plupart des casseurs n'y prête même plus attention, il attaque directement via les api utilisé par le prog.

    En faite, c'est pas pour te décourager, mais il faut voir à qui ton application vas être distribué, et voir les exigences de ton patron...

  9. #9
    Membre confirmé
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Février 2006
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : Belgique

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2006
    Messages : 537
    Points : 460
    Points
    460
    Par défaut
    Un truc juste pour rire:
    Faites une application qui communique avec une BDD et mettez le login/password en clair dans votre code et compilez.
    Ouvrez bloc note et dropez votre exe dedans... le login/password sont écrit en clair.

    André

  10. #10
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    707
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 707
    Points : 777
    Points
    777
    Par défaut
    Oui mais ça n'a rien à voir, là il s'agit de ressources.

  11. #11
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 770
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 770
    Points : 13 396
    Points
    13 396
    Par défaut
    Attention, je n'ai pas dit que le reverse engineering était simple. Je dis simplement qu'un MOV reste un MOV quelque soit le compilateur utilisé .

    parce qu'ont dirais que c'est la m***e à l'interieur
    A l'intérieur et à l'extérieur. C'est pour ça qu'on a choisi Delphi non

Discussions similaires

  1. Réponses: 3
    Dernier message: 26/10/2009, 13h32
  2. Lire le contenu dans fichier raccourci .lnk
    Par THALES dans le forum C++Builder
    Réponses: 2
    Dernier message: 11/10/2005, 12h37
  3. Importer le contenu un fichier xml dans un autre fichier xml
    Par gedeon555 dans le forum XML/XSL et SOAP
    Réponses: 5
    Dernier message: 27/07/2005, 11h49
  4. Récupérer contenu de fichier dans une variable
    Par peppena dans le forum Linux
    Réponses: 4
    Dernier message: 15/06/2005, 12h50
  5. Fichier executable linux
    Par DiGiTAL_MiDWAY dans le forum Déploiement/Installation
    Réponses: 8
    Dernier message: 14/03/2005, 23h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo