J'ai récemment découvert ce que l'on appelle "URLs d'oeufs de Pâques" en PHP :
Il s'agit des quatre chaînes de recherche que vous pouvez ajouter à la fin d'une page Web PHP pour afficher une image ou une page Web (quelque peu) cachée :
?=PHPE9568F36-D428-11d2-A769-00AA001ACF42
Celui-ci est le plus intéressant, et affiche une image "easter egg" (oeuf de Pâques) soit d'un lapin dans une maison (le lapin de Sterling Hughes, appelé Carmella), d'un chien marron dans l'herbe, d'un Scottish Terrier noir, d'un logo php un enfant débraillé, dessiné à la main, un logo php coloré au crayon, un homme avec du un type avec des baguettes de pain (ressemblant à des crayons ou des frites) sortant de sa bouche comme un morse, ou un logo PHP d'éléphant.
Parmi les autres, citons :
-
?=PHPE9568F34-D428-11d2-A769-00AA001ACF42
(Logo PHP) -
?=PHPE9568F35-D428-11d2-A769-00AA001ACF42
(logo Zend) -
?=PHPB8B5F2A0-3C92-11d3-A3A9-4C7B08C10000
(Crédits PHP)
J'ai été choqué de découvrir que cela fonctionne sur de nombreux sites web, y compris le mien. Je pense que c'est stupide et je veux le désactiver, mais d'après ce que j'ai entendu, la seule façon de le faire est dans le php.ini avec expose_php = Off
et il ne peut pas être défini au moment de l'exécution con ini_set()
.
Je n'ai pas d'accès direct au php.ini sur le serveur en direct. Cependant, j'ai trouvé comment désactiver l'option X-Powered-By
en utilisant Header unset X-Powered-By
sur .htaccess
o header('X-Powered-By: ')
dans le code PHP.
Existe-t-il un autre moyen de désactiver ces "oeufs de Pâques", ou dois-je modifier ce paramètre dans l'application principale ? php.ini
(et est-ce bien la bonne/seule façon de désactiver ces URL) ?
8 votes
Ils ne font de mal à personne, alors pourquoi s'en préoccuper ?
64 votes
Parce que je pense que c'est stupide, et que cela révèle le fait que vous utilisez PHP.
2 votes
De la façon dont je le vois, si vous voulez utiliser un moteur entier dans lequel des gens ont investi beaucoup de temps, et que tout ce qu'ils veulent en retour est de laisser quelques oeufs de Pâques inoffensifs, alors pourquoi pas ? :D C'est amusant. Je parie que vous vous êtes amusés rien qu'en les cherchant !
2 votes
Oui, c'était amusant - mais l'amusement est terminé. Je ne sais pas pourquoi tu me dis que je dois les laisser.
0 votes
Je ne le faisais pas. Je demandais POURQUOI vous vouliez qu'ils partent (comme je le ferais pour toute autre question, l'intention est importante). Vous avez modifié votre commentaire bien après que j'ai posé la question, donc maintenant que je connais le pourquoi, je me sens plus enclin à aider :)
21 votes
Les easter eggs sont stupides, mais leur désactivation ne cachera pas le fait que vous utilisez PHP.
0 votes
Que pensez-vous de la
.user.ini
ophp_value
pour mod_php ?2 votes
@Nadnartigan Je suis d'accord avec le "je pense que c'est stupide". De plus, je pense que c'est stupide que @ DanRedux suggère qu'ils ne font de mal à personne. Je pense qu'il n'est pas professionnel, et légèrement odieux que vous suggériez qu'il ne devrait pas les retirer d'un projet PHP.
30 votes
Le fait que les gens "ne sachent pas que c'est php" n'est PAS une bonne mesure pour empêcher tout type d'abus ou de piratage.
12 votes
Pourquoi tant de votes positifs pour une question aussi stupide ? Celui qui est vraiment préoccupé par la sécurité devrait éviter l'hébergement partagé en premier lieu. Mais la peur de ces pauvres œufs n'est pas une préoccupation de sécurité mais une superstition analphabète.
3 votes
Je viens de mettre en service mon serveur interne PHP et j'ai commencé à enregistrer les accès dès le premier jour. Lorsque je suis rentré chez moi, j'ai réalisé que quelqu'un avait déjà accédé à ces pages "stupides" et que le moteur de recherche m'avait conduit ici, ce qui m'a permis de connaître l'histoire. Cela signifie-t-il qu'il y a suffisamment de gens (gentils ou méchants) qui sont assez désœuvrés pour chercher des sites PHP pour s'amuser ou pour attaquer ?
0 votes
@WesleyMurch Je ne comprends pas comment cela peut ne pas être un hébergement mutualisé. Un "domaine" est le nom du site web (exemple.com), avez-vous le contrôle de l'hébergement partagé ? machine qui héberge votre site ? Si ce n'est pas le cas, et qu'il est loué, il s'agit probablement d'un hébergement partagé (c'est-à-dire que même s'ils vous donnent un compte utilisateur et PhpMyAdmin/cPanel, cela ne signifie pas que vous ne partagez pas le serveur).
0 votes
NOTE : Aucun de ces easter eggs n'est présent dans les versions de PHP >= 5.5.0
0 votes
Grâce à ces œufs de Pâques, vous pouvez découvrir la version de PHP et l'utiliser pour connaître les vulnérabilités. Ce site dit tout.