Christophe Gallaire a écrit, lundi 14 avril 2008, à 11:56 : > Bonjour Jacques,
bonjour, > Jacques L'helgoualc'h a dit dans un souffle : M'enfin, plusieurs... [...] >> Tout d'abord, il faudrait que Christophe vérifie si cette [EMAIL >> PROTECTED] de >> ligne de code tient bien sur une seule ligne, ou plusieurs --- c'est >> important pour Sed. > > Alors, la ligne est invariablement la même. Bon. > Elle est en document plein texte ici > : http://www.clg-montaigne-goussainville.ac-versailles.fr/code Je n'ai pas la permission d'entrer sur le site ? > Le problème est que dans certains fichiers elle est venue s'ajouter dans la > suite de la dernière et dans d'autres elle est la dernière ligne. En clair, > parfois elle n'est pas seule sur la ligne. Une constante : elle est toujours > sur > la dernière ligne ! Sans rien d'utile après, c'est plus sûr... S'il n'y a pas de pourcentage dans ce code, sed -i.infect -f purge_ligne.sed exemple.php devrait faire le nettoyage, purge_ligne.sed : ----8<------------8<------------8<------------8<------------8<-------- ${ # sur la dernière ligne, \%LA_LIGNE%{ # quand elle est infectée, s///g # on supprime le(s) code(s) } } ----8<------------8<------------8<------------8<------------8<-------- Plus générique, on peut supposer que ce style de codage n'est employé nulle part, purge_code.sed : ----8<------------8<------------8<------------8<------------8<-------- \%<?php echo '<iframe src="\(&#[0-9]\+;\)\+" width=1 height=1></iframe>';?>%{ s///g # on supprime tous les codes à la *{ } ----8<------------8<------------8<------------8<------------8<-------- (seulement testé sur l'exemple ci-dessous) ~ $ cat exemple.php lignes au-dessus texte avant,<?php echo '<iframe src="*ʚ" width=1 height=1></iframe>';?> rien ensuite Si ça marche, un coup de balai : find /nids_de_php/ -type f -iname \*.php -exec sed -i.infect -f script.sed {} + mais il peut être plus élégant d'établir d'abord la liste des fichiers infectés. [...] >> - l'option -f de Sed, ou mieux « --script-file=FICHIER-SCRIPT », permet >> d'éviter ces problèmes. Aaaargh --- c'est « --file » :/ -- Jacques L'helgoualc'h -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/DebFrFrenchLists Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et "Reply-To:" To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]