Un fichier pirate php s'invite régulièrement sur mon serveur dedié OVH
(gentoo 2006, release2)
Des sites web(php/mysql) sont hebergés dessus.
Je pense que la présence de ce fichier est la conséquence d'une attaque XSS
Un script malveillant distant doit être exécuté et créer ou uploader ce fichier!
A chaque fois, je le retrouve à la racine de chaque site.
Son propriétaire est l'utilisateur :
un ls -l donne :
-rw-r--r-- 1 repertoiredusite users 103174 jan 7 00:46 fichierPirate.php
J'ai regardé les logs du serveur ftp xferlog, et je me suis rendu compte que ce fichier à toujours été retiré et jamais une seule fois ajouté. C'est comme ça que j'ai mis de côté la source FTP, de plus j'ai changer tous les mot de passe FTP pour chaque site.
J'ai aussi regardé les logs httpd du serveur en me basant sur la date de création du fichier, mais aucune trace...
J'ai commencé à sécuriser les scripts PHP qui articulent ces sites, ça ressemble aux travaux d'hercule. De plus chez OVH pas moyen de désactiver la fonction allow_url_fopen via htaccess !
Bon en fait ma question se résume à ça :
Est-il possible de mettre la main sur ces tentatives d' attaque ou d'intrusion via les fichiers de logs et lesquels ?
Merci
# Qu'est ce que tu utilises comme logiciels?
Posté par GG (site web personnel) . Évalué à 2.
Pour tes sites, c'est toi qui à écris les fichiers php?
Ou alors tu passes par des scripts tout fait?
Il y a des logiciels en php qui sont très bien, mais bourrés de failles de sécu, qui sont exploitables dans certaines conditions.
Il y a d'autres logiciels qui sont bien plus sérieusement écrit, même en php.
Peut être que tu devrais revoir ton choix de logiciels.
Le FTP, c'est toujours craignos, si tu es chez OVH, avec les xxPLAN, tu as accès à une console ssh, ce qui te permet de faire des transferts de fichiers. Avec Konqueror, j'utilise sftp, c'est comme du ftp, mais à travers une connexion ssh.
Bon courage
Grégoire
Pourquoi bloquer la publicité et les traqueurs : https://greboca.com/Pourquoi-bloquer-la-publicite-et-les-traqueurs.html
[^] # Re: Qu'est ce que tu utilises comme logiciels?
Posté par emlesna . Évalué à 1.
ces sites ne sont en aucun cas du code généré par un soft quelconque, il ont été développés par un programmeur mais il manque assurément un couche sécurité
[^] # Re: Qu'est ce que tu utilises comme logiciels?
Posté par yellowiscool . Évalué à 2.
Envoyé depuis mon lapin.
[^] # Re: Qu'est ce que tu utilises comme logiciels?
Posté par Amaury . Évalué à 2.
Cette personne serait certainement plus à même de répondre à ta question qu'un forum sur le web.
99% de chance que le code développé contienne une faille de sécurité. Demande lui de regarder du coté des formulaires, c'est souvent là que les problèmes se cachent (SQL injection...)
# Plus
Posté par Lol Zimmerli (site web personnel, Mastodon) . Évalué à 1.
La gelée de coings est une chose à ne pas avaler de travers.
# Serveur dédié et htaccess
Posté par Amaury . Évalué à 3.
Si votre serveur est effectivement dédié, vous n'avez pas besoin d'htaccess puisque vous pouvez accéder directement à la conf Apache.
Par ailleurs je pensais que les options de PHP se configuraient plutôt au niveau du php.ini plus que de la conf Apache...
[^] # Re: Serveur dédié et htaccess
Posté par NeoX . Évalué à 2.
c'est à toi de gerer le serveur, de le mettre à jour, et de peaufiner les reglages
tu peux donc ajouter aussi la possibilité d'utiliser les .htaccess en fonction des sites
# pansement
Posté par Wawet76 . Évalué à 2.
M'enfin bon c'est juste une bidouille le temps de trouver comment le type est rentré, de fermer la faille, et virer tout ce qu'il a pu mettre (si il a eu des droits root, y'a un autre moyen que de tout réinstaller ?).
[^] # Re: pansement
Posté par briaeros007 . Évalué à 2.
# mettre à jour...
Posté par NeoX . Évalué à 5.
tu indiques : (gentoo 2006, release2)
on est maintenant en 2009, il y a probablement plein de faille de securité qui ont été corrigées.
as-tu fais tes mmises à jours reguliereements ?
tu sais les trois commandes qui prennent du temps...
emerge sync
emerge system
emerge world
car sans ces updates, tout est possible...
# Read the logs
Posté par Joris Dedieu (site web personnel) . Évalué à 2.
- lorsque le fichier est là tu regarde à quelle heure il a été créé.
- Dans les access log tu cherche les requêtes POST datant du même moment ou les requetes GET avec =http par exemple
C'est comme ça que tu trouvera le script coupable. Par ailleurs, jette un coup d'oeil au mailq histoire de voir s'il n'envoie pas du spam et fait des netstat pour voir s'il n'a installé aucun service.
Désactiver allow_url_fopen est un très bonne idée. Tant que tu y es tu peux rajouter fsockopen, pfsockopen et toute la série des exec, shell_exec ...
Si ce n'est pas possible, il existe des solutions un peu gruick mais qui marchent.
Pour fsockopen et pfsockopen tu peux forcer un $host='localhost' dans fsockopen.c ainsi ton webmail continura à fonctionner sans qu'un pirate ne flood la terre entiere avec son udp pourris.
Pour le reste curl est là.
Pour la fonction exec, il y a un patch ici :
http://www.kyberdigi.cz/projects/execdir/english.html
D'une manière générale le patch Suhosin donne d'assez bon résultat.
http://www.hardened-php.net/suhosin/
Il ne faut pas non plus oublier les choses de bases : openbasedir voir safe-mode, utilisateurs sans privilèges, firewall, selinux ou grsec
Les mises à jours ont déjà été conseillées plus haut.
Il faut bien penser que le pirate ne fait pas ça pour s'amuser.
S'il héberge un phishing, qu'il escroque des gens, s'il envoie du spam, ta responsabilité au moins morale est engagée.
Ta remarque sur le .htaccess m'a choquée.
Tu doit maîtriser absolument tout ce qui se passe sur ton serveur. Si tu commence à être débordé, il faut tout remettre à plat d'urgence. Si c'est trop lourd pour toi, te faire aider soit par un hébergeur (qui fait de l'infogéreance), un prestataire quelconque ou en faisant appel à la communauté.
Reprend la main sur ton serveur c'est important. Tu es root, tu es responsable.
Mes deux cents
Joris
[^] # Re: Read the logs
Posté par emlesna . Évalué à 2.
(notamment à d-jo )
J'ai réussi à mettre la main sur la méthode d'intrusion via les access_log,
et pris les disposition nécessaire.
Je m'excuse pour ceux que j'ai choqué, oui c'est impardonnable !!! la configuration PHP se fait au niveau du php.ini et non via htaccess.
Encore Merci !
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.