Jump to content

[SECURITE] SPAM Compte Client : solution [1.3 -> 1.7]


Recommended Posts

Depuis le 03-MAI-2019, la version 1.6.1.24 intègre ce patch. Si rien ne vous en empêche, Mettez à jour.

 

Si vous continuez car vous ne pouvez pas mettre à jour.
Assurez vous d'utiliser un éditeur de source respectueux de l'encodage de caractère.

 

La méthode la plus simple (1.5.4.1+ à 1.7):

Un script qui fait ça tout seul https://area51.enter-solutions.com/snippets/122  (1.5.4.1+ à 1.7)
Créez une fichier patch122.php dans votre répertoire admin. Copier le contenu ci-dessus dedans.
Lancez le patch. https://votre-domaine.tld/votre-bo/patch122.php

 

 

Pour ceux qui veulent tout faire eux-même

Dans votre classes classes/Validate.php - soit dans le code original, soit dans une override, ajoutez cette fonction

    public static function isCustomerName($name)
    {
        if (preg_match(Tools::cleanNonUnicodeSupport('/www|http/ui'),$name)) {
        	return false;
        }

        return preg_match(Tools::cleanNonUnicodeSupport('/^[^0-9!\[\]<>,;?=+()@#"°{}_$%:\/\\\*\^]*$/u'), $name);
    }

Modifiez ensuite dans classes/Customer.php

            'lastname' =>                    array('type' => self::TYPE_STRING, 'validate' => 'isName', 'required' => true, 'size' => 32),
            'firstname' =>                    array('type' => self::TYPE_STRING, 'validate' => 'isName', 'required' => true, 'size' => 32),

par

            'lastname' =>                    array('type' => self::TYPE_STRING, 'validate' => 'isCustomerName', 'required' => true, 'size' => 32),
            'firstname' =>                    array('type' => self::TYPE_STRING, 'validate' => 'isCustomerName', 'required' => true, 'size' => 32),

 

Pour les 1.3 et 1.4 c'est ici:

 

Après avoir patché, Supprimez intégrale le compte client - permettez qu'il se réinscrive

 

Buy Me a Coffee at ko-fi.com

 

EDIT: Je ne suis plus ce topic. Pour toute demande d'aide le concernant, merci d'utiliser un ticket support.

 

Edited by doekia (see edit history)
  • Like 7
  • Thanks 7
Link to comment
Share on other sites

Vu ta réponse dans un autre post, j'en ai déduit que oui.

J'ai donc copié les fichiers classes/Validate.php et Customer.php dans le dossier override/classes.

J'ai modifié Validate.php

class ValidateCore
{
    const ADMIN_PASSWORD_LENGTH = 8;
    const PASSWORD_LENGTH = 5;

    public static function isIp2Long($ip)
    {
        return preg_match('#^-?[0-9]+$#', (string)$ip);
    }

    public static function isAnything()
    {
        return true;
    }
	
	/**
	* Validation des clients par doekia
	*/	
    public static function isCustomerName($name)
    {
        if (preg_match(Tools::cleanNonUnicodeSupport('/www|http/ui'),$name))
           return false;

        return preg_match(Tools::cleanNonUnicodeSupport('/^[^0-9!\[\]<>,;?=+()@#"°{}_$%:\/\\\*\^]*$/u'), $name);
    }
	

Et Customer.php:

