Protéger un mot de passe dans un executable

Résolu
cs_LiBe444 Messages postés 220 Date d'inscription dimanche 7 septembre 2003 Statut Membre Dernière intervention 7 avril 2007 - 6 juil. 2004 à 17:48
Super_Mat Messages postés 37 Date d'inscription jeudi 2 septembre 2004 Statut Membre Dernière intervention 31 août 2005 - 8 oct. 2004 à 14:46
Bonjour,

Lorsqu'un malin s'amuse à regarder dans un executable, il peut y trouver des choses interessantes...
J'ai besoin de garder un mot de passe au chaud et je le déclare de la manière suivante (pour connexion FTP) :
char* server="ftp.voila.fr",* password="grizzly7Ü}";
en regardant quelques secondes dans l'exe, le mot de passe est BIEN EN EVIDENCE!

Comment contourner ce problème?
Merci d'avance.
LiBe444

16 réponses

testtestiop Messages postés 16 Date d'inscription mercredi 26 novembre 2003 Statut Membre Dernière intervention 14 mars 2008
7 août 2004 à 18:08
code ton pass en AES (successeur de 3DES) par exemple, c un cryptage qui n'autorise pas de reverse, il faudra alors a la personne qui veut trouver ton mot de passe tester tous les mots de passe possible pour trouver le tient. Si tu le met suffisement long, il ne devrait pas y avoir de probleme.

voila voila voila

ps: ecoute pas les autres, j'ai lu trop de conneries sur ce thread :p
3
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
6 juil. 2004 à 18:55
suffit de fomer ta string de connexion a l'execution.

ciao...
BruNews, Admin CS, MVP Visual C++
0
MetalDwarf Messages postés 241 Date d'inscription mardi 29 octobre 2002 Statut Membre Dernière intervention 23 janvier 2006
6 juil. 2004 à 19:55
C est un probleme sans solution!!
meme si tu codes le mot de passe il suffit de desassembler ton exe pour trouver le code de decrypatge :-(.
C est un des nombreux problemes de securite helas......
0
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
6 juil. 2004 à 20:54
La solution la plus sure est de demander a l'utilisateur de rentrer le pass a chaque utilisation du programme.
Ou alors tu peux tout aussi bien sauvegarder le mot de passe sous une forme crypté.

Sinon comme Brunews te la conseillé, tu peux tout simplement creer ta string au depart ou encore créer un algorythme qui te genere le mot de passe a chaque execution du programme ce qui est un peu plus sure.

A++ et bonne continuation

Samir
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
xarier Messages postés 688 Date d'inscription jeudi 26 décembre 2002 Statut Membre Dernière intervention 19 mai 2005
6 juil. 2004 à 21:09
utilise UPX !!!

UPX COMPRESSE TON EXE est cache tout("c un moyen pour crypter ton exe comme a dit sami-DeAtHCrAsH -") personellement je l'utilise
Life is Short 8-)
0
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
6 juil. 2004 à 23:33
Salut cousin,

Le probleme d'UPX c'est que lors du désassemblage, il est indiqué en en-tete que le fichier a été compressé avec UPX.

Avec un simple désassemblage tu ne verras pas les "Strings Reference" mais il sera indiqué que l'executable a été compréssé avec UPX.

Le gars aura plus qu'a décompréssé avec UPX puis désassembler l'executable.
Il aura des lors accès a toutes les "Strings Reference".

A++ et bonne continuation

Samir
0
youpiyoyo Messages postés 539 Date d'inscription vendredi 6 juin 2003 Statut Membre Dernière intervention 14 juillet 2010
7 juil. 2004 à 20:32
au cas il me semble que sur ce site tu as FU-FILE ou un truc dans le genre un truc ki cache des fichiers dans des images,...
le code est pas terrible, mais il montre comment tu peux lire les exes ou fichiers, tu te creer un petit prog ki une fois ke ton prog initial est compresser sous upx, il le lise pour virer les en tete upx...

sinon comme les autres te l'ont di tu le crypte, il en a des correct sur ce site....
0
MetalDwarf Messages postés 241 Date d'inscription mardi 29 octobre 2002 Statut Membre Dernière intervention 23 janvier 2006
8 juil. 2004 à 11:00
Et oui mais le probleme reste et restera le meme. En fait si tu veux te proteger contre des personnes qui ne connaissent que les editeurs hexa, pas les desassembleurs et l ASM les solutions precedentes peuvent s appliquer. Par contre si ce que tu as a proteger est important, le probleme devient beaucoup plus ardu dans la mesure ou ton programme doit etre capable de retrouver le mot de passe lui meme. Donc le code pour retrouver ce mot de passe doit etre contenu dans l executable, et par desassemblage il est possible de le retrouver...
Par contre si tu souhaites faire du controle d acces a une ressource il y a une solutions : au lieu de stocker le mot de passe en clair tu stockes son empreinte MD5 par exemple (methode utilisee sous la plupart des Unix pour les mots de passe). En effet a partir d une signature MD5 il est impossible (en theorie) de retrouver la chaine initiale. Tu peux aussi utiliser un systeme de challenge-reponse mais je m eloigne de ton probleme.
Par contre la solution UPX + modification de l EXE "a la main" devrait pouvoir te proteger relativement bien (attention au debogage en cours d execution dans ce cas :-(...).
0
xarier Messages postés 688 Date d'inscription jeudi 26 décembre 2002 Statut Membre Dernière intervention 19 mai 2005
8 juil. 2004 à 13:55
salut j'ai une autre idée mais je c pas si ca va te servir

ta dit que ton programme contient un mot de passe je pense a la place de faire ca dit a ton prog de prendre le serial du beos (car il n y a k'un pour chaque pc ;) ) et de le comparé avec le tien alors si c le bon il passe sinon il quitte) et crypte le pswd :à)

See U
Life is Short 8-)
0
xarier Messages postés 688 Date d'inscription jeudi 26 décembre 2002 Statut Membre Dernière intervention 19 mai 2005
8 juil. 2004 à 13:56
pardon bios pas beos :)
Life is Short 8-)
0
cs_LiBe444 Messages postés 220 Date d'inscription dimanche 7 septembre 2003 Statut Membre Dernière intervention 7 avril 2007
8 juil. 2004 à 20:48
C'est un mot de passe "FIXE" pour acceder a un serveur FTP...

Merci quand même du conseil ! :)
0
youpiyoyo Messages postés 539 Date d'inscription vendredi 6 juin 2003 Statut Membre Dernière intervention 14 juillet 2010
9 juil. 2004 à 10:01
sinon tu le crypte et tu met le résultat dans la base de registre....
0
xarier Messages postés 688 Date d'inscription jeudi 26 décembre 2002 Statut Membre Dernière intervention 19 mai 2005
9 juil. 2004 à 12:30
je pense pas car la les cracker peuvent voir que le prog a ecrie sur une racine de la regedit la il partiront chercher et voila .
moi je pense qunil faut mettre un generateur de mot de passe la tu met un sdran(time()) et qui te creé des clé par raport a la date et tu dit au prog qu'il change la date du bios a une date fix qui permetera au generateur de generé le mot de passe exacte alors la le crackeur va pas savoir qu'il faut qu'il faut que la date soit par ex : 12:00
Life is Short 8-)
0
cs_LiBe444 Messages postés 220 Date d'inscription dimanche 7 septembre 2003 Statut Membre Dernière intervention 7 avril 2007
9 août 2004 à 10:52
C'est une sorte de cryptage RSA ? Dans ce cas là oui je crois que c'est la meilleure solution.
0
testtestiop Messages postés 16 Date d'inscription mercredi 26 novembre 2003 Statut Membre Dernière intervention 14 mars 2008
9 août 2004 à 16:20
tout a fait
0
Super_Mat Messages postés 37 Date d'inscription jeudi 2 septembre 2004 Statut Membre Dernière intervention 31 août 2005
8 oct. 2004 à 14:46
Même en chiffrant à fond, cachant le code , etc, on est confronté à un problème :

Depuis quelques siècles, il est considéré qu'un système de protection d'information ne peut pas être (totalement) basé sur la méthode elle-même de protection.

Ca veut dire qu'on ne peut pas se fier au fait que le code est bien planquer, ou que le pirate sera trop con pour comprendre l'algorithme de cryptage utilisé. Généralement, on utilise une clef qui n'est connue que des "amis" pour que la sécurité du système soit sûre.

Alors, évidement on peut chiffrer la chaine de caractère et de stocker le résultat. Mais la chiffrer avec quelle clef ??? Cette clef DOIT être introduite par l'utilisateur, ou au moins ne pas être accessible par le programme lui-même. On peut par exemple envisager de mettre la clef sur disquette. Le programme ne peut alors déchiffrer la chaîne que si la disquette est introduite.
0
Rejoignez-nous