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

Langage PHP Discussion :

Vérification de l'origine de soumission de formulaire


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2017
    Messages
    344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

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

    Informations forums :
    Inscription : Juillet 2017
    Messages : 344
    Par défaut Vérification de l'origine de soumission de formulaire
    Bonjour,
    j'ai un champ tinyMCE dans mon formulaire et souhaiterais bloquer tout enregistrement de JavaScript par les utilisateurs. lls peuvent en effet créer un formulaire pirate sans tinyMCE qui envoie du HTML qui ne sera pas filtré par tinyMCE. Pour cela j'ai déjà interdit le mot script en case insensitive (bloque les <script> et <a href="javascript:"), mais ce n'est pas suffisant, en effet ils peuvent mettre des onmouseover etc. Je souhaiterais donc connaître la liste exhaustive des événements Javascript car toutes les listes que j'ai vues sur le net n'étaient pas complètes. Ou bien existe-t-il un outil tiers existant pour bloquer cela que je ne connais pas ?
    Merci de votre aide
    Bien cordialement

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    Et si au lieu d'essayer de blinder ton form, tu tentais plutot de vérifier sur le traitement du form qu'il provient bien uniquement de l'envoi de ton forumlaire ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre très actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2017
    Messages
    344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

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

    Informations forums :
    Inscription : Juillet 2017
    Messages : 344
    Par défaut
    j'ai vu que JSoup existait : https://stackoverflow.com/questions/...in-java-or-jsp
    https://stackoverflow.com/questions/...ript-from-html
    mais c'est du Java, comment l'interfacer simplement en PHP ?
    vous pouvez déplacer ma question dans le forum PHP si besoin

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    https://cheatsheetseries.owasp.org/c...eat_Sheet.html
    un peu de lecture

    Tu peux récupérer un clef pour un input hidden en ajax en ayant coté serveur interdit les requêtes ajax hors domaine.
    puis vérifier la clef après submit
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre très actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2017
    Messages
    344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

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

    Informations forums :
    Inscription : Juillet 2017
    Messages : 344
    Par défaut
    désolé mais je ne comprends rien à ton site mais en lisant entre les lignes je vois qu'il y a un autre risque que j'avais oublié les balises <form>, moi je veux simplement utiliser JSoup en PHP mais comment faire ?

  6. #6
    Membre Expert
    Avatar de cavo789
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    1 797
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 797
    Par défaut
    Bonjour

    Citation Envoyé par Sylvain255 Voir le message
    moi je veux simplement utiliser JSoup en PHP mais comment faire ?
    Logiquement, non, tu ne veux pas utiliser un outil X ou Y. Tu as un besoin qui est de protéger ... et si quelqu'un te donne une solution, tu n'as plus besoin de JSoup.

    Quand tu veux sécuriser un formulaire (=garantir que le formulaire que tu vas recevoir provient de ta page); généralement la solution passe par un token. Voici le premier lien que j'ai trouvé sur Ggle http://sdz.tdct.org/sdz/securisation...lles-csrf.html

    L'idée : ton site génère un code aléatoire (un token) au moment de l'affichage de la page. Imaginons "TOTO257". Tu génères un champ "name=token" caché qui va contenir cette valeur. Et quand tu recevras la soumission du formulaire, si le champ token ne contient pas strictement TOTO257 alors il y a un souci et tu refuses la soumission.

    Pour ce qui est du contenu de l'éditeur, je n'ai pas de réponse à te fournir; il faudra chercher la liste des tags qu'il convient de supprimer. Je suppose que TinyMCE prévoit un truc du genre... mais note qu'il te faudrait, dans un monde idéal, ne pas faire confiance uniquement à TinyMCE mais aussi prévoir cette sécurité au niveau de ton serveur PHP. C'est le principe du never trust... Même si ton formulaire est sécurisé avec un token, il faut que ton serveur PHP se prémunise des attaques et, en gros, de refaire le nettoyage du code soumis.

  7. #7
    Membre émérite
    Homme Profil pro
    Autre
    Inscrit en
    Juillet 2021
    Messages
    441
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Juillet 2021
    Messages : 441
    Par défaut
    Bonjour,

    A la place de JSoup, tu devrais plutôt te tourner vers un outil similaire en PHP tel que HTML Purifier : https://github.com/ezyang/htmlpurifier

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 21/06/2011, 12h09
  2. Réponses: 2
    Dernier message: 05/07/2010, 11h23
  3. Confirm sur une soumission de formulaire
    Par ephemere2 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 21/04/2006, 08h59
  4. Pb avec une requete en origine source d'un formulaire
    Par Celia1303 dans le forum Access
    Réponses: 1
    Dernier message: 06/01/2006, 11h51
  5. double click pour soumission de formulaires
    Par pram dans le forum XMLRAD
    Réponses: 2
    Dernier message: 16/11/2005, 12h32

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