    public static $definition = array(
        'table' => 'customer',
        'primary' => 'id_customer',
        'fields' => array(
            'secure_key' =>                array('type' => self::TYPE_STRING, 'validate' => 'isMd5', 'copy_post' => false),
            'lastname' =>                    array('type' => self::TYPE_STRING, 'validate' => 'isCustomerName', 'required' => true, 'size' => 32),
            'firstname' =>                    array('type' => self::TYPE_STRING, 'validate' => 'isCustomerName', 'required' => true, 'size' => 32),			

J'ai supprimé le fichier cache/class_index.php

Puis j'ai rafraichi mon FO mais là, j'ai une page blanche...

J'ai mal fait quelque chose mais quoi ?

Merci

Link to comment
Share on other sites

Si tu n'as pas déjà d'override sur Validate, ...

<?php

class Validate extends ValidateCore
{
    public static function isCustomerName($name)
    {
        if (preg_match(Tools::cleanNonUnicodeSupport('/www|http/ui'),$name))
           return false;

        return preg_match(Tools::cleanNonUnicodeSupport('/^[^0-9!\[\]<>,;?=+()@#"°{}_$%:\/\\\*\^]*$/u'), $name);
    }
}

Pour Customer c'est un peu plus compliqué ... plus simple direct dans le code natif

Edited by doekia (see edit history)
Link to comment
Share on other sites

même problème pour moi depuis hier soir sur plusieurs site...

et toujours la même adresse IP pour tous les faux comptes (46.22.220.10)

regarder surement la même aussi pour vous...

je vais essayer de modifier le Validate.php ...

mais je crains qu'ils ne reviennent ensuite avec faux nom et prénom à la place des urls... 

ne faudrait'il pas un captcha au formulaire de création de compte ?

ou alors interdire l’accès au serveur de cette adresse IP via Htacces ?  

 

a votre avis ?

 

Link to comment
Share on other sites

Doekia, non, je n'ai pas déjà d'override sur Validate.php

Je vais faire la modif dans le code plutôt que dans override comme tu le suggères.

L'idée du captcha sur le formulaire d'inscription  est bien mais comment le mettre en œuvre ?

 

 

edit: idem page blanche en fo après modification directe des 2 fichiers

J'ai édité define.inc.php pour y mettre define('_PS_MODE_DEV_', true) mais pas de message d'erreur...

Edited by P i l o u (see edit history)
Link to comment
Share on other sites

3 minutes ago, sebwvs said:

même problème pour moi depuis hier soir sur plusieurs site...

et toujours la même adresse IP pour tous les faux comptes (46.22.220.10)

regarder surement la même aussi pour vous...

je vais essayer de modifier le Validate.php ...

mais je crains qu'ils ne reviennent ensuite avec faux nom et prénom à la place des urls... 

ne faudrait'il pas un captcha au formulaire de création de compte ?

ou alors interdire l’accès au serveur de cette adresse IP via Htacces ?  

 

a votre avis ?

Pourquoi font-ils se genre de chose si ce n'est pour vous "vendre" des pseudo site porno?

Si ils ne peuvent plus mettre leur lien, ils changent de crèmerie.

Là le bot va se planter sur les shops protégé, d'ici a ce qu'il ait éclusé le net ça va laisser du temps

Link to comment
Share on other sites

4 minutes ago, P i l o u said:

 idem page blanche en fo après modification directe des 2 fichiers

J'ai édité define.inc.php pour y mettre define('_PS_MODE_DEV_', true) mais pas de message d'erreur... 

Tu as bien supprimé tes "overrides" ratés?

effacé le cache/class_index.php

Tu utilises quoi comme éditeur de texte?

Link to comment
Share on other sites

il y a 2 minutes, doekia a dit :

Pourquoi font-ils se genre de chose si ce n'est pour vous "vendre" des pseudo site porno?

Si ils ne peuvent plus mettre leur lien, ils changent de crèmerie.

Là le bot va se planter sur les shops protégé, d'ici a ce qu'il ait éclusé le net ça va laisser du temps

pas faux ... 😉 suite au prochaine épisode 

Link to comment
Share on other sites

Merci pour Doekia pour les modifs.
C'est dommage que ce type de protection ne soit pas native après le spam sur le formulaire de contact voilà que c'est par les inscriptions, à chaque mise à jour on doit refaire tout ça et la liste s'allonge avec le temps.

  • Like 1
Link to comment
Share on other sites

2 minutes ago, passicool said:

Merci pour Doekia pour les modifs.
C'est dommage que ce type de protection ne soit pas native après le spam sur le formulaire de contact voilà que c'est par les inscriptions, à chaque mise à jour on doit refaire tout ça et la liste s'allonge avec le temps.

et vraiment on a de la chance d'avoir doekia et eolia #hero
je patch de suite

  • Like 1
Link to comment
Share on other sites

il y a 7 minutes, P i l o u a dit :

Tu as écrit : " soit dans le code original, soit dans une override "

J'ai essayé en override, et puis comme ça ne fonctionnait pas, j'ai modifié directement les 2 fichiers dans /classes/

 

Tu veux un accès ftp ?

vérifie si il te manque pas un    }  à la fin de ton Validate.php  ?

Link to comment
Share on other sites

5 minutes ago, P i l o u said:

Tu as écrit : " soit dans le code original, soit dans une override "

J'ai essayé en override, et puis comme ça ne fonctionnait pas, j'ai modifié directement les 2 fichiers dans /classes/

 

Tu veux un accès ftp ?

Tu dois juste ajouter à la fin du fichier classes/Validate.php avant la dernière }

