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 :

PHP failles echo ?


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 27
    Par défaut PHP failles echo ?
    Bonsoir à toutes et à tous,

    Je m'intéresse de plus en plus à la sécurité Web tournant autour des scripts php.

    Suite à la vérification d'un de mes codes, je me suis aperçu que depuis un formulaire de champs de texte, pour paramétrer des informations on pouvait insérer en Mysql (Après envoie du formulaire) et afficher par la suite à l'aide d'un echo un contenu du type: \n\r

    Cela présente-t-il une faille particluière ?

    Le fait que lors du echo de la donnée en mysql qui contient \n\r cela fasse un retour à la ligne, n'est-il pas possible d'executer d'autres commandes qui permettraient d'infiltrer le site ?

    Merci de votre aide !

  2. #2
    Membre Expert
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 498
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 498
    Par défaut
    ce dont tu parles s'appel injection sql il existe de nombreux tutos qui te les expliquent pour que tu puisse securiser tout ca.

    par exemple : phpsecure.info/v2/article/InjSql.php

    sinon, tu peux utiliser les fonctions php htmlspecialchars et mysql_real_escape_string

    fr.php.net/manual/fr/function.htmlspecialchars.php
    fr.php.net/manual/fr/function.mysql-real-escape-string.php
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  3. #3
    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
    il faut considérer deux choses :
    - l'injection SQL : c'est à dire de quel manière ce qui est saisi pourrait detourner ta requête.
    - le detournement des affichages : si un utilisateur peut ecrire du javascript dans un champ commentaire, il peut par exemple rediriger ton site.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 27
    Par défaut re
    Merci de vos réponses.

    Dans ce cas je rectifie ma requete, puisqu'il est possible d'insérer en mysql cette valeur: \n\r

    Est-il possible d'infiltrer et de faire bugger la requete mysql pour faire de la mysql injection ?

    Je ne vois pas comment s'y prendre.

  5. #5
    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
    Si les elements que tu inseres dans tes requetes ne sont pas protégés avec des fonctions comme mysql_real_escape_string() alors on peut s'arranger pour faire de l'injection dessus.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 27
    Par défaut re
    Ok,

    Et dans mon cas, le script n'utilise pas la fonction mysql_real_escapte_string();

    Je ne vois pas comment créer une injection mysql avec des caractères en \r, \x00 ou encore \x1a

    Ce que je cherche précisément c'est à comprendre la protection mysql et comment la contourner en cas d'absence de protection, par exemple ici avec les caractères que j'ai cité précédement.

    Je ne veux pas utiliser bêtement une fonction dîte de protection sans la comprendre un minimum et où tout le monde s'obstine à dire, il faut utiliser mysql_real_escape_string sans être capable d'en prouver son utilité dans certaines situation, ici avec \x1a.

    Encore merci de votre aide.

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2009
    Messages : 17
    Par défaut Requêtes préparées
    Bonsoir,

    A mon avis, pour vous protéger des attaques type injection SQL, vous gagnerez à utiliser les requêtes préparées (avec PDO par exemple).

    Pour ma part, ça fait longtemps que j'écris plus beaucoup de requête SQL dans mes sources en implémentant le design pattern ActiveRecord et en utilisant les DAO.

    Vous trouverez dans ce site des tutos très bien faits sur tous ces sujets.

    Dans l'espoir de vous être utile

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

Discussions similaires

  1. Fonction MAIL() en PHP: Faille ?
    Par ApocKalipsS dans le forum Langage
    Réponses: 5
    Dernier message: 10/09/2011, 23h11
  2. [PHP 5.3] script php problème echo
    Par clades dans le forum Langage
    Réponses: 2
    Dernier message: 11/01/2011, 13h09
  3. [PHP-JS] echo ou pas echo ?
    Par SpaceFrog dans le forum Langage
    Réponses: 13
    Dernier message: 08/08/2007, 00h48
  4. [PHP-JS] echo, javascript, variable PHP
    Par legillou dans le forum Langage
    Réponses: 15
    Dernier message: 02/08/2006, 17h43
  5. Insertion d'1 petit texte ciblé sur page .php avec echo
    Par sabine2000 dans le forum Langage
    Réponses: 1
    Dernier message: 21/10/2005, 11h31

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