Designed by Gaetan !
80 en ligne   Boutique | Sites | Bar | Forum | PhpBB | Actu | Glossaire | Codes | Tips | Liens | Livres | Lettre  


 Recherche

 NewsLetter






   

Encodez vos codes JScript et VBScript

Rendez vos codes JScript et VBScript illisibles





AllJinx
"Afficher la source" Telle est l'option que le programmeur Javascript et VBScript redoute tellement. Et il y a de quoi vu qu'il est strictement impossible de dissimuler son code puisque que c'est le navigateur client qui devra l'executer. Et pourtant...

 Télécharger l'archive


ATTENTION, CETTE SOLUTION N'EST VALIDE QUE POUR INTERNET EXPLORER


JavaScript et JScript


Le JavaScript est un langage de script introduit par Netscape, qui en détient les droits. C'est pour cette raison que les nouvelles versions du navigateur Netscape ont, dans la maîtrise du JavaScript, toujours de l'avance sur la concurrence qui ne peut qu'attendre ce que Netscape y a ajouté comme nouveautés.

L'Explorer Internet MS 4.x (et ulterieurs) interprète bien JavaScript, mais Microsoft à tenu à apporter sa touche personnelle afin de mettre à disposition des commandes spéciales pour les extensions de l'Explorer Internet MS au système d'exploitation. Ainsi est né le JScript qui n'est donc qu'une variante de langage du JavaScript. Ce qui explique donc l'extrême similarité entre les deux langages.



Encodage Microsoft


Pourquoi je vous harcèle avec ces définitions ? Tout simplement parce-que la solution que je vous propose n'est utilisable que pour le JScript (et donc que pour Internet Explorer) et pour le VBScript.
Cependant, si vous developpez une appli web en JavaScript destiné uniquement à IE, rien ne vous empêche de changer votre borne script language="JavaScript" en script language="JScript".

L'astuce consiste à utiliser en crypteur fait "à la rache" par Microsoft, pour transformer vos scripts JScript et VBScript en une infâme masse diforme de données. Internet Explorer contient l'algorythme de décryptgae qui lui permettra de comprendre ce block comme si c'était du JScript ou du VBScript normal.

ATTENTION !!! Cette encodage est extrêment simple à déchiffrer !!!

En effet, Microsoft s'est contenté d'utiliser un alogrithme relativement simple à déchiffrer, ce qui implique donc que votre code n'est pas vraiment protégé. Disons qu'il peut juste servir à mettre des batons dans les roues de ceux qui veulent regarder votre code.

Ne mettez pas de données sensibles dans votre code !
Un programmeur un minimum experimenté devrait assez facilement s'emparer d'un décodeur.



Ceci dit, il reste quand même un outil plus efficace que l'interception désespéré du clique droit et de la suppression de la barre d'outil.

A 10 ans je trouvais ça marrant le DOS mais maintenant y en a raz le bol de se payer des lignes de commandes de 10m de long. Alors je vous ai pondu un petit executable tout simple qui fait tout tout seul avec des vrais boîtes de dialogues pour choisir vos fichiers :)



Jinx's Encoder


Ca sert à quoi ?


Ce programme vous permer de choisir plusieurs fichiers contenant des scripts JScript et/ou VBScript et de les encoder afin de les rendre totalement illisibles à vos visiteurs sans les rendre osolètes. Le programme encode et enregistre les fichiers encodés dans le répertoire que vous avez spécifié.
Cet executable n'est absolument pas un logociel complet et est composé du strict minimum ! Il n'y a donc pas de gestion des erreurs en cas de fausses manipulations de votre part. Cependant il a été testé et fonctionne parfaitement sous réserve que l'on respecte le mode de fonctionnement.



Comment ca marche ?


Avant tout, une chose importante à retenir, c'est que ce logiciel utilise l'executable original de microsoft qui devait être lancé sous DOS. Celà implique que si vous utilisez des adresses pour vos fichiers contenant des noms de dossier ayant plus de 8 caractères, ou des caracrtères speciaux, le programme de fonctionnera pas.

Avant de lancer le programme, vous devez spécifier dans votre page web, l'endroit à partir duquel vous voulez commencer à encoder. Pour celà il vous suffite de placer un commentaire bien spécifique :

<SCRIPT LANGUAGE="JScript">

// Votre code à ne pas encoder
//**Start Encode**
// Votre code à encoder

</SCRIPT>

<SCRIPT LANGUAGE="VBScript">

' Votre code à ne pas encoder
'**Start Encode**
' Votre code à encoder

</SCRIPT>



Attention cepandant, l'encodeur a violament tendance à confondre VBScript client et ASP et donc, il crypte tout. Essayez donc de bien spéparer tout ça comme il se doit, sois en placant les scripts ASP avant la borne, sois en utilisant des includes, ou en encodant dans un autre fichier en faisant par la suite un copier /coller...
Faites attention aussi au piège : les scripts contenant de l'ASP ou du PHP ! L'encodeur ne connait pas ces langages et les encode comme si c'était du JScript ou du VBScript client, donc votre ASP/PHP ne fonctionnera pas et votre script client ne comprendra pas ce qu'est ce ou ce en plein milieu du code.

