Crypter les fichiers class pour empecher le reverse enginering?

Crypter les fichiers class pour empecher le reverse enginering? - Java - Programmation

Marsh Posté le 09-03-2003 à 18:53:39    

:hello:   hello
 
C'est un projet de fin d'année pour l'iut tout en java
En gros c'est un truc pour gérer les qcms et le probleme c'est que dans notre code source se trouve un mot de passe pour la base de donnée et que point de vue securité c pas le pied !  :sweat:  
 
j'ai essayé rapidement retroguard mais ça m'a l'air bien compliqué ....
 
si vous connaissiez d'autre logiciel pour crypter les .class ou si vous un êtes un pro de retroguard aidez moi !!!  :jap:


Message édité par gros castor le 09-03-2003 à 18:54:11
Reply

Marsh Posté le 09-03-2003 à 18:53:39   

Reply

Marsh Posté le 09-03-2003 à 18:58:24    

change les privileges de l'user... pour ne pas lui en laisser faire plus que ce aurait pu laisser faire le programme?!


Message édité par slvn le 09-03-2003 à 18:58:37
Reply

Marsh Posté le 09-03-2003 à 18:59:15    

Slvn a écrit :

change les privileges de l'user... pour ne pas lui en laisser faire plus que ce aurait pu laisser faire le programme?!


 
 
chui pas sur que tu as compris la question  [:sacplastic]


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 09-03-2003 à 19:10:00    

DarkLord a écrit :


 
 
chui pas sur que tu as compris la question  [:sacplastic]  


 
si, j'ai bien capté
 
son programme permet de faire certaines "actions" sur la base,  
s'il limite en privilège le compte utilisé pour se connecter a la base, pour que ce compte ne donne droit que seulement aux "actions" en question, alors le mec qui décompile le programme et qui choppe le pass, n'aura pas plus de possibilité que lorsqu'il utilisait le programme. (gestion des privilège l'utilisateur quoi....)
 
(oui c chaud a lire mais c aussi chaud a écrire:)
 
...c une alternative a son pb, de toute facon, le cryptage on peut le niker aussi :d

Reply

Marsh Posté le 09-03-2003 à 20:10:55    

je vois ce que tu veux dire mais je m'y connait pas assez en sql
et je pensais qu'il existait des bons programmes pour crypter les .class
 
Sinon je vais quand même regarder du côté de sql, c'est qqch auquel je n'avais pas penser

Reply

Marsh Posté le 09-03-2003 à 20:33:32    

de toutes façons le mot de passe pour ta base faut bien qu'il soit quelque part [:spamafote]
pourquoi la personne qui a accès a l'appli ne pourrait pas avoir accès à la base?


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 09-03-2003 à 20:36:00    

the real moins moins a écrit :


pourquoi la personne qui a accès a l'appli ne pourrait pas avoir accès à la base?


 
Pour ne pas récupérer les réponses directement, tout simplement


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 09-03-2003 à 20:36:11    

J'y connais pas grand chose mas ce que tu pourrais faire c'est bidouiller pour que ton mdp ne soit pas en dur dans le programme ; genre des concatenations de chaines, ou des operations sur des chiffres, histoire de brouiller les pistes...
genre au lieu de : String mdp = "robert68";
faire StringBuffer x = new StringBuffer("ro" );
x.append("bert" );
String mdp = x.toString() + new Integer(68).toString();
 
Enfin tu vois l'idee quoi.

Reply

Marsh Posté le 09-03-2003 à 20:39:27    

kadreg a écrit :


 
Pour ne pas récupérer les réponses directement, tout simplement

ha vi :D


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 09-03-2003 à 21:09:14    

Citation :

J'y connais pas grand chose mas ce que tu pourrais faire c'est bidouiller pour que ton mdp ne soit pas en dur dans le programme ; genre des concatenations de chaines, ou des operations sur des chiffres, histoire de brouiller les pistes...  
genre au lieu de : String mdp = "robert68";  
faire StringBuffer x = new StringBuffer("ro" );  
x.append("bert" );  
String mdp = x.toString() + new Integer(68).toString();  
 
Enfin tu vois l'idee quoi.


 
oui je vois ou tu ve en venir mais y aura tjs kkun pour trouver
paske au final c pas trop dur a trouver :sweat:
 
le mieux serait quelquechose qui cache vraiment tout le code source, personne n'a jamais crypté ses fichiers .class ??? :)


Message édité par gros castor le 09-03-2003 à 21:10:18
Reply

