2010-04-15 4 views
0

Un modérateur d'un forum que j'ai possédé l'a fait. Je ne peux toujours pas y croire, et je ne peux pas comprendre comment il l'a fait. Quelqu'un peut-il m'expliquer? Il a dit qu'il utilisait seulement les requêtes HTTP GETComment puis-je obtenir la source d'un fichier php 777 - CHMOD?

Le modérateur a dit que le serveur (nginx) enverrait normalement la sortie des fichiers php exécutés, mais comme les fichiers 777 ajoutent des paramètres à l'URL, il peut obtenir le version non analysée de celui-ci.

Merci

+3

Vous voulez dire qu'il a changé les autorisations d'un fichier? Eh bien, le son est comme s'il avait détourné une instruction exec() ou system() dans le tableau. Mais difficile à dire sans savoir ce qu'il a fait et de quel logiciel de conseil dont nous parlons. – Bobby

+0

J'ai vu des instances Apache mal configurées où les fichiers .php ont déclenché la boîte de dialogue d'ouverture/de sauvegarde dans le navigateur - Apache n'envoie pas ces fichiers à l'analyseur PHP. Est-ce le genre de chose que vous voulez dire? –

+0

Le modérateur a déclaré que le serveur (nginx) enverrait normalement la sortie des fichiers php exécutés, mais comme les fichiers 777 ajoutent des paramètres à l'URL, il peut obtenir la version non analysée. Merci. – cedivad

Répondre

3

S'il y a un script de téléchargement mal écrit sur le site, alors il est aussi facile que de réécrire l'URL pour télécharger un fichier (y compris les fichiers source PHP). Cela pourrait être ce qu'il a fait, donc vous feriez mieux de vérifier si le logiciel de forum (et les modules tiers installés) que vous utilisez ne contient aucune vulnérabilité connue.

+0

Le problème est que le mod a déclaré qu'il n'a pas utilisé de script php bugged/explotsble ... – cedivad

0

Un serveur correctement configuré n'exécutera que des fichiers .php et ne révélera pas leur source. Mais un serveur mal configuré peut servir la source PHP via un lien symbolique .phps pointant vers le fichier d'origine.

Au-delà, les paramètres de la requête ne peut pas dire PHP pour servir la source, à moins que la source en question a une porte dérobée en elle, quelque chose comme:

if (isset($_REQUEST['gimme_the_codez'])) { 
    readfile($_SERVER['SCRIPT_FILENAME']); 
    exit(); 
} 

Bien sûr, étant donné que le mode du fichier 777, si vous peut entrer dans le répertoire dans lequel il se trouve, vous pouvez obtenir le fichier directement, ou claquer dans la porte dérobée trivialement.

+0

Pouvez-vous expliquer cela mieux? ------- Bien sûr, depuis le mode 777 du fichier, si vous pouvez entrer dans le répertoire dans lequel il se trouve, vous pouvez obtenir le fichier directement, ou claquer dans la porte dérobée trivialement. ------- – cedivad

+0

Si vous avez un accès shell au serveur, ou au moins une façon d'exécuter un programme arbitraire sur le serveur, un fichier mode 777 peut être subverti, car il est universellement accessible. –

+0

Oui, mais teoriquement tu ne devrais pas l'avoir ... – cedivad

Questions connexes