Configurar protección vía captcha en Prestashop 1.7

Los sistemas de captcha se han convertido en un esencial a la hora de evitar el spam, se trata de la típica imagen o prueba de verificación que permite comprobar si el usuario es una persona real y no un robot. No obstante en Prestashop son aún más importante, en los últimos meses este software se ha convertido en objetivo de los spammers y en muchas tiendas están cuasando auténticos problemas generando cuentas falsas por cientos al día, enviando formularios, y mucho más.

Esto no solo supone el inconveniente de tener que eliminar dichas cuentas, comentarios y demás, también afecta a la tienda, por un lado los bots automáticos consumen recursos de CPU y memoria al realizar las acciones, y por otro causan un problema de reputación ya que en cada acción la tienda envía correos de confirmación a cuentas falsas @gmail.com, @hotmail.com y similares, estos proveedores rechazan los correos al no existir la cuenta destino y a su vez consideran que el emisor (la tienda) es sospechosa de este uso ilítico y por lo tanto puede ocasionar que los correos legítimos sean clasificados como no deseados en sus usuarios.

Además de implementar el captcha debes actualizar Prestashop ya que existen varias vulnerabilidades que aún con esta medida de seguridad, los spammers aún podrían hacer uso.

Para protegernos instalaremos el módulo gratuito eicaptcha, este nos permite implementar el sistema de protección más efectivo, reCaptcha de Google.

Obteniendo e instalando el módulo

Como primer paso descargamos el módulo correspondiente a nuestra versión desde:

Debemos descargar la última versión, comprobando que en la descripción diga que se trata del módulo para 1.7 (for PS 1.7):

Al momento de escribir este artículo la última versión para 1.7 es 2.0.4

Tras esto instalamos el módulo como haríamos con cualquier otro, desde el panel de administración arrastrando el fichero .zip que hemos descargado:

También puedes descomprimir el zip y cargar el directorio vía FTP directamente a la carpeta modules de Prestashop.

Si no lo activaste, búscalo en el catálogo y activa:

Tras esto click en Configurar y accederemos a las opciones del módulo, donde nos solicitará los datos de configuración.

Obtener los datos necesarios desde reCaptcha

Necesitaremos varios datos que debemos obtener desde la web de reCaptcha, para ello accedemos desde Google reCaptcha, si no dispones de cuenta (puede ser cuenta Google o Gmail) deberás registrarte y tras esto acceder a admin console donde tendremos el formulario:

En etiqueta indicamos el dominio, lo mismo en el campo dominios, recuerda introducir tanto dominio.com como www.dominio.com

Marcamos reCAPTCHA v2 y Casilla No soy un robot y finalmente Enviar para completar.

Para terminar copia el valor de la clave de sitio web y de la clave secreta (anota cual es cual):

Completando la configuración del captcha

Ya con los datos volvemos a la configuración del módulo e introducimos las claves, la clave de sitio web en "public key" y la secreta en "private key", habilitamos las protecciones y definimos el código del idioma, quedaría así:

Guardamos y listo, todos nuestros formularios estarían protegidos: