Voila, j'ai voulu migrer de apache vers apache2 (debian sarge), et depuis, mon site ne marche plus correctement. (meme si je retourne en apache1).
J'ai aussi migré mysql vers mysql-4.1, mais l'erreur ne peut pas venir de la (ou alors, il faut qu'on m'explique...)
Voila, l'adresse de mon site : http://zerandka.no-ip.org/~zerbro/(...)
Le problème est que les liens ne marchent plus. Voila, en gros, comment c'est fait :
J'ai du remplacer les crocher par de { }, sinon, rien ne passe...
if (!isset($page))
{
$page = "./Home/home" ;
}
$page .= ".php" ;
[...]
{div class="menubar"}
| {a href="./"} Home {/a} |
{a href="?page=./CV/cv"}CV{/a} |
{a href="?page=./Work/work"}Work{/a} |
{a href="?page=./Musique/musique"}Musique{/a} |
{a href="?page=./Photo/photo"} Photos {/a} |
{a href="?page=./Blog/blog"} Blog {/a} |
{/div}
[ ... ]
{? echo " page : $page" ; ?} ;
{? include($page) ; ?} ;
[...]
Voila, et la variable "page" ne change plus... (le contenu est affiché sur le site pour debug)
Si quelqu'un peut m'aider, je lui en serait tres reconaissant. Je ne sais pas si ca vient de la config d'apache2/php4 ou d'autre chose... Ou alors un moyen que ca remarche... (mon but est juste que ca remarche, je n'ai pas vocation a devenir webmestre, admin ou developpeur web).
Merci !
# php.ini
Posté par Antonio Da Silva (site web personnel) . Évalué à 1.
pour moi ça sent le moteur php qui n'initialise pas les variables depuis la QUERY_STRING.
je crois que c'est géré par register_global dans le php.ini
[^] # Re: php.ini
Posté par zerbro . Évalué à 1.
C'etait en effet ca, la variable etait sur off. J'ai réglé à on, et tout remarche.
[^] # Re: php.ini
Posté par Pinaraf . Évalué à 2.
$page=$_GET["page"];
En effet, en cas de changement d'hébergeur (on sait jamais), tu seras pas emmerdé : il y a pas mal d'hébergeurs où register_globals n'est pas activé...
[^] # Re: php.ini
Posté par jerome (site web personnel) . Évalué à 2.
[^] # Re: php.ini
Posté par Pinaraf . Évalué à 2.
[^] # Re: php.ini
Posté par Thomas Douillard . Évalué à 3.
if (bidou){
$toubidou="bla";
}
print $toubidou;
toubidou reste initialisée si non(bidou)
suppose que c'set le comportement que tu veuille obtenir, et qu'un petit malin mette un petit ?toubiou="truc" dans son url, et ben là elle sera plus du tout pas initialisée.
c'est encore plus dangereux si t'as un "eval($toubidou)" dans ta page et que l'url c'est ?toubidou="rm -rf /" ;)
[^] # Re: php.ini
Posté par Pinaraf . Évalué à 2.
Par contre pour la faille include c'est plus simple à exploiter : on la voit dans l'URL...
[^] # Re: php.ini
Posté par Prae . Évalué à 3.
[^] # Re: php.ini
Posté par Pinaraf . Évalué à 2.
Mais j'aimerais savoir s'il est possible d'attaquer une page totalement inconnue via cette faille potentielle...
[^] # Re: php.ini
Posté par Prae . Évalué à 2.
# faille include
Posté par Matthieu Moy (site web personnel) . Évalué à 2.
cf. par exemple http://linuxfr.org/~colinleroy/16707.html(...)
[^] # Re: faille include
Posté par Pinaraf . Évalué à 3.
[^] # Re: faille include
Posté par zerbro . Évalué à 2.
J'ai rajouté un open_base_dir dans php.ini et j'ai mis allow_url_fopen à off.
S'il y a d'autres trucs a faire, dites le moi, vous seriez bien urbain.
Après, comme je l'ai dis, je ne suis ni admin, ni developpeur web. J'ai fais un site perso pour voir ce que c'était que le css, le html et le php vite fait. D'ailleur, je remercie un pot (qui se reconnaitra s'il lit le message) pour toutes les fonctions qu'il m'a donné :)
Apres ca d'ailleur, je suis convaincu que je veux vraiment pas faire ce genre de boulot ! Et ca tombe bien, je n'ai pas fais grand chose
pour :)
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.