PrestaShop 1.6: Solucionar Envío de SPAM desde Formulario de Contacto

PrestaShop 1.6

¿Cansado de que los robots te hagan ataques desde el formulario de contacto de tu PrestaShop 1.6?

Si un robot consigue enviar más de 400 emails en una hora desde tu formulario de contacto en PrestaShop 1.6, en Hostinet detectaremos este ataque y abriremos una incidencia de seguridad para avisarte y para que te pongas manos a la obra para solucionarlo.

Te recordamos que en los alojamientos web de Hostinet no puedes enviar más de 400 emails por hora (si quieres enviar más tienes que contratar un paquete adicional).


El problema tal vez radica en si no se llega a alcanzar esa cifra, ves que estás recibiendo muchos correos providentes de Rusia y China (qq.com – mai.ru), pero no sabes cómo ponerle freno a este ataque al formulario.

Sistema de Captcha

Normalmente la forma más sencilla de abordar esta situación es implantando un sistema de Captcha para el formulario de contacto en PrestaShop 1.6 mediante algún módulo, sin embargo, nos han reportado clientes que el Módulo de Captcha gratuito para PrestaShop 1.7 que comentamos NO parece funcionar con PrestaShop 1.6. Nosotros lo hemos probado y tampoco nos ha funcionado. Así que si se desea poner un módulo de Captcha para PrestaShop 1.6 parece que la única alternativa que hay es pasar por caja -> Addons PrestaShop ReCaptcha

recaptcha

Lo bueno de los módulos de pago es que suelen valer para todas las versiones de PrestaShop y en esta ocasión uno de Captcha lo tenemos por unos 30€, vamos que no es muy caro si lo comparamos con otros módulos.

Otra Alternativa – Modificación de 2 Ficheros de PrestaShop 1.6

Si no estás interesado en pasar por caja igual te interesa está alternativa “casera” que básicamente consiste en modificar dos archivos de PrestaShop 1.6, introduciendo unos cambios y borrando una línea en uno de los archivos.

A primera vista puede parecer complicado, pero no lo es absoluto como vas a poder comprobar a continuación.

Los dos ficheros a modificar serían los que se encuentran en las siguientes rutas:

/controllers/front/ContactController.php
/themes/tuplantillaenuso/contact-form.tpl


Modificaciones a introducir

Para saber que modificaciones debes llevar a cabo tienes que dirigirte hasta el siguiente post de GitHub, donde aparecen documentadas:
https://github.com/PrestaShop/PrestaShop/pull/8168/files

Si te quedas mirando las modificaciones puede que te quedes igual que estabas, pero la cosa tiene “truqui”: A la izquierda puedes ver “+” y “-“, esto lo que indica es que las líneas con un “+” las tienes que añadir en tu fichero y la línea con un “-“ la tienes que borrar.

FTP y/o Administrador de Archivos de cPanel

La forma más sencilla de acceder a los dos archivos de PrestaShop 1.6 es mediante un cliente de FTP como FileZilla o a través del propio Administrador de Archivos de cPanel.

/controllers/front/ContactController.php

Por ejemplo, si accedes a través del Administrador de Archivos de cPanel debes buscar esa ruta de la instalación de PrestaShop: /controllers/front/ContactController.php, hacer click sobre el archivo con el botón derecho y después pulsar la opción de “Edit”.

PrestaShop ContactController.php Edit

Bien, ahora tienes que ir a GitHub y mirar las modificaciones a realizar en dicho archivo. La información está muy bien documentada, ya que incluso pone las líneas en las que va la información que debes añadir (son 9). Recuerda, las líneas con “+” son para añadirlas en tu archivo ContactController.php y la línea con “-“ es para quitarla.

PrestaShop ContactController.php Github

Por ejemplo, en la línea 38, justo debajo de "if (Tools::isSubmit('submitMessage')) {", debes añadir lo que hay en la línea 39 de GitHub con el “+”, es decir: “$saveContactKey = $this->context->cookie->contactFormKey;” Sobra decir que el “+” no hay que ponerlo, ya que sino rompería la línea, solo hay que poner el código (se puede hacer copy & paste).

