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 :

Empêcher l'exécution de widget javascript dans barre d'outils du navigateur


Sujet :

JavaScript

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    275
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 275
    Points : 97
    Points
    97
    Par défaut Empêcher l'exécution de widget javascript dans barre d'outils du navigateur
    Bonjour

    Comment empecher exécution des widget javascript depuis la barre d'outils navigateur pour mon site s'il vous plait ?

    du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    javascript:void((function(){..........})())
    Merci

  2. #2
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 093
    Points : 6 754
    Points
    6 754
    Par défaut
    Ce genre de code s’appelle un bookmarklet. C’est une méthode des années 90-2000, normalement les navigateurs actuels la bloquent pour protéger les gens contre les piratages de type ingénierie sociale (du genre « copie ce code et tu pourras hacker le compte Facebook de tes amis ! »).

    Pour faire une réponse courte : tu n’as rien à faire

    Cependant, il faut que tu saches qu’il n’y a aucun moyen sûr d’empêcher une personne d’exécuter du code JS arbitraire sur ton site. Il suffit d’ouvrir la console en appuyant sur F12. Dans les cas les plus complexes, un attaquant aura recours à une extension de navigateur, voire même un navigateur modifié, pour arriver à ses fins.

    En réalité, tu n’as aucun contrôle sur ce qui se passe côté client. Si tu as des données à protéger, cette protection doit se faire côté serveur. Si ton souci est de garantir la propriété intellectuelle d’une œuvre (image, audio, video), le plus simple est de publier une version en qualité limitée.
    La FAQ JavaScript – Les cours JavaScript
    Touche F12 = la console → l’outil indispensable pour développer en JavaScript !

  3. #3
    Membre expert
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    2 873
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2 873
    Points : 3 717
    Points
    3 717
    Par défaut
    Salut,

    Je n'ai pas compris on peut coté client exécuter du code JS arbitraire sur un site ? Ou bien tu veux dire sur la page du site chargée dans le navigateur ?

    J'ai vu que certains sites bloquaient le copier/coller mais comme dit Watilin on peut toujours accéder au contenu de la page via la console...

    Sinon pour infos j'utilise parfois ce genre de code pour changer les couleurs de la page et j'ai remarqué que cela ne fonctionnait pas sur certains sites (github par exemple) mais c'est avec FF pas chrome...

  4. #4
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 093
    Points : 6 754
    Points
    6 754
    Par défaut
    Citation Envoyé par Beginner. Voir le message
    Sinon pour infos j'utilise parfois ce genre de code pour changer les couleurs de la page et j'ai remarqué que cela ne fonctionnait pas sur certains sites (github par exemple) mais c'est avec FF pas chrome...
    Github sert ses pages avec un en-tête Content Security Policy (CSP) et déclare default-src 'none'. Cela interdit, entre autres, les <script> inline (qui ne sont pas dans un fichier séparé) et les « liens » en javascript:. Voir l’option 'unsafe-inline' sur la page de doc de default-src.

    Ça peut être effectivement une piste à explorer. Mais la puissance de CSP n’est pas sans contraintes : elle fonctionne comme une liste blanche, par défaut tout est bloqué, et il faut préciser explicitement tout ce qu’on veut autoriser. On peut trouver ça fastidieux, il n’y a qu’à voir la taille des en-têtes CSP de Github pour se faire une idée.
    La FAQ JavaScript – Les cours JavaScript
    Touche F12 = la console → l’outil indispensable pour développer en JavaScript !

  5. #5
    Membre expert
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    2 873
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2 873
    Points : 3 717
    Points
    3 717
    Par défaut
    Ah ben tout s'explique, merci Watilin !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Exécution de fonction Javascript dans un s:if
    Par slim dans le forum Struts 1
    Réponses: 1
    Dernier message: 22/03/2012, 16h07
  2. Affichage de menu dans barre d'outils
    Par Isa22 dans le forum GTK+ avec C & C++
    Réponses: 2
    Dernier message: 01/03/2007, 14h41
  3. Icone dans Barre d'outils
    Par cjacquel dans le forum MFC
    Réponses: 1
    Dernier message: 18/12/2006, 11h52
  4. Combo box dans barre d'outils
    Par guen dans le forum Access
    Réponses: 3
    Dernier message: 18/06/2006, 14h35
  5. Réponses: 4
    Dernier message: 07/01/2006, 19h10

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