Forum Linux.gentoo securite

Posté par .
Tags : aucun
1
7
jan.
2009
bonjour,

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 (page perso) . Évalué à 2.

    Bonjour

    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
    • [^] # Re: Qu'est ce que tu utilises comme logiciels?

      Posté par . Évalué à 1.

      Bonjour et merci,

      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 (page perso) . Évalué à 2.

        Et bien, fait bosser ce gars (ou un autre), avant que ton serveur ne serve à relayer du spam ou à attaquer ebay…

        Envoyé depuis mon lapin.

      • [^] # Re: Qu'est ce que tu utilises comme logiciels?

        Posté par . Évalué à 2.

        ils ont été développés par un programmeur

        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 (page perso) . Évalué à 1.

    Que contient-il? Quel est son nom exact?

    La gelée de coings est une chose à ne pas avaler de travers.

  • # Serveur dédié et htaccess

    Posté par . Évalué à 3.

    De plus chez OVH pas moyen de désactiver la fonction allow_url_fopen via htaccess !

    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 . Évalué à 2.

      en effet si le serveur est dédié (par opposition à mutualisé)

      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 (page perso) . Évalué à 2.

    Si le fichier revient toujours au même endroit automatiquement avec le même nom, tu peux créer un répertoire portant le même nom a cet endroit.

    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 . Évalué à 2.

      y'a d'autres moyens, mais ils sont aussi couteux en temps (détecter le type d'attaque utilisé, rebooter sur une image "saine" hors du réseau (ou avec juste la connexion vers la machine admin), vérifier tous les fichiers qui ont pu etre impacté, réparer ce qui peut etre réparer, mettre à jour, et relancer) voir plus qu'une sauvegarde des données et une réinstall from scratch (cela dépend bien entendu de la complexité de l'infrastructure).
  • # mettre à jour...

    Posté par . Évalué à 5.

    un serveur ca ne se laisse pas sans surveillance

    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 (page perso) . Évalué à 2.

    Bonjour,
    - 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 . Évalué à 2.

      Un grand merci !!!
      (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 à ceux qui les ont postés. Nous n'en sommes pas responsables.