     /**
     * Patch Doekia spam inscription
     *
     */
	public static function isCustomerName($name)
    {
        if (preg_match(Tools::cleanNonUnicodeSupport('/www|http/ui'),$name))
           return false;

        return preg_match(Tools::cleanNonUnicodeSupport('/^[^0-9!\[\]<>,;?=+()@#"°{}_$%:\/\\\*\^]*$/u'), $name);
    }

Ensuite du modifie le fichier classes/Customer.php

avec les infos du post 1 de Doekia

Link to comment
Share on other sites

il y a 10 minutes, planetediscount a dit :

Tu dois juste ajouter à la fin du fichier classes/Validate.php avant la dernière }


     /**
     * Patch Doekia spam inscription
     *
     */
	public static function isCustomerName($name)
    {
        if (preg_match(Tools::cleanNonUnicodeSupport('/www|http/ui'),$name))
           return false;

        return preg_match(Tools::cleanNonUnicodeSupport('/^[^0-9!\[\]<>,;?=+()@#"°{}_$%:\/\\\*\^]*$/u'), $name);
    }

 

En faisant ce que tu écris, j'ai un message d'erreur en fo :

Parse error: syntax error, unexpected 'function' (T_STRING), expecting variable (T_VARIABLE) in /home/www/*****/classes/Validate.php on line 1106

 

Link to comment
Share on other sites

il y a 2 minutes, P i l o u a dit :

En faisant ce que tu écris, j'ai un message d'erreur en fo :


Parse error: syntax error, unexpected 'function' (T_STRING), expecting variable (T_VARIABLE) in /home/www/*****/classes/Validate.php on line 1106

 

vérifie si il te manque pas un    }  à la fin de ton Validate.php  ?

colle

juste avant la dernier 

public static function isCustomerName($name)
    {
        if (preg_match(Tools::cleanNonUnicodeSupport('/www|http/ui'),$name))
           return false;

        return preg_match(Tools::cleanNonUnicodeSupport('/^[^0-9!\[\]<>,;?=+()@#"°{}_$%:\/\\\*\^]*$/u'), $name);
    }
Edited by sebwvs (see edit history)
Link to comment
Share on other sites

Le forum ajoute des BOM en copiant collant

public static function<feff> isCustomerName($name)

 'lastname' =>                    array('<feff>type' => self::TYPE_ST<feff>RING, 'validate' => 'i<feff>sCustomerName', 'required' => true, 'size'<feff> => 32)<feff><feff>,

 

 

Edited by doekia (see edit history)
Link to comment
Share on other sites

J'ai écris tout le code à la main (pas de copié collé)

Parse error: syntax error, unexpected '' (T_STRING) in /home/www/******/classes/Validate.php on line 1112

Voilà ma ligne 1112 : return preg_match(Tools::cleanNonUnicodeSupport (' /^[^0-9 !\[\]<>,;?=+()@#"°{}_$%:\/\\\*\^]*$/u'), $name) ;

Link to comment
Share on other sites

D'abord un grand merci !

J'ai appliqué les modifs, on va voir ce que ça donne, c'est des vagues toutes les 1 ou 2 heures