Vos pages sont fin prêtes à être encodées. Lancez le petit executable, et choisissez les fichiers que vous voulez encoder.
Lorsque votre liste est faite, choisissez un répertoire de destination (attention à vos adresses !!!) ou seront enregistrés les fichiers cryptés. Si vos adresses ne contiennent pas de merdouilles pour le DOS, vous devriez retrouver vos nouveaux fichiers dans le répertoire spécifié avec vos scripts encodés. Si tout vas biens, vos bornes auront changées comme ceci :

<SCRIPT LANGUAGE="Jscript.Encode">
<SCRIPT LANGUAGE="VBScript.Encode">

Voilà, vous pouvez lancer votre Internet Explorer qui devrait pouvoir lire votre page et executer les scripts sans problème malgrès tout.

J'ai inclus dans le zip, l'executable d'origine avec son mode d'emploi, qui peut vous permettre, si vous en avez besoin, d'utiliser cette fonction avec des options.

AllJinx le 05/02/2003 (24 339 hits)
Didier Téléchargez gratuitement et légalement des logiciels Microsoft ! Si, si ;)
  • Visual Studio 2010
  • Office 2010
  • Expression Studio 3
  • SQL Server 2008
  • et d'autres...
Au fil des news  
Magazines - Le N°128 de Programmez est disponible
Magazines - Le N°127 de Programmez est disponible
Dreamweaver CS4 + Php + Mysql - Trucs et Astuces - Part 6
Pour continuer dans le même style, je vous propose une suite au précédent article. Rechercher tous ...
Adobe - Adobe Photoshop.com Mobile pour iPhone 1.1
JavaScript - Ajouter une page dans vos favorites
Dreamweaver CS4 + Php + Mysql - Trucs et Astuces - Part 5 -
Je vous propose cette fois deux astuces. Comment exporter une feuille de style avec l'aide de ...
SharePoint Personalization Site Links - Les liens personnalisés des MySite SharePoint
Nous avons vu dans les articles précédents comment agrémenter les pages de recherche afin de ...
Magazines - Le n°126 de Programmez est disponible
Outils - Traducteur en ligne automatique pour site web
Adobe - Adobe Photoshop.com Mobile pour Iphone
Magazines - Le n°125 de Programmez est disponible
Adobe - Adobe AIR 2 et Flash Player 10.1version bêta
Les conférences autour des technologies Microsoft - Liste non exhaustive des grands évènements
Nous allons essayer de regrouper un grand nombre des évènements autour des technologies Microsoft ...
Magazines - Le n°124 de Programmez est disponible
PHP - Forum PHP 2009
Composants - eFace - XAML en Java
WPF - Désactiver le bouton de réduction d'une fenêtre
Magazines - Le n°123 de Programmez est disponible
Magazines - Le n°122 de Programmez est disponible
Auditer une ferme SharePoint - Assurer le bon fonctionnement de SharePoint
Dans le cadre de la bonne gestion de son environnement SharePoint, il est utile de faire un ...
SQL Server 2008 Report Builder 2.0 - Installation et utilisation de Report Builder 2.0
Dans le cadre de la création de rapports pour SQL Server Reporting Services 2008, un outil est ...
Magazines - Le HS N° 1 de Web Design est disponible
Adobe - Adobe propose en Open Source les frameworks.....
Outils - EntityBuilder
CSharp - Sérialisation XML de vos objets
Magazines - Le n°121 de Programmez est disponible
Adobe - Adobe annonce MAX 2009 !
Outils - WhoIs
[MAJ] Dreamweaver MX + Php + MySql - Les formulaires - partie 3
Mise à jour du code, par DB 77, affichage du code erreur, dans la page erreur.php, traduction des ...
PHP - News avec photo - Système de gestion - affichage
Gestion - Administration - Affichage d'une "News", "Actualité", "Info", ... avec : - mise en forme ...
Outils - Crypt
Dreamweaver Php Mysql - Région répétée imbriquée
Je rebondis, sur un post du forum, pour vous montrer comment obtenir grâce à l'extension Simulated ...
Magazines - Le n° 120 de Programmez est disponible
Gérer les bases de contenu SharePoint - Gérer la croissance du volume des données
Dans le cadre de la gestion quotidienne de ferme SharePoint, il existe une partie qu'il faut ...
PHP - Le Coach PHP sur Visual Studio
.NET - Ecrire une application .NET utilisant MySQL
PHP - Utilisation de PHP dans le monde Microsoft
Magazines - Le n° 119 de Programmez est disponible
Adobe - Adobe annonce Photoshop Marketplace
[MAJ] Tutoriel AJAX simple - En avant vers le WEB2.0
Mis à jour le 20/04/2009
Tutorial : HTML | Scripting | ASP-PHP | ASP.net | SQL Server | XML
Sharepoint | XAML | Pocket | Dreamweaver | VML | Divers
  Scripts : Scripting | ASP-PHP | ASP.net | Divers
  Boutique | Annuaire | Bannières | Météo | Tribune | Partenariats
v3b © Didier 2003   
 

Corpo Sciences de Reims Partitions gratuites Carte, météo, annonces
 TechNet Groupes Utilisateurs Microsoft ASP-magazine DotNet Project MVP