Se ha hecho oficial una Nueva vulnerabilidad en prestashop, que puede comprometer tu web. Ellos mismos nos indican cómo solucionarla. Sigue leyendo
El día 7 de enero, Prestashop hizo pública una vulnerabilidad clasificada como crítica, que afectaba principalmente a la rama 1.7
El aviso se hizo mediante un mailing a todos los clientes para avisar de que dicha vulnerabilidad podía comprometer la tienda. De hecho, se podría llegar a perder el control sobre la misma. Ellos mismos proponían la solución, que paso a comentar a continuación.
Contenido
Nueva vulnerabilidad en prestashop
El ataque consiste en explotar una vulnerabilidad de PHPUnit que permite ejecutar código en el servidor en el que esté alojada la tienda prestashop. PHPUnit es un framework que se creó para realizar tests php. Si quieres saber más sobre ello, haz clic aquí. Lo tienes integrado en tu tienda prestashop en una carpeta llamada phpunit.
Cómo saber si mi tienda está afectada
En primer lugar, sólo se han documentado como afectados, por el momento, tiendas prestashop 1.7
Para saber si tu tienda está bajo esta nueva vulnerabilidad en prestashop, debes acceder a tu sistema de archivos (utiliza algún software como Filezilla o accede desde tu Plesk o cPanel).
Debes situarte en las carpetas siguientes y en ellas buscar si existe el directorio phpunit:
- <prestashop_directory>/vendor
- <prestashop_directory>/modules/<module_name>/vendor (debes ir módulo a módulo)
Si no aparece ese directorio phpunit, perfecto, tu tienda está «limpia».
En caso contrario, tu tienda está en peligro. Debes eliminar ese directorio.
Qué hacer si mi tienda está afectada
Elimina la carpeta phpunit. No es una carpeta esencial, y tu tienda seguirá funcionando perfectamente sin ella. Una vez la elimines, ya no se puede realizar el ataque, queda bloqueado.
Modo Avanzado: (sólo para los que sepan de qué va) en tu servidor Linux, ejecuta el comando siguiente:
find . -type d -name "phpunit" -exec rm -rf {} \;
Modo Básico: manualmente, elimina vía ftp, la carpeta phpunit de todos los lugares citados anteriormente.
Atención: tu tienda puede seguir comprometida, aunque la hayas limpiado
Prestashop documenta que se pueden haber modificado otros ficheros a través de este agujero de seguridad. Aunque hayas limpiado el directorio phpunit, a través de él han podido acceder a otros ficheros y modificarlos. Por ejemplo, AdminLoginController.php. Tienes aquí el post de Prestashop.
Prestashop recomienda comprobar los siguientes:
Además, para quedarte más tranquilo/a, utiliza la herramienta de prestashop que te indica si algún fichero ha sido modificado, lo que te daría pistas de cuáles han podido ser afectados. La tienes en Configuración -> Parámetros avanzados -> Información
Si ya has depurado tu tienda
Has detectado que estaba afectada y has llevado las medidas sugeridas. Prestashop nos recomienda, además:
- comprobar que no hay más ficheros afectados o inyectados ocultos entre cualquier carpeta
- considera informar a tus clientes (recuerda que según la RGPD estás oblidado a ello) y animarles a que cambien su contraseña.
En cualquier caso, contacta con un experto en seguridad si tienes dudas. En mi caso, puedes contactarme aquí
Módulos afectados
Prestashop ha reportado, hasta el momento, 5 módulos afectados. Todos tienen ya lista su actualización, así que, corre a actualizarlos!
- 1-Click Upgrade (autoupgrade): versiones 4.0 beta y posteriores
- Cart Abandonment Pro (pscartabandonmentpro): versiones 2.0.1~2.0.2
- Búsqueda por facetas (ps_facetedsearch): versiones 2.2.1~3.0.0
- Merchant Expertise (gamification): versiones 2.1.0 y posteriores
- PrestaShop Checkout (ps_checkout): versiones 1.0.8~1.0.9
Las versiones actualizadas que eliminan la librería infectada son:
- 1-Click upgrade: v4.10.1
- Cart Abandonment Pro: v2.0.10
- Búsqueda por facetas: v3.4.1
- Merchant Expertise: v2.3.2
- PrestaShop Checkout: v1.2.9
Esperamos que tu tienda no haya sido infectada y, de haberlo sido, esperamos que este post te haya ayudado. Si tienes dudas, pregúntame.
Mucha suerte y mucho ecommerce 🙂