Par contre un effet de bord :
Quand on va dans le b.o. pour supprimer les client pourris, il met un message d'erreur :
Property Customer->lastname is not valid
et impossible de supprimer.

Mais c'est un moindre mal...

Link to comment
Share on other sites

La même chose s'applique au 1.4 et 1.3

Il faut seulement adapter cette section dans Customer.php

        protected $fieldsValidate = array('secure_key' => 'isMd5', 'lastname' => 'isName', 'firstname' => 'isName', 'email' => 'isEmail', 'passwd' => 'isPasswd',
                 'id_gender' => 'isUnsignedId', 'birthday' => 'isBirthDate', 'newsletter' => 'isBool', 'optin' => 'isBool', 'active' => 'isBool', 'note' => 'isCleanHtml', 'is_guest' => 'isBool');
        protected $exclude_copy_post = array('secure_key', 'active', 'date_add', 'date_upd', 'last_passwd_gen', 'newsletter_date_add', 'id_default_group', 'ip_registration_newsletter', 'note', 'is_guest', 'deleted');

en

        protected $fieldsValidate = array('secure_key' => 'isMd5', 'lastname' => 'isCustomerName', 'firstname' => 'isCustomerName', 'email' => 'isEmail', 'passwd' => 'isPasswd',
                 'id_gender' => 'isUnsignedId', 'birthday' => 'isBirthDate', 'newsletter' => 'isBool', 'optin' => 'isBool', 'active' => 'isBool', 'note' => 'isCleanHtml', 'is_guest' => 'isBool');
        protected $exclude_copy_post = array('secure_key', 'active', 'date_add', 'date_upd', 'last_passwd_gen', 'newsletter_date_add', 'id_default_group', 'ip_registration_newsletter', 'note', 'is_guest', 'deleted');

La modif dans Validate.php est quasi identique:

    public static function isCustomerName($name)
    {
        if (preg_match('/www|http/ui',$name)) {
        	return false;
        }

        return preg_match('/^[^0-9!\[\]<>,;?=+()@#"°{}_$%:\/\\\*\^]*$/u', $name);
    }

 

  • Like 2
  • Thanks 2
Link to comment
Share on other sites

5 hours ago, planetediscount said:

Tu dois juste ajouter à la fin du fichier classes/Validate.php avant la dernière }


     /**
     * Patch Doekia spam inscription
     *
     */
	public static function isCustomerName($name)
    {
        if (preg_match(Tools::cleanNonUnicodeSupport('/www|http/ui'),$name))
           return false;

        return preg_match(Tools::cleanNonUnicodeSupport('/^[^0-9!\[\]<>,;?=+()@#"°{}_$%:\/\\\*\^]*$/u'), $name);
    }

Ensuite du modifie le fichier classes/Customer.php

avec les infos du post 1 de Doekia

Bonjour,

 

Je suis sur 1.6.

J'ai tout fait comme indiqué:

J'ai modifié les deux fichiers dans classes/. En faisant bien attention aux }.

Page blanche en actualisant mon FO.

Alors j'ai copié les fichiers dans override/classes en ajoutant le entends CustomerCore et ValidateCore.

J'ai bien supprimé le fichier cache/class_index.php

Toujours page blanche en actualisant mon FO.

 

Une idée du souci ?

 

Edited by Ritaiko (see edit history)
Link to comment
Share on other sites

A partir de la version 1.5, comme toujours en cas d'erreur 500 et pour en savoir plus, il faut modifier cette ligne au début du fichier config/defines.inc.php sur votre ftp :

define('_PS_MODE_DEV_', false);

en remplaçant false par true, ce qui donne:

define('_PS_MODE_DEV_', true);

Et donnez-nous l'erreur après avoir enregistré le fichier et rafraîchi la page

Link to comment
Share on other sites

Comme expliqué 5 post plus haut vous avez sûrment des caractères invalide a cause du copié/collé.

Juste pour être sur, parce que certain se mélangent avec des overrides si vous optez pour cette approche ça donne:

override/classes/Customer.php

<?php

class Customer extends CustomerCore
{
    /**
     * @see ObjectModel::$definition
     */
    public static $definition = array(
        'table' => 'customer',
        'primary' => 'id_customer',
        'fields' => array(
            'secure_key' =>                array('type' => self::TYPE_STRING, 'validate' => 'isMd5', 'copy_post' => false),
            'lastname' =>                    array('type' => self::TYPE_STRING, 'validate' => 'isCustomerName', 'required' => true, 'size' => 32),
            'firstname' =>                    array('type' => self::TYPE_STRING, 'validate' => 'isCustomerName', 'required' => true, 'size' => 32),
            'email' =>                        array('type' => self::TYPE_STRING, 'validate' => 'isEmail', 'required' => true, 'size' => 128),
            'passwd' =>                    array('type' => self::TYPE_STRING, 'validate' => 'isPasswd', 'required' => true, 'size' => 32),
            'last_passwd_gen' =>            array('type' => self::TYPE_STRING, 'copy_post' => false),
            'id_gender' =>                    array('type' => self::TYPE_INT, 'validate' => 'isUnsignedId'),
            'birthday' =>                    array('type' => self::TYPE_DATE, 'validate' => 'isBirthDate'),
            'newsletter' =>                array('type' => self::TYPE_BOOL, 'validate' => 'isBool'),
            'newsletter_date_add' =>        array('type' => self::TYPE_DATE,'copy_post' => false),
            'ip_registration_newsletter' =>    array('type' => self::TYPE_STRING, 'copy_post' => false),
            'optin' =>                        array('type' => self::TYPE_BOOL, 'validate' => 'isBool'),
            'website' =>                    array('type' => self::TYPE_STRING, 'validate' => 'isUrl'),
            'company' =>                    array('type' => self::TYPE_STRING, 'validate' => 'isGenericName'),
            'siret' =>                        array('type' => self::TYPE_STRING, 'validate' => 'isSiret'),
            'ape' =>                        array('type' => self::TYPE_STRING, 'validate' => 'isApe'),
            'outstanding_allow_amount' =>    array('type' => self::TYPE_FLOAT, 'validate' => 'isFloat', 'copy_post' => false),
            'show_public_prices' =>            array('type' => self::TYPE_BOOL, 'validate' => 'isBool', 'copy_post' => false),
            'id_risk' =>                    array('type' => self::TYPE_INT, 'validate' => 'isUnsignedInt', 'copy_post' => false),
            'max_payment_days' =>            array('type' => self::TYPE_INT, 'validate' => 'isUnsignedInt', 'copy_post' => false),
            'active' =>                    array('type' => self::TYPE_BOOL, 'validate' => 'isBool', 'copy_post' => false),
            'deleted' =>                    array('type' => self::TYPE_BOOL, 'validate' => 'isBool', 'copy_post' => false),
            'note' =>                        array('type' => self::TYPE_HTML, 'validate' => 'isCleanHtml', 'size' => 65000, 'copy_post' => false),
            'is_guest' =>                    array('type' => self::TYPE_BOOL, 'validate' => 'isBool', 'copy_post' => false),
            'id_shop' =>                    array('type' => self::TYPE_INT, 'validate' => 'isUnsignedId', 'copy_post' => false),
            'id_shop_group' =>                array('type' => self::TYPE_INT, 'validate' => 'isUnsignedId', 'copy_post' => false),
            'id_default_group' =>            array('type' => self::TYPE_INT, 'copy_post' => false),
            'id_lang' =>                    array('type' => self::TYPE_INT, 'validate' => 'isUnsignedId', 'copy_post' => false),
            'date_add' =>                    array('type' => self::TYPE_DATE, 'validate' => 'isDate', 'copy_post' => false),
            'date_upd' =>                    array('type' => self::TYPE_DATE, 'validate' => 'isDate', 'copy_post' => false),
        ),
    );

}

override/classes/Validate.php

<?php

class Validate extends ValidateCore
{
    public static function isCustomerName($name)
    {
        if (preg_match(Tools::cleanNonUnicodeSupport('/www|http/ui'),$name))
           return false;

        return preg_match(Tools::cleanNonUnicodeSupport('/^[^0-9!\[\]<>,;?=+()@#"°{}_$%:\/\\\*\^]*$/u'), $name);
    }
}

Assurez vous d'utiliser un éditeur source digne de ce nom (notepad++ en mode ansi, vi avec :se list, ...)

Supprimez cache/class_index.php

 

 

Link to comment
Share on other sites

Coucou,

bon, je me penche dessus avant l'apéro et là petite erreur :

 Parse error: syntax error, unexpected 'return' (T_RETURN) in /home/www/override/classes/Validate.php on line 24

et la ligne 24 c'est :

return preg_match(Tools::cleanNonUnicodeSupport('/^[^0-9!\[\]<>,;?=+()@#"°{}_$%:\/\\\*\^]*$/u'), $name);

pourtant j'ais pas d'erreur apparente sur le code

class Validate extends ValidateCore
{
    public static function isCustomerName($name)
    {
        if (preg_match(Tools::cleanNonUnicodeSupport('/www|http/ui'), $name)) {
            return false;
        }

        return preg_match(Tools::cleanNonUnicodeSupport('/^[^0-9!\[\]<>,;?=+()@#"°{}_$%:\/\\\*\^]*$/u'), $name);
    }
}

Corrigé avec ce code ?????

class Validate extends ValidateCore
{
    public static function isCustomerName($name)
    {
        if (preg_match(Tools::cleanNonUnicodeSupport('/www|http/ui'), $name)) {
            return false;
        }

        return preg_match(Tools::cleanNonUnicodeSupport('/^[^0-9!\[\]<>,;?=+()@#"°{}_$%:\/\\\*\^]*$/u'), $name);
    }
}

 

Edited by Mediacom87 (see edit history)
Link to comment
Share on other sites

Moi je copie direct depuis vi :D

J'ai plus l'impression que c'est des parasites dû à la colorisation de syntaxe. En tout cas si quelqu'un (révons) de la team pouvait regarder ce problème sur le copier coller du code ça serait bien car si on ne peux plus partager de code sans s'exposer à l'ire de ceux auquel  est destiné ce code, j'arrête immédiatement.

Link to comment
Share on other sites

Hello 

Merci pour les réponses, 

j'ai passé la journée à me tourmenter dessus ; j'ai un pote qui vient de passer on vient de capter à quoi servait ces inscriptions toutes pourries et j'ai installé le captcha sur l'inscription inutile. Je savais plus par quel moyen m'en sortir, quand je continue encore et toujours mes recherches sur google et bingo, j'arrive ici, donc MERCI 

Pour en revenir a nos moutons, je suis relativement une bille pour ce genre de modifs qui me paraisse un peu complexe... J'aimerai éviter une page blanche en FO et une crise cardiaque en BO :-)

Donc je suis un peu perdu sur l'override ou autre, de mémoire mon site ne l'utilise plus.. Je pense modifier les fichiers coeurs, 

Est ce que c'est possible d'avoir la solution pas à pas guidée exacte pour que je puisse essayer. Je suis assez effrayé de tout ca car mes sites c'est mes bébés que je controle pas suffisament bien donc merci à vous si c'est possible de réécrire la solution pour les débutants comme je suis :) (enfin pas expert)

Link to comment
Share on other sites

7 hours ago, doekia said:

Heu le patch sur area51 est exactement ça

merci Doekia.

donc je prend le patch sur area51. Patch.php

je l’upload à la racine de mon site ou de mes sites ? Car plusieurs sont touchés . 

Et ensuite je lance www.monsite.fr/patch.php

 

Link to comment
Share on other sites

Chez moi le patch n'a pas créé les fichiers (il est noté d'utiliser le patch dans le dossier admin), j'ai les messages de création des override mais les fichiers n'y sont pas. Du coup j'ai tenté l'override en manuel mais l'override de Validate me génère une page blanche, du coup  j'ai modifié les fichiers originaux et ça marche.

Link to comment
Share on other sites

5 minutes ago, Fab20620 said:

Chez moi le patch n'a pas créé les fichiers (il est noté d'utiliser le patch dans le dossier admin), j'ai les messages de création des override mais les fichiers n'y sont pas. Du coup j'ai tenté l'override en manuel mais l'override de Validate me génère une page blanche, du coup  j'ai modifié les fichiers originaux et ça marche.

Salut Fab20620

Est ce que tu peux m'envoyer le code stp que tu as insérer dans les fichiers et qui ne crée pas de probleme? 

Je pense faire pareil, implémenter directement dans le coeur plutot que l'override, 

merci 

Link to comment
Share on other sites

23 hours ago, doekia said:

Dans votre classes classes/Validate.php - soit dans le code original, soit dans une override, ajoutez cette fonction


    public static function isCustomerName($name)
    {
        if (preg_match(Tools::cleanNonUnicodeSupport('/www|http/ui'),$name)) {
        	return false;
        }

        return preg_match(Tools::cleanNonUnicodeSupport('/^[^0-9!\[\]<>,;?=+()@#"°{}_$%:\/\\\*\^]*$/u'), $name);
    }

Modifiez ensuite dans classes/Customer.php


            'lastname' =>                    array('type' => self::TYPE_STRING, 'validate' => 'isName', 'required' => true, 'size' => 32),
            'firstname' =>                    array('type' => self::TYPE_STRING, 'validate' => 'isName', 'required' => true, 'size' => 32),

par


            'lastname' =>                    array('type' => self::TYPE_STRING, 'validate' => 'isCustomerName', 'required' => true, 'size' => 32),
            'firstname' =>                    array('type' => self::TYPE_STRING, 'validate' => 'isCustomerName', 'required' => true, 'size' => 32),

 

Un script

https://area51.enter-solutions.com/snippets/122

 

Buy Me a Coffee at ko-fi.com

c'est quoi le probleme dans ce cas la, les Boom dont vous parlez ? 

merci

Link to comment
Share on other sites

2 minutes ago, artistik said:

Cool Merci FAb20620

 

Je vais tenter le coup d'ici quelques heures... 

 

En attendant, j'essaie de voir si je bloque l'ip mentionné dans le forum si ca va deja faire son effet : 46.22.220.10

 

Ce matin j'ai l'ip 46.22.220.49, c'est pour ça que j'ai appliqué ces patchs, si on va se taper une tonne d'IP différentes ça va être chaud 🙂

 

Link to comment
Share on other sites

C'est pas pour rien qu'on a écrit ces patchs...

Il vaut mieux raisonner à long terme et pouvoir s'occuper d'autre chose plutôt que de passer son temps à surveiller et bloquer des IP. Mais chacun fait comme il veut

Link to comment
Share on other sites

5 minutes ago, Eolia said:

C'est pas pour rien qu'on a écrit ces patchs...

Il vaut mieux raisonner à long terme et pouvoir s'occuper d'autre chose plutôt que de passer son temps à surveiller et bloquer des IP. Mais chacun fait comme il veut

Oui tu as mille fois raison. Merci pour cette solution et pour la réactivité 🙂

Link to comment
Share on other sites

il y a 3 minutes, SOURIRE DES SAVEURS a dit :

Bonjour,

j'ai pour ma part bloqué l'adresse IP 46.22.220.10 depuis mon cpanel

Pourquoi préférez-vous coder au risque d'erreur ? puisque vous savez depuis quelle adresse IP proviennent ces fausses inscriptions ?

Merci

Parce que les IP changent^^

Les seules erreurs que cela peut engendrer ne seraient dues qu'à une mauvaise installation du code.

Link to comment
Share on other sites

1 hour ago, artistik said:

merci Doekia.

donc je prend le patch sur area51. Patch.php

je l’upload à la racine de mon site ou de mes sites ? Car plusieurs sont touchés . 

Et ensuite je lance www.monsite.fr/patch.php

 

Presque, le fichier doit être déposé dans ton répertoire admin

Link to comment
Share on other sites