Page 1 sur 1

[..] Password sur EXE

Posté : mar. 30 sept. 2008 11:01
par Voor0ck
Bonjour à tous,

Juste une petite question, est il possible de mettre un mot de passe sur mon executable Autoit ?

Je dois faire un RunAs dans mon script et je ne veux pas qu'en le decompilant, on puisse voir le login et le mdp :(

Merki.

Re: [..] Password sur EXE

Posté : mar. 30 sept. 2008 12:24
par Tlem

Re: [..] Password sur EXE

Posté : mar. 30 sept. 2008 20:31
par L4crymal
Tu peut protéger ton script avec Obfuscator mais je crois que Tlem a dit qu'il peut quand même être décompiler :roll:


Sinon tu peut aussi Asher ton mdp ( je sais pas si l'orthographe est bonne ) et je sais pas non plus si c'est possible sur AutoIt3

Bref l'idée est : crypter ton mdp

J'ai le souvenir d'un script qui crypter les phrase grâce à une clé ...

Re: [..] Password sur EXE

Posté : mar. 30 sept. 2008 21:53
par Tlem
L4crymal a écrit :Bref l'idée est : crypter ton mdp
Crypté ou non, un mot de passe et un mot de passe.
A partir du moment ou on peut lire le code AutoIt, on peut aussi lire la clé de cryptage et donc décrypter le mot de passe ...

Une pseudo 'solution' pour rendre les choses plus complexe, serait de mélanger différent type de procédé pour rendre le script compliqué à 'décrypter/lire'.
Pour donner un exemple comme un autre, on pourrait imaginer un truc du genre :
Un exe dans un exe lui-même dans un exe en utilisant l'obfuscation plus le cryptage d'un des codes inclus dans le script sous forme de texte qui générera un exe lors de sont lancement, avec en prime quelques artefacts pour brouiller les pistes.
Mais si le jeux en vaut la chandelle, nul doute qu'un utilisateur avertit arrivera tôt ou tard à casser le code, et à retrouver le mot de passe camouflé.

Re: [..] Password sur EXE

Posté : mar. 30 sept. 2008 22:18
par L4crymal
J'avais eu une idée comme cela :

Bindé le script dans un fichier Rar avec l'option SFX

Qui viendrait chercher le script dans les fichiers TEMP ?

Re: [..] Password sur EXE

Posté : mar. 30 sept. 2008 22:23
par Tlem
L4crymal a écrit :Qui viendrait chercher le script dans les fichiers TEMP ?
C'est la première chose que je fait, quand je vois un soft qui utilise des ressources, ou une installation quelconque. :D

Re: [..] Password sur EXE

Posté : mar. 30 sept. 2008 23:10
par sylvanie
idem, faut se méfier des outil genre NTfilemon qui log tous les accès fait par un exe ...

Cependant, un hash est plus adapté qu'un chiffrement, car dans ce cas, pas de reconstitution. Il ne reste plus qu'à l'attaquant (en théorie) de faire du brute force / dictionnaire, mais si le mot de passe est digne de ce nom (non pas le prénom de la copine, ou son plat préféré ...) alors on peut admettre que ceci tiendra.
Cependant (en pratique) la faille viendra du fait que l'exe est dans les main du méchant ... et donc un hash tout court peut se faire écraser par celui de l'attaquant et c'est fini.
genre, je localise la trace, genre une chaine de 20 bytes. Là on se dit, banco voilà un sha1 (supposition souvent vraie ...). Au lieu de brute forcer ce dernier, je calcule le miens par rapport à un nouveau mdp, je remplace et c'est fini (genre épreuve newbie contest à 5 points :) , allez voir ce site, il est très pédagogue sur les attaques au sens noble du terme ! et on y passe de sacrées nuits blanches à trouver :lol: ).

Pour retarder on peut procéder au hmac (hash + utilisation d'un mdp interne dans le hash) à ce moment on passe par l'obfuscateur pour cacher comme on peut se mdp interne, puis on procède Hmac (il y a une vraie rfc (2104), mais on peut se rabatrre sur par exemple Sha1(Mot de passe aplli| Sha1(Mot de passe appli | Mot de passe interne) ) avec | = concaténation.
Autre astuce : c'est de tronqué la sortie 160 bits à 128, comme ça on peut faire penser à une autre fonction de hashage genre MD5 et induire l'attaquant en erreur. Mais tout ceci reste de la bidouille d'obfuscation pour retarder un attaquant muni d'un bon désassembleur ...

Bon le conseil de fin pour ceux qui ont lu jusqu'ici (bravo !), pour une appli gentille qui veut décourrager les premiers venu, passe par la méthode du sha1 tronqué du mot de passe concaténé avec quelque string parsemées par si par là dans le code. Déjà il y a moins de concurents ^^
Pour faire un Sha1 ou un md5 ou un ripemd (autre fonction de hashage ...) il existe des udf à trouver sur le fofo américain , ou alors tape dans une dll offrant ce genre de service (exple libeay32.dll ou crypt32.dll (plus standard mais plus dure d'utilisation via autoit)
Je viens de poster ma mini udf pour faire du sha1 via libeay32.dll (openssl), ça fera toujours un exemple.

Re: [..] Password sur EXE

Posté : jeu. 02 oct. 2008 10:08
par Tragan
Salut à tous !

Merci pour vos conseils...

Et merci à toi, sylvanie, pour le lien...
En effet, super site qui n'est pas que dédier au Hack ("au sens noble du terme !")
Mais aussi à la programmation... Attention aux nuits blanches ! :mrgreen:

Autrement, j'ai trouvé une petite astuce pour contrer "l'unpacker d'AutoIt"
Certe, elle ne casse vraiment pas des briques, mais elle fonctionne...

Mais, car il y a toujours un mais :D ...
Comme me l'a si justement dit Tlem:
si vous souhaitez faire des choses protégées, je vous conseil un langage de programmation digne de ce non tel que C++ ou Delphi.
Pour celui ou ceux qui voudraient essayer d'en faire quelques choses de mon astuce: par MP...

Tragan
Plus j'apprends,plus je prends la mesure de ce que je ne sais pas (et personnellement y-a du boulot ! :mrgreen: )