[php] Soucis de livrdor php.. piraté ... - Please help, que dois je faire contre ça

Bonjour,

pour une association j’ai mis en place un petite livre d’or qui fonctionnait très bien jusque là…
Seulement depuis quelques jours, ya un petit mail qui insere du code dans le texarea de mon formulaire, et resultat j’ai du n’importe quoi dans mon livre d’or…

J’ai essayer d’interdire certains mot dans mon textarea, mais rein a faire… ça reviens…

Que puis je faire??

P.S.: j’vous donne pas son code, dès fois qu’il serait recopier… :confused:

bah je sé pas trop san ton code
est ce que tu vérifie toute les variables ?
donne des extraits modifié de ton code

voila un debut du code insérer dans mon textarea :


<div style="overflow: auto; height: 1px;">\r\n<a href="http:

Il n’ya quasiement aucun controle sur mon textarea, seulement certain mot interdit en Java…

Je n’ai pas bien compris ton probleme, mais si tu est victime d’un robot spammeur (ce qui peut arriver), la seule solution est de mettre en place une vérification avant envoie du forumlaire, par exemple taper les lettres dans une image… ou demander la validation du commentaire posté par un tiers etc…

Peronnelement je trouverait cette dernier solution plutot “laborieuse” pour un simple livre d’or. A toi de voir

Edit : j’ai mieux compris depuis la réponse de luifab, tu parles d’insertion de code genre javascript ou simple html etc ?

Si c’est donc le cas suit son conseil : )

non il faut que tu controle ce qui va être entré dans la base de donnée par php

tu control avec php juste avant l’insertion dans la base de donnée avec une regex (expression régulière)

car si tu ne fait pas ca, le pirate peut facilement recéer ta page, et envoyer ses propres informations non vérifier, c’est pour ca que php doit les vérifier avant l’enregsitrement sur ta bdd

Merci…
je ne connais pas la fonction "regex" php… etant newbie, je vais essayer de trouver des infos sur la toile…

Il semblerait que se soit un robot spammer en effet…
En essayant d’empecher les “copier/coller” dans mon textarea, cela pourrait il fonctionner ?..

A creuser … :jap:

regex ce n’est pas une fonction c’est une contraction de : expression régulière

de la doc ici par exemple : http://www.siteduzero.com/tuto-3-4-0-un-si…e-avec-php.html

des exemples de vérifications :

if ( !isset($distrib) || empty($distrib) || !isset($type) || empty($type) || !isset($chapitre) || empty($chapitre) || !isset($description) || empty($description) ) {
echo '<script type="text/JavaScript">parent.location.href="
http://www.luigifab.info/Erreur/Erreur_script.php3?id=1&nom=Formulaire+incomplet"</script>'; exit(); }

!isset : vérifie si la variable existe pas
empty : vérifie si elle est vide
ei une de ces deuux vérif renvoie true, alors j’arrète mon script

$distrib = preg_replace("!\"!i", " ", $distrib);
$description = preg_replace("!\"!i", " ", $description);

avec preg_replace je remplace tous les " par un espace pour ne pas faire planter mon script