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

JavaScript Discussion :

Javascript script obfusqué


Sujet :

JavaScript

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 28
    Points : 4
    Points
    4
    Par défaut Javascript script obfusqué
    Bonjour à tous,

    je m'intéresse depuis quelques temps aux scripts obfusqués par des packers ou bien par des ofbfuscateur tel jjencode etc... Et j'aimerai trouver un moyen permettant de traduire un script obfusqué en langage courant javascript, ce qui reviendrait à exécuter "localement" le script, afin de récupérer un langage compréhensible.

    Par exemple, un document.write/alert pourrait me permettre d'exécuter statiquement mon script, et pouvoir ensuite récupérer ce dernier décrypté. L'idée est intéressante, cependant en pratique, cela ne va pas fonctionner. N'étant pas un fin connaisseur du javascript, je ne sais pas trop comment m'orienter, c'est pourquoi je fais appel à votre aide ^^.

    J'espère avoir été assez clair concernant mon objectif, merci d'avance pour vos éclaircissements !

    Artalis.

  2. #2
    Membre émérite
    Avatar de Kaamo
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    1 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 165
    Points : 2 778
    Points
    2 778
    Par défaut
    Attention à ne pas confondre obfusquer et minifier.

    Les minifieurs (entre autres : Closure Compiler de Google, Uglify utilisé par jQuery par exemple, YUI Compressor de Yahoo) servent à rendre un script plus court en faisant juste du renommage de variables et aussi un peu d'optimisation "classique". Du genre : false devient !1, if(test) fonction() devient test && fonction(), etc ...

    Le code reste toutefois compréhensible une fois qu'il a été ré-indenté. (par exemple avec cet outil : JavaScript Beautifer)

    Au contraire, les obfuscateurs (exemple en plus que jjencode : JSCrambler), pondent une soupe de JavaScript indigeste qui a pour but de rendre illisible/incompréhensible (à moins d'y passer + de temps) le code mais a pour conséquence d'augmenter considérablement la taille de tes scripts (au moins > 50%).

    Donc il n'existe pas d'outil pour faire des reverses obfuscation car chaque obfuscateur est spécifique. C'est à toi de faire un tel outil.
    Par contre, il est possible de comprendre le code source si celui-ci a été simplement minifié

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 28
    Points : 4
    Points
    4
    Par défaut
    Merci pour ta réponse.

    C'est exactement cela, je me situe donc dans le cas d'obfuscateurs, qui vont effectivement considérablement augmenter le volume de code.

    J'ai pour le moment étudié pas mal d'obfuscateur, pour comprendre comment ils fonctionnaient, et en déduire des signatures propres à ces derniers. Cependant si je construis un outil à partir de ces conclusions il sera vite limité, il suffirait de rajouter une ligne de code pour que je ne reconnaisse plus l'obfuscateur...

    Du coup, je bloque pas mal et je ne vois pas comment m'en sortir xD... C'est pourquoi j'ai pensé à demander des avis extérieurs pour apporter de nouvelles idées ^^.

  4. #4
    Membre émérite
    Avatar de Kaamo
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    1 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 165
    Points : 2 778
    Points
    2 778
    Par défaut
    Du coup, je bloque pas mal et je ne vois pas comment m'en sortir xD
    C'est exactement le but !
    Je pense pas qu'un tel outil existe en tout cas, mais je vais surveiller cette discussion si jamais quelqu'un nous éclaire

  5. #5
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 28
    Points : 4
    Points
    4
    Par défaut
    J'ai pris le temps de me renseigner sur les outils qui existaient, et la seule chose qui pourrait convenir c'est "zozzle" un logiciel qu'est en train de développer microsoft et qui permettrait de désobfusquer (si j'ai bien compris xD).

    Je continue à chercher pour voir si j'arrive à trouver un moyen de passer outre les signatures que j'ai...

Discussions similaires

  1. [PHP/Javascript] Script php à executer après confirm()
    Par titinesaku dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 17/04/2009, 14h49
  2. Réponses: 4
    Dernier message: 19/03/2007, 16h47
  3. variable contient la chaine "<script language="javascript"></script>"
    Par karimphp dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 16/03/2007, 10h02
  4. [FIREFOX][JAVASCRIPT] <script></script> ne s'exe
    Par jlbinfo dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 11/10/2005, 11h49
  5. [PHP-JS] Php dans un script javascript
    Par nebule dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 30/11/2004, 10h38

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