• logo categorie
    RESOLU

    Tutoriel : Sécuriser mes variables $_GET et $_POST


    Quelles vérifications dois-je faire lors de la réception des mes variables $_GET et $_POST d'un point de vue de la sécurité de mon site web et de mon serveur?
    Tout le monde s'est déjà posé la question et je vais y répondre dans ce tutoriel.

    La suite dans ma réponse!
    Webmasters - Développement web
    Langages serveur
    $_GET
    $_POST
    sécurité
    vérifications
    post
    utilisateur
    Dr. Dino
    Posté le : 27 Août à 16:47
    47 196 vues

  • 42
    Dr. Dino
    Posté le : 27 Août à 17:12
    Alors une chose à savoir sur les variables $_GET et $_POST : elles ne sont pas à l'abri d'une injection! C'est à dire que n'importe qui peut envoyer n'importe quoi via ces variables. Je pense en particulier à un DROP table dans le joli pseudo que vous vous apprêtiez à rentrer innocemment dans votre base de données! Et BIM, c'est la cata!
    Pour éviter ça, il n'y à pas trente six solutions, il faut SE-CU-RI-SER vos variables.
    Et pour ça (chacun sa méthode), mais pour moi, trois réflexes à appliquer à chaque fois que l'on reçoit des données d'un formulaire, à chaque variables reçues :

    La fonction htmlentities :
    Cette fonction remplace les caractères spéciaux par leurs équivalent html. Ces caractères pourront donc, dans tous les cas, être lu par le navigateur.
    $ma_var = htmlentities($_POST["ma_var"]);


    La fonction addslashes :
    Cette fonction précede les caractères spéciaux par des antislashes. Ces caractères seront donc, au lieu d'être interprétés par le navigateur, affichés tel quel.
    $ma_var = addslashes($_POST["ma_var"]);


    Et enfin la fonction filter_var :
    Cette fonction permet de vérifier que le format de données reçue corresponds bien au format de donnée attendu et au format de donnée nécessité par votre base de donnée. Elle est différente pour chaque type de donnée et vous devrez sans doute mettre les mains dans le cambouis des regex pour utiliser tout son potentiel.
    Voici les principaux exemples:
    $mon_int = filter_var($_POST["mon_int"], FILTER_VALIDATE_INT);
    $mon_petit_int = filter_var($_POST["mon_petit_int"], FILTER_VALIDATE_INT, array("options"=>array("min_range"=>0, "max_range"=>100)));
    $mail = filter_var($_POST["mail]", FILTER_VALIDATE_EMAIL);
    $mail = filter_var($_POST["mail]", FILTER_VALIDATE_REGEXP, array("options"=>array("regexp"=>"/^.+@\w+(\.\w+)+$/"))));
    $url = filter_var($_POST["url"], FILTER_VALIDATE_URL, FILTER_FLAG_PATH_REQUIRED));

    etc...
    Je vous conseille vivement de visiter la page php correspondante : http://php.net/manual/fr/function.filter-var.php

    Merci Dr. Dino!
  • ⇒ Si vous êtes ici c'est que le sujet vous intéresse ^^
    Inscrivez-vous sur Oyant, apportez votre contribution sur ce sujet et gagnez de l'argent :

    Inscription
    Répondre
  • logo categorie
    RESOLU

    La différence entre dur et solide

    Bonjour
    La différence entre dur et solide?
    Vie pratique
    Dur
    Solide
  • logo categorie
    RESOLU

    Comment supprimer des balises HTML dans une chaîne de caractères ?

    Bonjour,

    J'aimerais supprimer des HTML sur une string, que dois-je utiliser ?

    Merci!
    PHP
    PHP
    HTML
  • logo categorie
    RESOLU

    "Tarif" et "montant"

    Bonjour
    Pensez vous que tarif et montant ont le même sens?
    Entreprise
    Tarif
    Montant
  • logo categorie
    RESOLU

    "Tutelle" et "curatelle"

    Salut
    Savez vous la différence entre tutelle et curatelle?
    Langues
    Tutelle
    Curatelle
  • logo categorie
    RESOLU

    La différence entre juridique et judiciaire

    Salut
    Avez vous une idée sur la différence entre juridique et judiciaire?
    Vie pratique
    Juridique
    Judiciaire
  • logo categorie
    RESOLU

    Tutoriel : Comment créer un modal en HTML

    Bonjour à tous!

    Me revoici pour mon troisième tutoriel, toujours sur le thème des trucs et astuces plus ou moins utiles à un développeur de site web!!
    Et aujourd'hui : Comment créer un modal en HTML pour votre site!!?
    Mais si, un modal!... Cette petite fenêtre en javascript qui s'ouvre pour vous avertir d'un événement d'une importance capitale sans pour autant quitter votre page en cours.

    La suite dans ma réponse, comme d'habitude!
    Webmasters - Développement web
    CSS
    HTML / DHTML / XHTML
    JavaScript
    Modal
    HTML5
    CSS3
  • logo categorie
    RESOLU

    "Ostéopathe" et "physiothérapeute"

    Salut
    Est ce que ostéopathe et physiothérapeute est la même chose?
    Vie pratique
    Ostéopathe
    Physiothérapeute
  • logo categorie
    RESOLU

    à partir de quel âge peut-on castrer un chat ?

    Bonjour,
    J'ai un chaton de 5 mois, j'aimerais savoir à partir de quel âge je peux le faire castrer ?
    Merci d'avance!
    Animaux
    Chats
    chats
    castrer
    chaton
    castration
  • logo categorie
    RESOLU

    La différence entre astéroïde et comète

    Salut
    J'ai besoin de savoir la différence entre astéroïde et comète?
    Vie pratique
    Astéroïde
    Comète
  • logo categorie
    RESOLU

    "Décoction" et "infusion"

    Salut
    La différence entre décoction et infusion?
    Merci d'avance.
    Langues
    Décoction
    Infusion
  • logo categorie
    RESOLU

    Pourquoi mon chat bouge-t-il les pattes avant lorsqu'il est détendu ?

    Hello!

    Je ne sais pas si ma question est claire, mais mon chat fait des mouvements plus ou moins étranges avec ses pattes avant lorsque je le caresse par exemple.
    Pouvez-vous m'expliquer ce que ça signifie ?!

    Merci
    Chats
    chat
  • logo categorie
    RESOLU

    "Processus" et "procédure"

    Salut
    Comment je peux distinguer entre processus et procédure?
    Vie pratique
    Processus
    Procédure
  • logo categorie
    RESOLU

    Pourquoi mon chat me mord-il ?!

    Coucou!

    Lorsque mon chat est allongé et que je le caresse il semble apprécié cela.
    Mais, au bout de quelques instants il me mord.
    Est-ce normal ?!

    Merci d'avance
    Animaux
    Chats
    chats
    morsure
    animaux
  • logo categorie
    RESOLU

    Tutoriel : Faire une liste déroulante (<select>) avec des icônes différentes sur chaque entrées (<option>)

    Hello tout le monde!!

    Me revoilà pour mon deuxième tutoriel!!
    Avec comme question, comment faire une jolie liste déroulante en HTML/CSS/JS avec des icônes différentes sur chaque entrées.
    Eh NON, ça n'est pas possible en HTML, et c'est bien dommage!!
    Et OUI, ça peut être utile pour... Imaginons... Une liste de pays avec leurs drapeaux pour le choix des langues sur votre site web.

    La suite dans ma réponse!
    Webmasters - Développement web
    Général Conception Web
    HTML / DHTML / XHTML
    JavaScript
    HTML
    liste non ordonées
    liste à puces
    liste déroulante
    liste des langues
  • logo categorie
    RESOLU

    Kiosque et stand

    Bonjour
    Kiosque et stand sont la même chose?
    Vie pratique
    Kiosque
    Stand
  • logo categorie
    RESOLU

    Temps de sommeil du chat ?

    Bonjour à tous!

    Je trouve que mon chat dort beaucoup!
    Pouvez-vous me dire combien de temps un chat dort-il en moyenne par jour ?!
    Merci d'avance
    Animaux
    Chats
    animaux
    chat
    sommeil
  • logo categorie

    Comment modifier l'url de ma page en PHP ?

    Salut !

    Je suis actuellement de faire un formulaire en HTML et en PHP. De ce fait, j'aimerais pouvoir renvoyer la page du formulaire si les mots de passe entrés ne sont pas égaux.

    Merci d'avance !
    PHP
    PHP
  • logo categorie
    RESOLU

    "Navire" et "paquebot"

    Salut
    Avez vous une idée sur la différence entre navire et paquebot?
    Langues
    Navire
    Paquebot
  • logo categorie
    RESOLU

    Angleterre et Royaume-Uni

    Bonjour
    Est-ce que l'Angleterre et Royaume-Uni sont le même endroit?
    Divertissement
    Angleterre
    Royaume-Uni
  • logo categorie
    RESOLU

    La différence entre vague et houle

    Bonjour
    La différence entre vague et houle?
    Langues
    Vague
    Houle
  • Veuillez vous connecter pour profiter pleinement de toutes les fonctionnalités de Oyant.
    Connexion
    Inscription

    Poster une question

    AnimauxApplicationsArnaquesAutres langagesBases de donnéesBeauté et ModeC et C++Cartes de voeux, lettres, poèmes et discoursCMS (Système de gestion de contenu)CollectionCuisineCultureDémarches administrativesDivertissementDotnetDroitEmploiEmploi et études en informatiqueEnseignementEntrepriseEnvironnementEvénementsFinanceGénéral développementImmobilier, logement et urbanisme    JavaLanguesLogicielsMétiersNouvelles technologiesPHPPrestations socialesRéservé aux adultesSantéSportSystèmesTransportsVie pratiqueWebmasters - Développement web 3.041 Utlisateurs parcourent Oyant en ce moment