Segurización de PrestaShop

Post on 21-Mar-2017

450 views 1 download

Transcript of Segurización de PrestaShop

Securización de PrestaShop by @jruizcantero

Jose Antonio Ruiz Cantero @jruizcantero

Trabajo con PrestaShop desde 2011 y cada día me gusta aprender algo nuevo.

Contribuyo a la comunidad…

- Reportando bugs

- Organizando cursos y eventos gratuitos sobre PrestaShop

- Desarrollando módulos (Módulo Yandex Metrica en PrestaShop Addons)

- ...

¿PrestaShop Actualizado?Versiones obsoletas de cualquier software son un riesgo de seguridad.

Principalmente permanecen activas 3 ramas;

➔ PrestaShop v1.4.x

➔ PrestaShop v1.5.x

➔ PrestaShop v1.6.x

Exactamente, a día 16/09/2015, las últimas versiones estables existentes para cada rama repectivamente son;

➔ PrestaShop v1.4.11.1

➔ PrestaShop v1.5.6.3

➔ PrestaShop v1.6.1.1

+Info;https://www.prestashop.com/es/versiones-para-programadores

PrestaShop Security Release, Julio 2015A finales de Julio, Vincent Herbulot (@us3r777) reportó a security@prestashop.com un problema de seguridad relacionado con la aleatoriedad del algoritmo para la generación de contraseñas que podría permitir a un atacante obtener acceso al panel de administración de PrestaShop (Back Office).

Versiones en riesgo;

➔ Inferior a PrestaShop v1.4.11.1➔ Inferior a PrestaShop v1.5.6.3➔ Inferior a PrestaShop v1.6.1

+Info:https://www.prestashop.com/blog/en/prestashop-security-release/https://redd.it/3fmmk5

Aplica el Parche de Seguridad de Julio 2015Tienes varias opciones para solventar el problema de seguridad comentado anteriormente;

➔ Actualizar PrestaShop a las últimas versiones estables (Módulo “1-Click Upgrade - AutoUpgrade”)

➔ Instalar el módulo “Security Patch Module” (comprueba compatibilidad)

➔ Reemplazar manualmente los ficheros afectados o edita el código fuente: https://gist.github.com/Shudrum/27fc534de69c96617280

Actualiza Módulos y TemasNo olvides mantener actualizados tus módulos y tema, incluidos los desarrollados por terceros que no estén en PrestaShop Addons.

Aumenta la seguridad en PrestaShopCambia el acceso al panel de Administración (Back Office)

Por defecto, para acceder al Back Office se genera un directorio con el nombre “admin” seguido de un número (por ejemplo; “admin42”).

Aunque el acceso al Back Office está protegido por usuario/contraseña, sería mejor renombrar dicho directorio por nombres más complejos (por ejemplo; “g3$ti0n”) que dificulten a un posible atacante localizar dicho acceso mediante peticiones HTTP automatizadas utilizando diccionarios o fuerza bruta.

Aumenta la seguridad en PrestaShopElimina la carpeta “install” totalmente tras instalar PrestaShop

Cuando se ha terminado de instalar PrestaShop, por seguridad no te deja continuar administrando la tienda si detecta que existe la carpeta “install”.

Lo ideal es eliminar dicho directorio completamente pero algunos usuarios, quizás por desconocimiento/rapidez, terminan simplemente renombrando “install” por otro nombre fácilmente predecible y localizable mediante peticiones HTTP automatizadas utilizando diccionarios o fuerza bruta.

Aumenta la seguridad en PrestaShopElimina “pistas”/archivos innecesarios tras instalar PrestaShop

Si tienes PrestaShop instalado en un servidor en producción, también es aconsejable eliminar archivos innecesarios que puedan proporcionar fácilmente información adicional a un atacante;

➔ Los archivos README.md, CONTRIBUTING.md y CONTRIBUTORS.md➔ Todo el directorio /docs

Aún así podrían llegar a obtener más información de PrestaShop y la versión instalada mediante “fingerprint” o diff de archivos CSS/JavaScript

Aumenta la seguridad en PrestaShopAñade una contraseña adicional al Back Office o limita el acceso por IP mediante .htaccess (Servidores Apache)

Puedes utilizar el archivo .htaccess de Apache para añadir una contraseña adicional al la ruta de acceso del BackOffice o limitar el acceso a IPs

+Info: http://doc.prestashop.com/display/PS16/Making+your+PrestaShop+installation+more+secure

Pon pestillos a PrestaShop; Latch¿Y si te han robado/averiguado tus contraseñas? Latch te permite establecer pestillos a PrestaShop para acceder solo cuando lo habilites desde tu smartphone.

+Info: Preguntar al tipo sexy del gorro a rayas (@chemaalonso)http://es.slideshare.net/elevenpaths/instalacin-de-latch-en-prestashophttps://www.youtube.com/watch?v=JSsL2RoY27U

Evita prefijos por defecto en tablas DBLas tablas de la base de datos de PrestaShop se instalan con el prefijo ps_ por defecto. Si lo cambias podrías evitar algo trivial ante una posible inyección SQL;

Backups Periódicos➔ PrestaShop incluye nativamente el menú “Parámetros Avanzados ->

Copias de Seguridad DB”➔ No olvides backups externos de todos los archivos de tu tienda (Hay

diversos módulos)

Detecta falsos clientes/compras fraudulentas

Y si puedes… Seguriza el Hosting / Server➔ Mantén actualizado todo el software existente en el hosting/servidor.

➔ Activa herramientas de seguridad; Fail2ban, ModSecurity…

➔ Aplica el sentido común… aunque a veces es el menos común de los sentidos

Muchas Gracias!