Marsh Posté le 09-03-2003 à 21:09:14   

Reply

Marsh Posté le 09-03-2003 à 22:52:27    

Salut à tous !
J'ai le même problème une ptite app JAVA que j'ai faite, mot de passe de la BDD est en clair et me fodré un truc monstrueux pour coder les .class
Merci  :p

Reply

Marsh Posté le 09-03-2003 à 23:29:16    

vous pouvez utiliser des obfusactor (c'est ca le nom je crois) pour "salir" les .class de façon à ce qu'il doit difficile de retrouver quelque chose dans le code si on le décompile.
 
mais chacher une chaine en elle-même je sais pas comment faire ... parce que même si tu cripte, faudra toujours que tu mettent la clef quelque part en décrypté ... :/

Reply

Marsh Posté le 10-03-2003 à 00:02:52    

Ben, la solution de faire gérer des provilèges différents par le serveur de DB est la plus simple, je pense...Mais sinon, en pur java, tu peux faire un système client/serveur : si les classes du serveur sont sur une machine non accessible par les étudiants, il peut contenir le mot de passe DB. Et en plus, ça te permet d'ajouter un aspect stats/accès plus complet grâce à la centralisation des reqûetes.
 
Enfin, vu que c'est vraiment pas compliqué à faire, et que c'est pour un projet scolaire, faire une truc comme ça, en justifiant bien le choix technique, ben je trouverais que ça mériterai une bonne note! :D

Reply

Marsh Posté le 10-03-2003 à 03:37:46    

ou sinon tu crees simplement un compte sur la BDD qui n'a que des droits en "select" sur la table qui convient

Reply

Marsh Posté le 10-03-2003 à 08:13:57    

souk a écrit :

ou sinon tu crees simplement un compte sur la BDD qui n'a que des droits en "select" sur la table qui convient


ben ca suffit pour trouver la bonne réponse ca !

Reply

Marsh Posté le 10-03-2003 à 09:53:39    

a moins qu'il n'ait pas lui-meme les droits necessaires pour creer un tel utilisateur :-)

Reply

Marsh Posté le 10-03-2003 à 10:19:58    

tu ne peut pas simplement utiliser qq chose du style cryptix (qui permet de crypter des info en java) pour cruypter un fichier separer sur ton serv ou il y aurait ton mdp et tu generee la cle public que tu met avec ton prog => tu sait en interne recuperer le mdp mais il ne savait pas même en decompilant le .class le recuperer


---------------
la théorie c quant tout dois fonctionner mais rien ne marche                                 la pratique c quant tout marche mais personne ne c pourquoi                           ici on fais un bon compromis rien ne marche et personne ne c pourquoi :D
Reply

Marsh Posté le 10-03-2003 à 10:48:50    

Non, mais bon, avoir le mdp en dur dans le source, même trituré dans tous les sens, ou encodé dans un fichier texte, c'est pas très pratique : Imagine qu'un de tes examinateurs te pose la question de l'installation de ton machin...Tu tevois lui dire : "Il faut créer le compte user:password" dans la base de données sur le serveur machin"....Ben, s'i lest un tant soit peu sensé, il te répondra qu'aucun admin réseau ou système ne te laisserai faire ça dans la vraie vie...Les couples user/mdp, c'est dans un fichier de conf séparé, et si c'est crypté, un utilitaire de configuration est indispensable.
 
ouala, quoi...Ceci dit, l'idée de cryptix est bonne, si tu fais un petit machin pour modifier le mdp.....Mais bon, confier ce fichier aux utilisateurs, c'est pas à faire, si tu peux l'éviter.

Reply

Marsh Posté le 10-03-2003 à 13:59:02    

gros castor a écrit :

:hello:   hello
 
C'est un projet de fin d'année pour l'iut tout en java
En gros c'est un truc pour gérer les qcms et le probleme c'est que dans notre code source se trouve un mot de passe pour la base de donnée et que point de vue securité c pas le pied !  :sweat:  
 
j'ai essayé rapidement retroguard mais ça m'a l'air bien compliqué ....
 
si vous connaissiez d'autre logiciel pour crypter les .class ou si vous un êtes un pro de retroguard aidez moi !!!  :jap:


 
tu demande a ton appli de lire le mot ds passe ds un fichier binaire personne (a moins de vraiment s en donner la peine ) ne le trouveras...
 
sinon en obsfurcator t'a proguard mais bon ca servira a rien puisque les chaine sont en clair meme obsfurqué...


Message édité par veryfree le 10-03-2003 à 14:01:49
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed