WooCommerce sur WordPress & Paypal : les problèmes observés

Voici les problèmes que j’ai pu observé lors de l’installation :

La langue lorsque l’on passe du site à Paypal :

Pour rappel sur le site en WordPress, dans « Réglages » -> « Réglages généraux » -> « Langue » -> « Francais ».

Et aussi fuseaux horaires : Paris.

Ensuite sur WooCommerce j’ai réglé le site pour faire de la vente uniquement en France :

Pour rappel WooCommerce => « Réglages » => « Général » :

Sur le compte Paypal j’ai mis dans « Mes préférences » -> « Mes paramètres » -> « Langue » & « Fuseau horaire ».

Donc en résumé, on est en France et il y a du Français partout. Maintenant si je fais un test avec le site … au début j’avais US comme langue mais un jour après c’est passé en Français. Je pense donc qu’il faut faire preuve de patience !

Nom de la boutique lorsque l’on passe du site à Paypal :

Actuellement j’ai l’adresse email :

Je trouverai plus propre de pouvoir mettre un nom de boutique. 

Création d’un compte Paypal obligatoire :

Normalement on tombe sur cette page :

 Si je choisi « Payer sans ouvrir de compte« , je me retrouve avec ses champs qui sont obligatoires:

Pourtant j’ai bien choisi « Payer sans ouvrir de compte » !

En plus dans la configuration de Paypal j’ai choisi :

Quel est donc la vrai solution pour ne pas avoir la création d’un compte. Beaucoup de clients refusent de se voir forcer la main !

Maintenant si je passe en mode sandbox (Bac à Sable) sur WooCommerce :

J’ai aussi les champs obligatoires …

Ma question est donc simple : Est-il vraiment possible de supprimer la création du compte paypal ?!

Installation WooCommerce pour WordPress

Le site sur lequel j’ai mis en place WooCommerce : lafargacatar.com .

