Fichier Executable [Résolu]

Messages postés
45
Date d'inscription
dimanche 14 juin 2009
Statut
Membre
Dernière intervention
29 octobre 2009
- - Dernière réponse : cs_cantador
Messages postés
4996
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
- 26 août 2009 à 09:30
j'aimerais bien que quelqu'un peut me donner un coup de pouce pour construire un ficher seul executable
c a d cacher le SOURCE du Projet(pour la protection bien sur)
merci d'avance..
Afficher la suite 

7 réponses

Meilleure réponse
Messages postés
4996
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
8
3
Merci
@siahmedaek:
ta dernière remarque éclaire un peu plus
et c'est plus simple..

tu ne fournis que l'exécutable et de ce fait
l'utilisateur ne peut rien modifier
et pour l'accès à la base,
il faut tout crypter.

cantador

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 138 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_cantador
Messages postés
3982
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
7 novembre 2014
8
3
Merci
cantador ->

Bin voilà le genre de truc que l'on peut récupérer :


De ça on peut en comprendre l'algo général. On voit facilement 5 "call", qui sont des appels à des fonctions. En traçant les appels avec ntsd et les valeurs de retour, on détermine facilement que le premier appel renvoie le contenu d'un champ de texte, que le deuxième compare deux chaînes, que les deux suivant affichent une boite de dialogue, et que le dernier est sans intérêt. Après, au choix, on peut récupérer le mot de passe, "password", en regardant le deuxième argument passé à la fonction de comparaison, ou on peut supprimer le jne directement en le noppant (En écrasant le jne par des instructions no-operation).

Donc à la main, on peut retrouver ça :
si RecupContenu(ChampDeText) = 'password' alors
  Affiche('ok');
sinon
  Affiche('erreur');
fsi;


Mais ce n'est en aucun cas le vrai source qui est le suivant :
procedure TForm1.Button1Click(Sender: TObject);
begin
  if Edit1.Text = 'password' then
    ShowMessage('ok')
  else
    ShowMessage('erreur');
end;


Donc on ne récupère jamais le vrai source, et on ne le récupérera jamais vraiment, car des informations ont disparues à la compilation. On ne récupère que de l'assembleur que l'on peut traduire en source ou en pseudo source. Cela peut être exploité pour une étude limité d'un secteur de code ("Waouh ! Classe ! Comment ont ils fait ça ? Aaaaah, ils ont utilisé XXXX.") ou pour faire sauter une protection, mais de là à reconstituer un logiciel entier sous forme de source, il y a un boulot très long et plus ou moins proportionnel à la taille du logiciel.

Conclusion, livrer un .exe globalement sûr en ce qui concerne la récupération du source. Par contre si le logiciel a besoin d'une protection en lui même, il faut alors crypter le code machine.

Après, en plus, si on connaît le langage utilisé pour créer le .exe (Les désassembleur avancés détectent automatiquement le compilateur utilisé avec plus ou moins de précision), on peut en tirer plus facilement des informations. Pour le Delphi, on utilisera par exemple DeDe. Je ne l'ai jamais essayé, mais il a l'air capable de produire des .dfm, voir un projet Delphi complet, bien qu'avec de l'assembleur, et incompilable.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 138 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_rt15
Messages postés
3982
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
7 novembre 2014
8
0
Merci
Salut,

Un fichier exécutable ne contient pas le source.
Si tu cherches à empêcher le désassemblage, c'est peine perdue. Il n'y a aucune méthode vraiment efficace à ce niveau, car à un moment ou a un autre, il faut que le processeur soit capable de lire le code pour l'exécuter, donc le pirate peut le lire aussi à ce moment là.
Commenter la réponse de cs_rt15
Messages postés
4996
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
8
0
Merci
bonjour,

@rt15:
pas bien saisi...
si seul l'exe est fourni,
le désassemblage ne permet pas de retrouver le source ?

à moins que...

cantador
Commenter la réponse de cs_cantador
Messages postés
45
Date d'inscription
dimanche 14 juin 2009
Statut
Membre
Dernière intervention
29 octobre 2009
0
Merci
l'ai besoin seulement de cacher le source
pour que l'utilisateur ne peut pas le modifier ou le copier...
ya t'il une methode?
Commenter la réponse de siahmedaek
Messages postés
45
Date d'inscription
dimanche 14 juin 2009
Statut
Membre
Dernière intervention
29 octobre 2009
0
Merci
ya des logiciel que l'on voie pas des Unit et des form juste les tables
forcement il ya une astuce
Commenter la réponse de siahmedaek
Messages postés
4996
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
8
0
Merci
oui, nous sommes d'accord..
on peut effectivement récupérer des éléments mais pas complètement le source d'origine (c'est ce que je voulais dire..)
et si on fait quelques efforts sur la protection alors ça devient très vite compliqué de récupérer
des infos.


cantador
Commenter la réponse de cs_cantador