attaque spam sur site plume

16 views
Skip to first unread message

jojaba

unread,
Mar 22, 2011, 2:57:34 AM3/22/11
to Plume CMS - users
Bonjour,

Mon site fait l'objet d'une attaque spam (il est hébergé sur free et
je dois bien avouer que ces derniers temps je ne m'en suis plus trop
occupé). Le souci vient du fait que certains messages passent la
barrière des différentes solutions anti-spam proposées par Loïc
(validation du message, akismet) et sont immédiatement mis en ligne
(ils sont reconnus comme étant valides sans mon intervention). J'ai
donc essayé de trouver un moyen simple (histoire de comprendre ce que
je mets en place) et efficace pour éviter ce genre de situation. J'ai
trouvé quelque chose ici : http://neosting.net/aide-tutoriel/un-formulaire-anti-spam-sans-captcha-ni-artifice.html
J'ai opté pour la solution php, voici comment j'ai procédé.

Voici le formulaire de mon template inséré dans le fichier
comments_inline.php :
============code=================
<form action="<?php pxCtAction(); ?>" name="c_form" method="post">
<fieldset>
<legend><?php echo __('Add a comment'); ?></legend>
<input name="redirect" value="<?php pxCtRedirect(); ?>"
type="hidden" />
<p class="n"><label for='c_name'><?php echo __('Name:'); ?></
label><input type="text" id='c_name' name="c_name" />&nbsp;<span
class="user-name"><?php echo __('required'); ?></span></p>
<p class="a"><label for='c_author'><?php echo __('Author:'); ?></
label><input type="text" id='c_author' name="c_author" />&nbsp;<span
class="user-name"><?php echo __('required'); ?></span></p>
<p class="e"><label for='c_email'><?php echo __('Email:'); ?></
label><input type="text" id='c_email' name="c_email" />&nbsp;<span
class="user-email"><?php echo __('required but not shared or
displayed'); ?></span></p>
<p class="w"><label for='c_website'><?php echo __('Website:'); ?></
label><input type="text" id='c_website' name="c_website" />&nbsp;<span
class="user-website"><?php echo __('optionnal'); ?></span></p>
<p class="c"><label for='c_content'><?php echo __('Comment'); ?></
label><textarea cols="80" rows="7" id='c_content' name="c_content"></
textarea></p>
<p class="input-submit">
<input type="submit" name="c_preview" value="<?php echo
__('Preview'); ?>" />
</p>
</fieldset>
</form>
=================================

Le champ "c_name" doit rester vide (c'est un leurre) pour que le
commentaire ne soit pas pris en compte comme un spam. Je le cache en
utilisant la feuille de style, afin qu'un utilisateur "humain" ne voit
pas ce champ. Donc dans la css je place :
============Code=================
p.n {display: none;}
=================================
Ça ne marche donc que pour les utilisateurs qui visionnent le site
normalement et pas pour ceux qui ont désactivé la css (mais je pense
qu'ils sont rare).

Deuxième manip, j'ajoute une ligne dans le fichier comments_post.php
permettant de récupérer la valeur du premier champ et la traiter (je
me suis contenté de refuser l'accès à la page de validation, il y a
peut-être mieux à faire...) :
============code=================
if(isset($_POST['c_name']) && !empty($_POST['c_name'])) exit;
=================================

En principe, si le champ "c_name" est rempli, le message n'est pas
validé, c'est à dire que le robot n'a pas accès à la page de
validation. Les robots remplissent en général tous les champs d'un
formulaire...
Or, il y a encore des spams qui passent. Je n'arrive pas à comprendre
pourquoi. Est-ce peut-être dû au fait que les robots utilisent une
version du site dans le cache ? Pourtant, je l'ai vidé manuellement...
Ils utilisent peut-être une version dans le cache Google ? Quelqu'un
peut m'éclairer ?
Une autre question que je me posais également, est-ce que la méthode
javascript serait efficace (intercepter avec "onsubmit" et empêcher
l'envoi si le champ "name" est rempli) ?

Merci d'avance pour votre aide.

Loic d'Anterroches

unread,
Mar 23, 2011, 5:38:29 AM3/23/11
to plume-c...@googlegroups.com
Bonjour,

j'utilise akismet et cela fonctionne tr�s bien.

As-tu activ� Akismet?

lo�c

On 2011-03-22 07:57, jojaba wrote:
> Bonjour,
>

> Mon site fait l'objet d'une attaque spam (il est h�berg� sur free et


> je dois bien avouer que ces derniers temps je ne m'en suis plus trop

> occup�). Le souci vient du fait que certains messages passent la
> barri�re des diff�rentes solutions anti-spam propos�es par Lo�c
> (validation du message, akismet) et sont imm�diatement mis en ligne
> (ils sont reconnus comme �tant valides sans mon intervention). J'ai
> donc essay� de trouver un moyen simple (histoire de comprendre ce que
> je mets en place) et efficace pour �viter ce genre de situation. J'ai
> trouv� quelque chose ici : http://neosting.net/aide-tutoriel/un-formulaire-anti-spam-sans-captcha-ni-artifice.html
> J'ai opt� pour la solution php, voici comment j'ai proc�d�.
>
> Voici le formulaire de mon template ins�r� dans le fichier

> �a ne marche donc que pour les utilisateurs qui visionnent le site
> normalement et pas pour ceux qui ont d�sactiv� la css (mais je pense
> qu'ils sont rare).
>
> Deuxi�me manip, j'ajoute une ligne dans le fichier comments_post.php
> permettant de r�cup�rer la valeur du premier champ et la traiter (je
> me suis content� de refuser l'acc�s � la page de validation, il y a
> peut-�tre mieux � faire...) :


> ============code=================
> if(isset($_POST['c_name']) && !empty($_POST['c_name'])) exit;
> =================================
>
> En principe, si le champ "c_name" est rempli, le message n'est pas

> valid�, c'est � dire que le robot n'a pas acc�s � la page de
> validation. Les robots remplissent en g�n�ral tous les champs d'un
> formulaire...
> Or, il y a encore des spams qui passent. Je n'arrive pas � comprendre
> pourquoi. Est-ce peut-�tre d� au fait que les robots utilisent une
> version du site dans le cache ? Pourtant, je l'ai vid� manuellement...
> Ils utilisent peut-�tre une version dans le cache Google ? Quelqu'un
> peut m'�clairer ?
> Une autre question que je me posais �galement, est-ce que la m�thode
> javascript serait efficace (intercepter avec "onsubmit" et emp�cher

Jojaba

unread,
Mar 23, 2011, 11:25:22 AM3/23/11
to plume-c...@googlegroups.com
Oui, je l'ai fait la semaine derni�re, cl� akismet coll�e dans le champ
pr�vu � cet effet dans la page de configuration. J'ai m�me ajout� la cl�
pour typad (c'est peut-�tre �a qui fait que �a fonctionne pas...). Mais
comme il n'y avait pas de r�sultats probant, j'ai mis en place la
solution explicit� plus haut. Ceci dit, depuis 2 jours, je n'ai plus
aucun message spam. Peut-�tre que la prise en compte des diff�rents
moyens antispam prennent un certain temps � �tre pris en compte ?
A propos s�curit�, Lo�c, t'es-tu d�j� occup� de la faille signal�e
r�cemment ?

Merci en tout cas pour ta r�ponse :)


Le 23/03/2011 10:38, Loic d'Anterroches a �crit :

>> if(isset($_POST['c_name'])&& !empty($_POST['c_name'])) exit;

Reply all
Reply to author
Forward
0 new messages