Les étapes de l’installation, si on commence de zéro :

  • Le plus important, c’est le choix du l’hébergeur. Je conseille vivement de prendre un compte chez phpnet.org. En plus chez PHPNET.ORG ils font des préinstallations de WordPress. 🙂 . Ceci sera donc votre compte n°1 (Compte n°1: phpnet.org) .
  • Création d’un nom de domaine (sur phpnet.org pour moi). Il faut compter au maximum 15 Euro/an pour un nom de domaine.
  • Création d’une base de donnée (sur phpnet.org pour moi). Il faut compter 2 Euro/mois pour un site (https://www.phpnet.org/mutualise.php) . (Compte n°2: phpnet.org)
    • Création d’un cron de sauvegarde journalière de la base de donnée.
  • Création d’un compte FTP (sur phpnet.org pour moi).  (Compte n°3: ftp.phpnet.org)
  • Création de 3 boites email @lafargacatar.com (sur phpnet.org pour moi). (Compte n°4, n°5, n°6: mail.phpnet.org)
  • Installation de WordPress via le téléchargement sur https://wordpress.org/download/ . Ensuite on fait un transfert via FTP.
  • Création d’un login pour le nouveau site en place  : lafargacatar.com .(Compte n°7: sur le site wordpress)
  • Installation des plugins :
    • Acunetix WP Security Par Acunetix
    • All In One WP Security Par Tips and Tricks HQ, Peter, Ruhul, Ivy
    • AMP Par Automattic
      • Nouveau système d’affichage plus rapide pour Google.
    • Captcha by BestWebSoft Par BestWebSoft
      • Contre le SPAM.
    • Clean Image Filenames Par Upperdog
      • Contre les accents dans les noms d’images.
    • Cookie Notice Par dFactory
      • Obligatoire en France pour les sites de e-commerce.
    • Fast Secure Contact Form Par Mike Challis, Ken Carlson
    • Google Analytics par MonsterInsights Par MonsterInsights
      • Impératif d’avoir Google Analytics.
    • Jetpack par WordPress.com Par Automattic
    • Simple Social Buttons Par Paweł Rabinek
      • Pour faciliter le partage.
    • WooCommerce Par WooThemes
      • Pour le site d’e-commerce.
    • Woocommerce – Loi Hamon : Par Nicolas Grillet
      • Obligatoire en France depuis 2014.
    • WP-SpamShield  Par Scott Allen
      • Contre le SPAM.
    • Livre d’or Gwolle (Gwolle GuestBook) Par Marcel Pol
  • Création des comptes avec un mot de passe différent par site :
    • wordpress.com : Pour l’extension de Jetpack. (Compte n°8: sur le site wordpress.com)
    • paypal.com : Pour le paiement en ligne. (Compte n°9: sur le site paypal.com)
    • google analytic : Pour l’analyse du trafic du site. (Compte n°10: sur le site google.com)
    • google search console : (Compte n°10: sur le site google.com)
      • Il faut aller dans « Outils », « Outils disponibles », Google Search Console. Et choisir le Tag HTML.
  • Réglage sur Jetpack :
    • Je désactive la gestion des images, sinon les liens ne pointent plus en interne (le pire c’es Photon 🙁 on se retrouve avec des liens vers i0.wp.com, i1.wp.com, and i2.wp.com …):

  • Réglage sur Acunetix WP Security :
    • Il est impératif de suivre les recommandations, c’est très bien fait :

  • Réglage général du site, en général c’est bien configuré par défaut. Ce que je change :
    • Les pages du site doivent afficher au plus : 5 articles.
    • Réglages des permaliens : Date et titre (très important pour un bon référencement)
    • Permaliens produit : Base de la boutique
    • Afficher les boutons sur : 
  • WooCommerce, c’est vraiment très simple. La seule chose un peu complexe c’est quand on ajoute des attributs. Dans ce cas il faut prendre « produit variable » et dans variation il faut prendre « Créer les variations pour tous les attributs« .

  • Ensuite avec « WP Securité », et prendre « Pare-feu » :
    • Et aussi gestionnaire de « Liste noire »:

Finalement j’ai mis cette liste noire dans les adresses IP :

123.30.187.167
174.136.35.43
194.149.10.39
211.125.90.135
212.68.54.246
62.109.15.8
91.200.12.*
91.200.13.*
91.200.14.*
91.200.15.*
91.200.156.92
93.72.100.61

Le seul réel problème sur WooCommerce c’est l’affichage de la boutique ou il y a les boutons « Ajouter au panier » qui se touche :

Il faut faire « Extension » puis CSS additionnel.

Résultat avec 60% de la taille, c’est plus propre :

Les boutons ne collent plus.

  • Pour finaliser, je conseille vivement la création de compte PRO (il est très important de ne pas mélanger la vie professionnelle et la vie personnelle. Voir même ne faire aucun lien entre !) pour votre commerce : Facebook (Compte n°11), Twitter (Compte n°12), Google+ (Compte n°13), LinkedIn (Compte n°14), Pinterest (Compte n°15), Digiposte (Compte n°16).

A la fin de l’installation il vous faut avoir 16 comptes et 16 mots de passe différent. Les mots de passe doivent être complexe. Le mieux est de prendre un générateur de mot de passe. Par exemple vous utiliser : https://www.generateurdemotdepasse.com et vous ajouter un préfixe devant les mots de passe (on sait jamais si vous êtes tracé via un cookie 😉 )

En résumé :

J’attends vos questions 🙂 …. j’ai fait vraiment simple pour avoir les grandes lignes. Il faut compter plusieurs jours. Par exemple la création du nom de domaine prend plusieurs jours avec la propagation du DNS, le virement vers le compte courant avec PayPal prend aussi plusieurs jours, … le mieux est de ce dire qu’il faut une semaine pour faire l’installation.

Je pense qu’une installation : WordPress, WooCommerce,  … coûte au moins 1000 Euro. Si on cherche sur Internet on trouve la même installation à 2000 Euro et 400 Euro/an pour le renouvellement. Il faut compter pas beaucoup de travail (3 jours), mais en fonction des clients on est souvent amené à prendre le site plus qu’en main. Et donc on perd plus de temps dans la formation que dans l’installation. Pour ce qui est de la redevance en général il abuse aussi par rapport au prix, mais bien souvent dans la réalité ils (les administrateurs) sont obligés de faire du suivi afin que l’installation soit toujours à jours. Sans installation à jour on s’expose au piratage….

Pour bien se rendre compte du temps passer, l’idéal est de prendre un fichier Excel et de noter toutes les actions (date début, date fin, type : support, conseil, installation, …). Après votre premier client vous allez vous rendre compte que le support c’est 80% du travail et que je vrai travail d’installation ne représente « rien ». Il fut un temps ou je critiquais les prix abusifs, maintenant je les trouve normaux 🙂 .

Je déconseille vivement HiPay ! Il ne font pas de sélection sur les commerçants et aucune vérification comme j’ai pu le voir. Le but dans l’e-commerce est de rassurer le consommateur … HiPay s’occupe plus des vendeurs que des clients, alors qu’il faut faire l’inverse. C’est exactement la démarche de PayPal. Mais l’inconvénient de PayPal c’est qu’il pousse trop les particuliers à la création d’un compte.

Voici quelques articles que j’ai écrit sur HiPay, en prenant soin d’envoyer des emails et de le faire suivre via Twitter :

WordPress : Sécurité

La sécurité passe aussi par l’analyse des logs d’Apache !

Je viens de faire deux POST sur la sécurité :

Attention a ne pas négliger la sécurité sur WordPress ! Il existe de bon plugin pour la sécurité :

  • Word fence Security. Version 6.2.8 | Par Wordfence
    • Email a chaque connexion.
    • Email a chaque recommandation de mise à jour.
    • Diagnostic.
  • All In One WP Security. Version 4.2.4 | Par Tips and Tricks HQ, Peter, Ruhul, Ivy
    • Filtre IP : Liste notre .
  • Captcha by BestWebSoft. Version 4.2.8 | Par BestWebSoft
  • WP-SpamShield. Version 1.9.9.8 | Par Scott Allen
    • Eviter le SPAM dans les commentaires.

Juste pour bien ce rendre compte, voici la commande pour voir le nombre d’attaques « Brute force » (voir le précédent post pour la création du fichier wp-login.txt). Certains jours on arrive a des nombres de connexions très important !

cat wp-login.txt | awk '{print $4}' | sed 's/:/ /g' | sed 's/\[/ /g'  | awk '{print $1}' | sort -n | uniq -c | sort -n | tail -10
82853 04/Aug/2014
95061 28/Apr/2015
95716 06/Aug/2014
99668 08/Jun/2015
104825 03/May/2015
106036 14/Aug/2014
107027 06/Aug/2015
107783 01/Sep/2015
110504 14/Oct/2015
217976 02/May/2015

On remarque le mois d’Aout est le préférer pour les attaques !

Et voici la commande pour voir le nombre de tentative d’injection SQL par jour :

cat select.txt | awk '{print $4}' | sed 's/:/ /g' | sed 's/\[/ /g'  | awk '{print $1}' | sort -n | uniq -c | sort -n | tail -10
 404 16/May/2009
 433 10/Feb/2016
 616 08/Aug/2008
 648 25/Jan/2015
 775 30/May/2009
 844 08/Jan/2015
 864 07/Jan/2015
1159 25/Feb/2016
1507 27/Jul/2008
1513 15/Dec/2014

Cela prend de la ressource au serveur, le mieux est donc de filtrer les IP :

123.30.187.167
174.136.35.43
194.149.10.39
211.125.90.135
212.68.54.246
62.109.15.8
91.200.12.*
91.200.13.*
91.200.14.*
91.200.15.*
91.200.156.92

Il faut aussi faire un diagnostic de l’installation, et je dois dire que de Diagnostic de Wordfence est assez bien fait. Par contre il faut faire aussi attention à la taille des tables sur MySQL, certain plugin abuse du stockage en table.

Wordfence, mon analyse des attaques « brute force »

Nouvel email ou plutôt SPAM n°121916 de Wordfence :

After our post on Friday discussing the increase in brute force attacks on WordPress in December, we received a lot of feedback. A few readers reached out to me personally with some additional data.
A source in Kiev, Ukraine contacted me and this morning we chatted via Skype about the political and military situation in Ukraine.
We published an update a few minutes ago that shows who is likely behind the attacks and what their motivation might be.

Maintenant il faut vérifier les faits, est-ce que je me fais attaquer par les Russes :

“Gabriele”, one of our readers, pointed out in the comments on our earlier post that the full IP block is 91.200.12.0/22. If you aren’t familiar with CIDR notation, that is an IP block that starts at 91.200.12.0 and ends at 91.200.15.255. It contains 1024 addresses (1022 usable addresses).

On va donc faire un petit grep :

grep "^91.200.1" access.log.* > 91_200_1.txt
wc -l 91_200_1.txt 
 302877 91_200_1.txt
cat 91_200_1.txt | sed 's/:/ /g' | awk '{print $2}' | sort -n | uniq -c | sort -n
 1 91.200.108.218
 1 91.200.113.142
 1 91.200.12.102
 1 91.200.12.45
 1 91.200.12.66
 1 91.200.14.182
 1 91.200.156.233
 2 91.200.110.171
 2 91.200.12.147
 2 91.200.12.20
 3 91.200.12.94
 5 91.200.12.12
 5 91.200.13.41
 6 91.200.12.69
 6 91.200.14.153
 7 91.200.12.76
 7 91.200.156.92
 8 91.200.12.75
 8 91.200.12.86
 11 91.200.12.47
 11 91.200.14.179
 12 91.200.14.88
 13 91.200.12.137
 13 91.200.13.5
 14 91.200.13.40
 15 91.200.12.1
 15 91.200.14.158
 16 91.200.12.8
 17 91.200.13.100
 18 91.200.12.26
 18 91.200.12.64
 19 91.200.12.148
 23 91.200.12.74
 25 91.200.12.70
 27 91.200.12.145
 27 91.200.13.43
 29 91.200.13.36
 29 91.200.14.157
 33 91.200.12.71
 34 91.200.12.25
 38 91.200.12.28
 39 91.200.14.62
 40 91.200.13.38
 41 91.200.14.89
 43 91.200.12.27
 49 91.200.12.63
 54 91.200.12.116
 54 91.200.12.19
 55 91.200.14.122
 59 91.200.12.128
 61 91.200.12.121
 64 91.200.12.130
 67 91.200.12.106
 70 91.200.12.143
 80 91.200.14.59
 82 91.200.12.141
 83 91.200.12.85
 87 91.200.12.136
 107 91.200.12.40
 120 91.200.12.58
 121 91.200.12.39
 133 91.200.12.139
 134 91.200.12.95
 144 91.200.12.7
 191 91.200.14.34
 207 91.200.12.50
 208 91.200.13.33
 256 91.200.12.49
 299 91.200.14.72
 306 91.200.12.97
 335 91.200.12.38
 587 91.200.12.91
 750 91.200.12.108
 750 91.200.12.24
 774 91.200.12.60
 868 91.200.12.84
 914 91.200.13.45
1017 91.200.12.5
1090 91.200.12.9
1226 91.200.12.51
1341 91.200.12.138
1506 91.200.12.93
1551 91.200.12.81
1635 91.200.12.56
1880 91.200.12.127
2015 91.200.12.14
2032 91.200.12.78
2149 91.200.12.113
2236 91.200.12.61
2276 91.200.13.64
2557 91.200.12.33
2802 91.200.12.92
2803 91.200.12.83
2850 91.200.12.155
4482 91.200.12.53
5175 91.200.12.22
5281 91.200.12.79
6341 91.200.12.134
6349 91.200.12.42
7572 91.200.12.18
7659 91.200.12.36
9031 91.200.12.55
12692 91.200.12.129
13800 91.200.12.29
30048 91.200.12.132
32258 91.200.12.4
46922 91.200.12.114
73544 91.200.12.65

En effet les Russes sont actifs sur le site, reste à voir si c’est sur la page wp-login.php.

grep wp-login.php 91_200_1.txt  | wc -l
  276624

En résumé on a eu 302877 connexions au site et 276624 de ses connexions (91%) se sont faites sur la page wp-login.php. Je crois en effet qu’il y a urgence à bannir ces IP (91.200.12.*)! Les autres connexions se font pour connaitre le login (Users Enumération) , par exemple :

91.200.12.113 - - [16/Dec/2016:14:54:27 +0100] "GET /?author=2 HTTP/1.1" 200 41393 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"

Les Russes font des attaques « Brut force » et les Américains des attaques par « SQL Injection ». Un travail d’équipe 🙂 .

Maintenant je regarde si ses attaques sont nouvelles :

cat 91_200_1.txt | awk '{print $4}' | sed 's/\// /g' | sed 's/:/ /g' | awk '{print $3}' | sort -n | uniq -c 
   1 2010
 547 2013
2927 2014
24339 2015
275063 2016

Mes logs commences en 2008, et les attaques ont commencé en 2013, et cela c’est bien intensifié depuis.

J’ai donc installé : All In One WP Security & Firewall , pour ne pas prendre la version payante de Wordfence.

Ajout des Russes dans la liste noire :

Avant de finir, je regarde les IP de connexions à wp-login afin de voir s’il n’y a que les Russes :

grep wp-login.php *.log.*  > wp-login.txt
wc -l wp-login.txt
6738752 wp-login.txt
cat wp-login.txt | sed 's/:/ /g' | awk '{print $2}' | sort -n | uniq -c | sort -n
...
73270 62.109.15.8 (Russian Federation)
73298 91.200.12.65 (Ukraine)
76085 211.125.90.135 (Japan)
76376 194.149.10.39 (Hungary)
78839 212.68.54.246 (TURKEY)
117155 178.33.61.27 (OVH ISP - France)
152925 188.165.202.149 (OVH SAS - France)
153445 174.136.35.43 (UNITED STATES)
153810 123.30.187.167 (VietNam)
155050 37.187.54.93 (OVH SAS - France)

Je pense que OVH SAS c’est WordPress.com, à  vérifier. On retrouve l’Ukraine en 9ème position … Je vous conseille donc vivement d’utiliser la liste noire suivante :

123.30.187.167
174.136.35.43
194.149.10.39
211.125.90.135
212.68.54.246
62.109.15.8
91.200.12.*
91.200.13.*
91.200.14.*
91.200.15.*
91.200.156.92

Et penser aussi à bloquer les énumérations avec All In One WP Security & Firewall:

Quand on voit le nombre d’attaque on comprends mieux pourquoi il faut faire confiance à Google Analytic pour l’analyse du trafic. Si on fait avec WebAnalyser on prend en compte une grande partie qui n’est rien d’autre que des attaques !