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 :

Injection page cible formulaire php


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 2
    Par défaut Injection page cible formulaire php
    Bonjour et merci d'abord e vous intéresser à moi ^^,

    Voilà, je me pose une question, imaginons qu'on a un formulaire php avec une requête sql dans la page cible, tous ce qui à de plus normal:

    Formulaire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <html>
    <head>
    </head>
    <body>
    <form action="cible.php" method="post">
    <p>Mot de passe : <input type="text" size="30" name="mdp" value="" /></p>
        <input type="submit" value="Envoyer" />
    </form>
    </body>
    </html>
    Page cible:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    <html>
    <head>
    </head>
    <body>
    <?php
    $base = mysql_connect ('localhost', 'root', '');
    mysql_select_db ('site', $base);
    // on teste si le visiteur a rentrer un mdp
    if (isset($_POST['mdp'])) 
    {
            $mdp = mysql_escape_string(addslashes($_POST['mdp']));
    	$sql = "INSERT INTO site_utilisateurs VALUES('', $mdp)";
    	mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
    }
    </body>
    </html>
    Voilà j'ai protégé mes variables et tous et tous. Mais qu'est ce qui empêche une personne mal intentionné de faire un script php qu'il met sur son serveur mais qui utilise ma page cible ? :

    Formulaire hackeur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <html>
    <head>
    </head>
    <body>
    <form action="http://www.sitehacker.com/cible.php" method="post">
    <p>Mot de passe : <input type="text" size="30" name="mdp" value="" /></p>
        <input type="submit" value="Envoyer" />
    </form>
    </body>
    </html>
    Parce que à ce moment la tout le monde fait ce qu'il veut avec ma page cible, non ?

    Merci encore

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Dans l'exemple malveillant que tu nous mets, le formulaire est envoyé vers un autre site que le tiens... donc je ne vois pas le probleme.

    Ce qu'il faut effectivement garder en tête c'est que ta page cible.php peut recevoir n'importe quelles informations et pas seulement celle que tu as prévu.
    C'est bien pour cela qu'on controle toujours les données qu'on recoit.

    Au passage ce n'est pas la peine de doubler mysql_real_escape_string() avec addslashes()
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 2
    Par défaut
    Excusé moi je me suis trompé dans mon exemple malveillant
    Donc il faut juste protéger la page cible avec des "mysql_real_escape_string()".
    Et merci pour l'astuce de passage

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

Discussions similaires

  1. formulaire+php dans la méme page
    Par belakhdarbts10 dans le forum Langage
    Réponses: 5
    Dernier message: 02/08/2013, 10h10
  2. Réponses: 2
    Dernier message: 06/10/2011, 09h27
  3. Formulaire PHP et affichage dans la même page
    Par telodo dans le forum Langage
    Réponses: 7
    Dernier message: 19/09/2010, 14h00
  4. Script pour protéger les formulaires PHP de l'injection SQL
    Par thebay dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 15/05/2007, 16h23
  5. comment transmettre 1 variable de formulaire a 2 page cible
    Par NoobX dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 23/03/2005, 15h29

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