[Résolu] Piratage en local...

Mammouth du PHP | 19672 Messages

25 mars 2012, 18:05

Salut tout le monde,
j'ai eu droit ce matin à un piratage en règle de mon serveur local avec remplacement de ma page index.php et l'ajout de la même page en index.html

En soi, ce n'est pas un problème, j'ai immédiatement bouclé les accès extérieurs et remis une page normale. Ma question est plutôt : comment ils ont pu faire ça ? L'environnement, c'est un Apache 2.2, PHP 5.x.x sur un Windows XP derrière une LiveBox qui avait une configuration pour un DynDNS. L'index était (et n'est plus) accessible de l'extérieur, mais pas en écriture pour autant. J'avoue que je ne sais pas trop comment formuler la question en pointant vers le bon endroit, je ne suis pas du tout admin réseau/serveur et je n'avais jamais eu ce problème. Je sais bien que WIndows n'est pas forcément le meilleur choix pour un serveur, mais je ne fais pas d'hébergement en dehors de mes propres code et en général ce n'est que pour du développement... en attendant que je change de machine avec probablement un Linux, mais ce n'est pas le propos.

Toute piste vers les paramètres à ajuster serait bienvenue pour que je puisse rouvrir les accès avec moins de risques :-k
Modifié en dernier par Cyrano le 25 mars 2012, 22:01, modifié 1 fois.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

ViPHP
xTG
ViPHP | 7331 Messages

25 mars 2012, 18:22

Si c'est accessible de l'extérieur il suffit d'une faille de code permettant d'exécuter du code PHP non ?
Script d'upload par exemple ?

Mammouth du PHP | 19672 Messages

25 mars 2012, 18:26

Non, je n'ai aucun fichier d'upload permettant de mettre quoi que ce soit en racine du serveur et la page index est du style page d'accueil de WAMP mais arrangée à ma propre sauce. Il aurait à la rigueur fallu se connecter en FTP mais je n'ai pas de serveur FTP sur cette machine, donc le mystère reste entier pour moi :?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

ViPHP
ViPHP | 2287 Messages

25 mars 2012, 20:40

Non, je n'ai aucun fichier d'upload permettant de mettre quoi que ce soit en racine du serveur et la page index est du style page d'accueil de WAMP mais arrangée à ma propre sauce. Il aurait à la rigueur fallu se connecter en FTP mais je n'ai pas de serveur FTP sur cette machine, donc le mystère reste entier pour moi :?
Une faille include peut-être ?

http://fr2.php.net/manual/en/filesystem ... rl-include
Je sais bien que WIndows n'est pas forcément le meilleur choix pour un serveur, mais je ne fais pas d'hébergement en dehors de mes propres code et en général ce n'est que pour du développement... en attendant que je change de machine avec probablement un Linux, mais ce n'est pas le propos.
Windows n'étant pas non plus le meilleur système pour le développement, tu n'as plus de raison de ne pas basculer :) (la sérénité est à ce prix).
if(!@work()){ Nespresso(); } else { what(); }
______________________________

ViPHP
xTG
ViPHP | 7331 Messages

25 mars 2012, 20:49

[troll]
Le développement PHP se résume à un éditeur de texte, donc windows autant que tout autre système suffit amplement.
[/troll]

En fait pas si troll que cela, je suis aussi utilisateur de windows et quand j'ai besoin d'un linux pour une compilation je virtualise un linux...

Mammouth du PHP | 19672 Messages

25 mars 2012, 21:05

[troll]
Le développement PHP se résume à un éditeur de texte, donc windows autant que tout autre système suffit amplement.
[/troll]
Loin de moi l'idée de vouloir être contrariant, mais il manque un gros élément : un serveur http et un interpréteur PHP, au moins. Avec l'éditeur seul, tu peux certes écrire le code, mais je te mets bien au défi de le tester sans le reste. Allez, je t'accorde la possibilité de l'exécution de PHP en ligne de commande, tu peux enlever le serveur Apache. J'ai hâte de voir comment tu feras les mises au point des CSS :langue:

Enfin bon, je dis ça, je dis rien hein ? :-*

Sinon, après vérification, la directive allow_url_include est bien à OFF, et je ne l'ai jamais modifiée. Mais c'était futé comme idée... je suis même surpris que cette directive existe... ça peut être certes pratique pour des installations distantes, mais je trouve ça super-dangereux :?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Mammouth du PHP | 19672 Messages

25 mars 2012, 22:04

Bon, ben ça m'apprendra à ouvrir un DynDNS sur un explorateur de fichier :oops:

Le futé a uploadé les fichiers nécessaires pour pouvoir faire ses exploits. Problème résolu, et j'ai récupéré au passage ses fichiers, je vais explorer son code, le premier coup d’œil ne m'inspire pas, ce n'est pas spécialement optimisé.

Merci à Caliméro pour son appui efficace ;)
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

ViPHP
xTG
ViPHP | 7331 Messages

26 mars 2012, 08:23

Euh je parlais de développement pas de test. :o
Je suis développeur en systèmes embarqués de formation et faudra me dire comment je peux développer et tester sur la même plateforme.
Donc moi je sépare toujours les deux.

Une connexion sur un explorateur de fichier ?
C'est à dire, tu peux m'expliquer ?

Mammouth du PHP | 19672 Messages

26 mars 2012, 08:31

Une connexion sur un explorateur de fichier ?
C'est à dire, tu peux m'expliquer ?
Pas dur : ma page d'accueil à la racine de mon serveur me permet de naviguer dans mes différents répertoires selon le projet sur lequel je veux travailler. Donc accéder à des répertoires de tests n'a pas été très compliqué pour le pirate qui a trouvé un fichier de tests sur l'upload. Il a donc trouvé le moyen d'uploader des fichiers avec lesquels il a remplacé la page index à la racine de mon serveur. Ça aurait pu être beaucoup plus grave si je ne l'avais pas vu presque immédiatement.

Dans l'histoire, j'ai récupéré ses fichiers, le code est un peu crade mais ça risque d'être très instructif.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

ViPHP
xTG
ViPHP | 7331 Messages

26 mars 2012, 09:29

Okay, c'est donc bien ce que je pensais. :)

ViPHP
ViPHP | 3300 Messages

26 mars 2012, 12:24

PHP a régulièrement des failles graves, y'en a eu une y'a pas longtemps sur la branche 5.3 et inférieure je crois, apache 2.2 a eu des failles du même type, windows a des tonnes de failles du même type, bref y'a de quoi faire.

au passage une des failles les plus répandues (et amusante) c'est le protocole ipv6 et le manque de compréhension des gens qui réfléchissent comme en ipv4.
Fait du php depuis que ca existe ou presque :)

Mammouth du PHP | 19672 Messages

26 mars 2012, 15:48

Mouais, sauf qu'en l'occurrence, la faille se situait ailleurs, quelque part entre le clavier et le fauteuil. 8-|
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

ViPHP
xTG
ViPHP | 7331 Messages

26 mars 2012, 15:50

au passage une des failles les plus répandues (et amusante) c'est le protocole ipv6 et le manque de compréhension des gens qui réfléchissent comme en ipv4.
Moi je réfléchie en français dans ma tête. :|

ViPHP
ViPHP | 3300 Messages

26 mars 2012, 17:26

Mouais, sauf qu'en l'occurrence, la faille se situait ailleurs, quelque part entre le clavier et le fauteuil. 8-|
c'est la plus courante, mais ma remarque pour l'ipv6 tient :) faut se méfier
Fait du php depuis que ca existe ou presque :)