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 :

lancer un script perl via php et afficher le résultat


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 28
    Points : 25
    Points
    25
    Par défaut lancer un script perl via php et afficher le résultat
    Bonjour,

    j'ai un script perl qui marche en ligne de commande que j'aimerais rendre exécutable via un script php.
    en ligne de commande je lance le script comme ça :
    perl script.pl fichier.doc
    pour l'appel du script perl via php, j'ai d'abord fait un formulaire avec le bouton parcourir pour spécifier le fichier à traiter. pour le code en php pour l'instant j'ai ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    $fichier=$_GET['fichier']; 
    echo $fichier;
    exec ("../motPivot.pl < $fichier"
    ?>
    le script perl génére un fichier de sortie, celui si je voudrais l'afficher sur la page web en html.

    comment faire ???

    merci !

  2. #2
    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
    Est-ce que l'argument $output d'exec ne te convient pas? tu transformes ensuite le tableau en ce que tu veux. Sinon passes par shell_exec

    J'espère que tu as de bonnes raisons pour directement injecter une variable venant de l'utilisateur comme ça dans ta commande. Ce que tu fais là est très dangereux, un attaquant peux prendre le controle de ton serveur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    script.php?fichier=fichier.doc;ls
    Si vraiment tu n'as pas le choix, utilise au moins escapeshellarg ou escapeshellcmd pour neutraliser la variable.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 28
    Points : 25
    Points
    25
    Par défaut
    bonjour,

    $output ne me donne rien !
    merci pour tes conseils sur la sécurité. j'y connais rien sur ce sujet !
    la ligne de code que tu as donné doit remplacer quelle autre ?
    merci

  4. #4
    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
    La ligne de code montre qu'un attaquant peut insérer arbitrairement des commandes dans ton script (dans ce cas, c'est la commande 'ls' pour afficher la liste des fichiers, mais ça peut être une autre commande pour supprimer les fichiers, ou prendre le contrôle du serveur, etc...). C'est pour montrer à quel point ton système est très vulnérable.

    shell_exec devrait te permettre de récupérer le flux de sortie de ton script perl.

Discussions similaires

  1. lancer script py via php
    Par kratoce dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 13/04/2015, 17h08
  2. Probleme d'execution de script perl via un script php
    Par Liline85 dans le forum Langage
    Réponses: 4
    Dernier message: 10/08/2007, 11h17
  3. Lancer un script Perl à partir de PHP
    Par espadon1 dans le forum Bibliothèques et frameworks
    Réponses: 11
    Dernier message: 07/08/2006, 22h00
  4. lancer un script Perl à travers un script PHP
    Par winnie82 dans le forum Langage
    Réponses: 3
    Dernier message: 07/04/2006, 18h43
  5. [Système] Lancer un script perl avec PHP
    Par pepite dans le forum Langage
    Réponses: 2
    Dernier message: 09/01/2006, 12h30

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