/themes/tuplantillaenuso/contact-form.tpl

En lo que respecta al archivo contact-form.tpl debes buscarlo en la ruta de la instalación de la plantilla que estés usando actualmente y hacer click en “Edit” como antes.

PrestaShop 1.6 Contact Form Edit

En el archivo contact-form.tpl lo único que tienes que hacer es añadir las dos líneas que salen en GitHub para ese archivo.

PrestaShop 1.6 ContactForm.tpl Github

Una vez realizados los cambios indicados en GitHub basta con que borres la caché de PrestaShop y listo.

Se supone que PrestaShop ya solucionó el problema de envío de SPAM desde formulario de contacto en la versión 1.6.1.17, pero seguramente es posible que no tengas esa versión actualmente, y quien sabe, a veces las vulnerabilidades no están tan corregidas como uno piensa, así que mejor poner medidas para ello. Incluso también deberías de pensar en pasarte a PrestaShop 1.7, ya que en octubre de 2018 cesara el soporte de PrestaShop 1.6

 


Estamos presentes en las siguientes redes sociales: Facebook y Twitter @hostinet
¡SÍGUENOS!


TU Hosting PrestaShop ¡Al Mejor Precio!

  • Hosting especializado en PrestaShop con discos SSDPrestaShop 13´99 / mes
  • Hosting especializado en PrestaShop con discos SSDPrestaShop 55´99 / mes
  • Hosting especializado en PrestaShop con discos SSDPrestaShop 5011´99 / mes
  • Hosting especializado en PrestaShop con discos SSDPrestaShop 13´99/mes
  • Hosting especializado en PrestaShop con discos SSDPrestaShop 55´99/mes
  • Hosting especializado en PrestaShop con discos SSDPrestaShop 5011´99/mes
    • Una vez dado de alta tu alojamiento web, recibirás los vales correspondientes para registrar nuevos dominios .ES, .COM ó .EU.Una vez dado de alta tu alojamiento web, recibirás los vales correspondientes para registrar nuevos dominios .ES, .COM ó .EU.Una vez dado de alta tu alojamiento web, recibirás los vales correspondientes para registrar nuevos dominios .ES, .COM ó .EU.
    • Almacenamiento en disco duro ultra rápido SSDAlmacenamiento en disco duro ultra rápido SSDAlmacenamiento en disco duro ultra rápido SSDAlmacenamiento en disco duro ultra rápido SSDAlmacenamiento en disco duro ultra rápido SSD
    • El espacio en disco es la suma del espacio que ocupan los archivos que forman la web y el correo electrónico.
    • La transferencia de datos mensual es la cantidad total de información que se descargan los visitantes de nuestra web en cada acceso más nuestro uso a través de FTP y correo.
    • Ideado para sacar el máximo partido a tu PrestaShop
    • Aumenta la velocidad de tu web + Info
    • Tras evaluación de nuestro equipo de migraciones
    • Te ayudamos vía email y teléfono en todas tus consultas sobre hosting web
    • Elige la versión de PHP que necesites
    • Certificado SSL autofirmadoCertificados Let's Encrypt. Mas Información AQUICertificados Let's Encrypt. Mas Información AQUICertificados Let's Encrypt. Mas Información AQUICertificados Let's Encrypt. Mas Información AQUI
    • Contrata tu hosting web y consigue dominios gratisUna vez dado de alta tu alojamiento web, recibirás los vales correspondientes para registrar nuevos dominios .ES, .COM ó .EU.Una vez dado de alta tu alojamiento web, recibirás los vales correspondientes para registrar nuevos dominios .ES, .COM ó .EU.Una vez dado de alta tu alojamiento web, recibirás los vales correspondientes para registrar nuevos dominios .ES, .COM ó .EU.Una vez dado de alta tu alojamiento web, recibirás los vales correspondientes para registrar nuevos dominios .ES, .COM ó .EU.
    • Migramos tu web de tu actual host a HostinetMigramos tu web de tu actual host a HostinetMigramos tu web de tu actual host a HostinetMigramos tu web de tu actual host a Hostinet
    • Ideado para sacar el máximo partido a tu PrestaShop
    • Te ayudamos vía email y teléfono en todas tus consultas sobre hosting web
    • Hosting específicamente preparado para sacar el máximo rendimiento a tu PrestaShop
    • Contrata tu hosting web y consigue dominios gratisUna vez dado de alta tu alojamiento web, recibirás los vales correspondientes para registrar nuevos dominios .ES, .COM ó .EU.Una vez dado de alta tu alojamiento web, recibirás los vales correspondientes para registrar nuevos dominios .ES, .COM ó .EU.Una vez dado de alta tu alojamiento web, recibirás los vales correspondientes para registrar nuevos dominios .ES, .COM ó .EU.
    • Cada dominio alojado muestra un contenido único y diferente del resto
    • Aparcando un dominio secundario en el alojamiento de nuestro dominio principal conseguimos que ambos dominios resuelvan indistintamente con la misma página que tenemos colgada.
    • Cuentas de correo gestionables a través de POP, IMAP y servicio Webmail
    • Tus buzones de correo y mails limpios de virus y con un potente filtro antispam
    • Centro de datos en Madrid (España)
    • Opción de contratación de IP dedicadaPuedes contratar tu Ip dedicada por solo 11.95 € al año AQUIPuedes contratar tu Ip dedicada por solo 11.95 € al año AQUIPuedes contratar tu Ip dedicada por solo 11.95 € al año AQUIPuedes contratar tu Ip dedicada por solo 11.95 € al año AQUI
    • Opción de contratación de certificados SSL. Se requiere Ip dedicada.Puedes contratar tu certificado SSL por solo 14.95 € al año AQUIPuedes contratar tu certificado SSL por solo 14.95 € al año AQUIPuedes contratar tu certificado SSL por solo 14.95 € al año AQUIPuedes contratar tu certificado SSL por solo 14.95 € al año AQUI
    • Bases de datos MySQL disponibles para su uso en cada alojamiento web
    • Supeditado al espacio total del alojamientoSupeditado al espacio total del alojamientoSupeditado al espacio total del alojamientoSupeditado al espacio total del alojamiento
    • ¿Quieres realizar desarrollos con Python? En Hostinet innovamos dia a dia en tu beneficio y por ello te presentamos como última novedad en todos nuestros servidores Web la posibilidad de desplegar tus aplicaciones con Python directamente desde el Plesk de tu Hosting.
    • ¿Quieres desarrollar tus aplicaciones con Ruby? En Hostinet te presentamos como última novedad en todos nuestros servicios de Hosting Web la posibilidad de desplegar tus aplicaciones con Ruby on Rails directamente desde el panel de control Plesk.
    • El fichero .htaccess permite modificar diferentes variables en la configuración de nuestra cuenta de alojamiento en el servidor.
    • El módulo mod_rewrite permite crear direcciones URL alternativas a las dinámicas generadas por la programación de nuestros sitio web (blog, foro, portal…), de tal modo que sean más legibles y fáciles de recordar
    • Te ayudamos vía email y teléfono en todas tus consultas sobre hosting web. Soporte en español por personal de Hostinet.
    • Completa recopilación de tutoriales sobre Hosting, Dominios y PrestaShop
    • 30 dias para probar tu servicio de Hosting y si no te convence el servicio... te devolvemos el dinero!!
    • Copia diaria incremental realizada por HostinetCopia diaria incremental realizada por HostinetCopia diaria incremental realizada por HostinetCopia diaria incremental realizada por Hostinet
    • Podrás hacer tus copias de seguridad desde tu panel de alojamiento webPodrás hacer tus copias de seguridad desde tu panel de alojamiento webPodrás hacer tus copias de seguridad desde tu panel de alojamiento webPodrás hacer tus copias de seguridad desde tu panel de alojamiento web
    • Nuevas Altas. Contratación anual.