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 dans les plugins


Sujet :

JavaScript

  1. #1
    Membre tr�s actif
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    F�vrier 2009
    Messages
    265
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - Multim�dia et Internet

    Informations forums :
    Inscription : F�vrier 2009
    Messages : 265
    Par d�faut Javascript dans les plugins
    Bonjour,

    Avec tous les types de navigateurs, dans de multiples versions, sous diff�rents syst�mes, il est impossible pour un d�veloppeur d'�tre absolument s�r que son code roulera sans probl�me chez tous les visiteurs qui entreront dans son site.
    Je viens donc de d�velopper dans mon syst�me de gestion de contenu un syst�me (merci window.onError) qui me permet de retracer et enregistrer (merci Ajax) les erreurs Javascript c�t� client, et j'ai fait des trouvailles !

    En effet, je r�cup�re m�me des erreurs dans du code qui n'appartient pas � mon syst�me !
    J'en conclus qu'il appartient � quelque plugin c�t� client.

    Par exemple, j'obtiens cette erreur :
    Template : https://in2.perfectnavigator.com/inj...php?id=Pj8sNyM
    Message : Script error.
    User agent : Mozilla/5.0 (Windows NT 6.2; WOW64; rv:31.0) Gecko/20100101 Firefox/31.0

    Je n'ai jamais inclus aucun script de chez perfectnavigator.com dans mon code.
    perfectnavigator est un ad-server qui infeste probablement le navigateur de mon visiteur.

    Mais alors je me pose la question suivante avec angoisse :
    Si mon code d�clar� dans MON window.onerror re�oit les erreurs d'un script �tranger, �a veut dire que ce script est consid�r� comme appartenant au window de MA page, donc il doit avoir acc�s au document, aux forms dans le document, aux champs inputs dans les forms, y compris aux champs de mot de passe etc. ?
    Mais c'est dingue �a !!!

  2. #2
    Membre tr�s actif
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    F�vrier 2009
    Messages
    265
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - Multim�dia et Internet

    Informations forums :
    Inscription : F�vrier 2009
    Messages : 265
    Par d�faut
    ... � part �a, je viens d'en chopper un autre qui en plus se permet de cr�er des cookies sur MON domaine ?!?
    Forc�ment, s'il parasite MA page, il est sous MON domaine.
    Donc il peut voir aussi les vrais cookies, y compris ceux qui d�finissent une session, il n'aura m�me pas besoin du mot de passe pour entrer dans le syst�me

    Comment Est-ce que je peux d�tecter TOUTES les portions de script dans ma page ?
    J'ai pens� � document.getElementsByTagName("script"), mais Est-ce que tous les scripts parasites sont introduits par une balise <SCRIPT ? Pas s�r.

  3. #3
    R�dacteur/Mod�rateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Par d�faut
    A partir du moment o� le navigateur a r�cup�r� la page, ce n'est plus TA page. Elle ne t'appartient plus et le client peut faire tout ce qu'il veut avec. Il peut changer les couleurs, les logos, supprimer les pubs, modifier le contenu etc... et �galement ex�cuter plein de scripts sans s'en rendre compte, via une extension ou un user-script qui s'est gliss� dans son navigateur. Tu ne peux rien faire de plus, �a sera de sa faute s'il se fait choper son login/pass.

    Mais il y a pire: les failles XSS (cross-site-scripting). L�, c'est la faute du d�veloppeur s'il ne prend pas garde au risque d'injection de scripts sur son site. Et cela peut permettre de faire ex�cuter � d'autres utilisateurs du code JavaScript malicieux sur un site qui n'appartient pas au hacker. Et malheureusement, ces failles sont encore tr�s nombreuses y compris sur des sites grand public.

  4. #4
    Membre tr�s actif
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    F�vrier 2009
    Messages
    265
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - Multim�dia et Internet

    Informations forums :
    Inscription : F�vrier 2009
    Messages : 265
    Par d�faut
    A partir du moment o� le navigateur a r�cup�r� la page, ce n'est plus TA page.
    Quand je disais MA page, je veux dire la page cr��e par mon syst�me bin s�r.
    Mais � partir du moment o� la page qui devient celle du visiteur peut servir � pirater mon site et � ajouter des cookies sur MON domaine, alors que normalement �a n'est pas possible, �a devient MON probl�me.

    Il peut changer les couleurs, les logos, supprimer les pubs, modifier le contenu etc...
    �a, si �a peut l'amuser, �a ne me d�range pas ;-)

    �a sera de sa faute s'il se fait choper son login/pass.
    Ouais, mais l� encore, si un intrus vient planter le bousin dans MON syst�me, �a devient MON probl�me, m�me si c'est SA faute.

    Je peux comprendre qu'un navigateur puisse ex�cuter un script quand il re�oit une page, mais que ce script soit int�gr� � la page et puisse interagir avec comme s'il en faisait partie, sous couvert d'une session ouverte gr�ce � une identification ad�quat et avec les m�mes droits que les scripts l�gitimes, �a �a me sid�re.

    Mais il y a pire: les failles XSS (cross-site-scripting). L�, c'est la faute du d�veloppeur s'il ne prend pas garde
    Ouais, bien s�r, mais l� �a se passe sur le serveur, c'est plus facile a contr�ler, et mon syst�me est bien prot�g� contre �a, bien s�r.

  5. #5
    R�dacteur

    Avatar de Bovino
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par d�faut
    Bah oui mais tout �a, c'est quand m�me la base de la s�curit� en d�veloppement Web (et pas que) : Never Trust User Input !
    Donc c'est � toi, c�t� serveur, de v�rifier que les donn�es que tu re�ois (que ce soit en GET, POST et m�me COOKIE voire SESSION) sont coh�rents.
    Si ton appli peut �tre d�tourn�e ou pirat�e, ce n'est pas de la faute de l'utilisateur mais de la tienne.
    Pas de question technique par MP !
    Tout le monde peut participer � developpez.com, vous avez une id�e, contactez-moi !
    Mes formations video2brain : La formation compl�te sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'int�gration de JSFiddle et CodePen sur le forum

  6. #6
    Membre tr�s actif
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    F�vrier 2009
    Messages
    265
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - Multim�dia et Internet

    Informations forums :
    Inscription : F�vrier 2009
    Messages : 265
    Par d�faut
    Never Trust User Input !
    Bon, alors en somme on n'a plus qu'� fermer boutique ?
    Parce qu'il est impossible de v�rifier � 100% tout ce qui arrive sur nos serveurs.

    Par contre, les d�veloppeurs des applications c�t� client, en particulier des navigateurs, ont la responsabilit� de limiter autant que faire ce peut les br�ches.
    Par exemple, j'ai du gal�rer plusieurs jours pour trouver un contournement dans mon �diteur de texte le jour o� Mozilla a d�cid� de d�sactiver l'acc�s au clipboard parce que c'�tait trop � dangereux �.
    Alors j'ai du mal � comprendre comment on peut d�cider de limiter l'acc�s au clipboard, mais d'un autre c�t� laisser n'importe quel plugin avoir acc�s � tout le document ! C'est compl�tement disproportionn�.

  7. #7
    R�dacteur/Mod�rateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Par d�faut
    Bien s�r qu'il est possible de v�rifier 100% des entr�es serveur, sinon le Web serait en ruine depuis longtemps... �a n'a rien de sorcier de faire valider les inputs � l'aide de contraintes et d'expressions r�guli�res, c'est m�me int�gr� nativement dans certains environnements comme le .NET.

    Et non, les �diteurs de navigateurs n'y peuvent rien ; ce n'est pas eux qui vont faire la diff�rence entre ton code JavaScript et celui d'un autre, qu'il ait �t� ajout� par XSS, par userscript ou par une quelconque extension. Si br�che il y a, elle se situe c�t� serveur.

    Le probl�me du clipboard est diff�rent car il concerne cette fois un d�faut de confidentialit� entre l'utilisateur et le service: si un site avait acc�s au contenu du clipboard, il pourrait avoir acc�s � des donn�es priv�es. Pour la m�me raison, JavaScript ne permet pas d'aller se balader partout sur le filesystem du client.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Coloration javascript dans les JSP
    Par kangouroub dans le forum Eclipse
    R�ponses: 0
    Dernier message: 29/01/2010, 15h52
  2. [1.x] Les CSS/Js dans les plugins
    Par Gauldo dans le forum Symfony
    R�ponses: 2
    Dernier message: 31/12/2009, 15h16
  3. les classes et les templates dans les plugins
    Par asoka13 dans le forum C++
    R�ponses: 22
    Dernier message: 24/01/2008, 17h11
  4. Utilit� de javascript dans les applications web
    Par Skan dans le forum G�n�ral JavaScript
    R�ponses: 26
    Dernier message: 30/12/2005, 22h55

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