Securizar y Proteger una tienda virtual Oscommerce

Con las fiestas de navidad no sólo suben las ventas de las tiendas virtuales, también se multiplican los ataques a las mismas. Me han preguntado mucho últimamente sobre cómo proteger una tienda virtual, así que vamos a dar algunas pistas. En este post en concreto nos basaremos en cómo securizar y proteger una tienda virtual Oscommerce, pero muchas de las aplicaciones son extensibles a otros scripts.

1- Versión actualizada y control de plugins, contribuciones y addons instalados.

Es importante estar lo más actualizado posible en la versión de Oscommerce que actualicemos. Actualmente tenemos disponible Oscommerce v2.3.1 pero teniendo la v2.2RC2a es suficiente. Una versión inferior a la v2.2 sería preocupante. Igualmente tenemos que tener cuidado con las contribuciones, plugins y addons que instalamos, ya que pueden tener fallos de seguridad que ni siquiera el mismo creador de la contribución conozca. Ante la duda mejor no instalarla, y si no se tienen conocimientos de programación intentad instalar contribuciones que sean populares (muy utilizadas y testeadas) y revisad en google y foros oficiales si se conoce algún problema en ellas.

2- Corrección de Bugs básicos.

Existen listados de bugs básicos de Oscommerce (la mayoría antiguos) que deben ser corregidos para aumentar la seguridad del mismo. Normalmente no son realmente peligrosos, más bien incómodos de cara al usuario final, pero conviene tenerlos controlados.  En Oscommerce.com tenemos un listado de reportes de bugs, además de los foros oficiales en inglés donde más se tratan estos temas. A día de hoy la versión v2.2RC2a la considero lo suficientemente segura, aunque debemos aplicar el siguiente punto para reforzar su seguridad.

3- Dificultad el acceso al admin.

Para acceder al administrador de Oscommerce por defecto se accede a la carpeta /admin, donde te pedirá usuario y contraseña. Además del sistema de usuarios de Oscommerce deberíamos renombrar la carpeta /admin por otro nombre (y adaptar el correspondiente configure del administrador) y añadir una clave de acceso protegiendo la carpeta vía hosting. Estos sencillos pasos multiplican la seguridad de tu tienda virtual, no los dejes pasar.

4- Eliminar el editor de archivos del administrador de oscommerce.

Si por cualquier motivo acceden a nuestro admin, con el editor de archivos tendrían acceso completo a los archivos de nuestro Oscommerce. Es mejor eliminar directamente el archivo, sin más complicaciones. Los que necesiten modificar archivos deberían usar una cuenta de ftp.

5- Control de acceso al administrador por IP.

Con tu .htaccess puedes limitar el acceso al área de administración a una IP determinada. Si tienes IPs fijas esta medida es realmente efectiva, ya que imposibilita el acceso si no te encuentras físicamente en el equipo con dicha IP de conexión.

6- Denegación de acceso selectiva.

Pequeñas reglas de seguridad, ya sea en tu firewall (el del servidor web) o a través de tu .htaccess, pueden evitar ataques de forma sencilla. Uno de los ataques más básicos y redundantes es la captura de una clave ftp desde el ordenador del usuario. El servidor web está limpio pero el atacante obtiene acceso directamente desde el equipo del administrador de la tienda virtual. Una vez una tienda está en producción se puede bloquear el servicio ftp a dicho dominio hasta que se vuelva a necesitar, pero esta medida es un poco extrema. En principio basta con tener un antivirus actualizado y tener un poco de cabeza usando el pc con el que nos conectamos a nuestra tienda virtual.

7- Backups actualizados.

Y si todo falla, siempre debemos tener backups actualizados de todos los datos de nuestra tienda virtual. Configurad un sistema de backups automatizado y dormiréis más tranquilos.

Espero que esta pequeña guía básica sobre cómo securizar y proteger Oscommerce os sea de utilidad y os ayude a proteger vuestras tiendas virtuales de forma sencilla y efectiva.

Be Sociable, Share!

22 comentarios para “Securizar y Proteger una tienda virtual Oscommerce”

  • [...] Fuente: proteger y securizar una tienda virtual Oscommerce [...]

  • PiLLaO:

    Un gran post, como siempre ;)

    Salu2 :)

  • ya que oscommerce tiene más agujeros que un queso gruyere tal y como viene para descargar… y puede que haya algún incauto que por pedirlo a una empresa tercera se confíe en que se encontrará no una instalación por defecto, sino lo que se supone que debería ser una base corregida con los mínimos parches de seguridad puestos al viejuno software, según se le fueron descubriendo, entonces para todos ellos que pronto se llevarán la sorpesita… aquí van unos enlaces para que amplien información sobre el tema:

    http://forums.oscommerce.com/topic/313323-how-to-secure-your-site/
    http://www.jordioller.com/aplicaciones-web/seguridad-en-nuestras-tiendas-virtuales

    Una espada, la de la seguridad, se tambalea sobre todas las tiendas OSC porque un software que no se actualiza, no se puede esperar nada bueno de él, y si actualizar supone perder lo anterior, vaya mierda software. Estas estancando por los siglos de los siglos y dependes de terceros, para cualquier cosa. Por tanto, es mejor trabajar con una versión de software que sí permita actualizarse según se vayan encontrando las multiples vulnerabilidades que tenga, como es el caso de wordpress, un buen ejemplo, sin duda y en comercio electrónico sería Prestashop. Saludos

  • @PiLLaO: gracias como siempre ;)

    Saludos.

  • @miguel galve: atacas a Oscommerce sin razón. Un oscommerce estandar actualizado no es vulnerable, si instalas contribuciones (al igual que en cualquier otro software) sin verificarlas puedes tener bugs. Al ser más usado también es más sencillo encontrar fallos. Y sí publican las correcciones a los bugs, si no las instalas es otra cosa. Además Oscommerce posiciona mejor, es más rápido, más modificable y más económico que Prestashop o Magento. Si sigue siendo el líder como script de ecommerce no es por nada. Y lo que te digo es algo que ya sabes, no es nada nuevo.

    Saludos.

  • jaja, estoy cabreado.

  • PiLLaO:

    Ademas de que la versión que hay actualmente para descargar es la 2.3.1, y esta trae muchos añadidos de seguridad con respecto a la versión anterior (2.2 rca)

    Salu2 :)

  • ivan:

    hola
    importante el punto 3, de proteger carpeta del admin desde el panel del hosting.
    y el punto 4 borrar: admin/file_manager.php y admin/define_language.php y en
    admin/includes/boxes/tools.php borrar los enlaces correspondientes.

    Tambien no mostrar los errores en la tienda ya subida al host.

    hasta luego

  • alkimia:

    Jose, se te ha olvidado poner un punto muy importante: fortaleza en las contraseñas.

    Es demasiado típico encontrar cuentas de usuario con las claves: 12345, abcde, qwerty…. mismo nombre de usuario y clave.

    De nada sirve securizar muy bien una web ( ya sea tienda o aplicación de cualquier tipo ), si las claves de acceso son del tipo: manolo / manolo.

    Salu2 :)

  • Gracias a tod@s por vuestras aportaciones. Al final será casi imposible piratear una web como sigamos aportando consejos ;)

    Saludos.

  • Lupi:

    Os iba a enlazar el post que hice en comerciame.net del tema… pero me acabo de acordar que ya no exite! ;D

    Un saludo

  • Ismael:

    Hola Jose, yo instale mi tienda oscommerce gracias a tus tutoriales, pero despues de tenerla funcionando por unos dias, me empezaron a colocar iframes no deseados y google me tacho como sitio no seguro. borre todo y pienso volver a subirlo, pero queria saber si estos pasos tambien me van a servir para evitar eso o debo hacer algo mas…. y bueno, he leido algunos pasos y no los entiendo mucho porque soy nuevo en esto, pero cualquier cosa seguro puedo contar con tu ayuda. Por si acaso estoy usando la v2.2RC2a asi que espero no tener problemas.

    Muchas Gracias por todo

  • @Ismael: hace no mucho escribí un post sobre cómo securizar una tienda virtual oscommerce, puedes vuscarlo en el blog. También puedes mirar en mi otro blog elblogdeoscommerce.com donde también he publicado algunas cosas sobre seguridad en tienda virtuales oscommerce.

    Saludos.

  • Cristina:

    Hola Jose,

    Muchas gracias por tus videotutoriales son muy útiles y muy claros.
    Tengo una duda, en este post en el punto: 4, haces referencia a: Eliminar el editor de archivos del administrador de oscommerce; cómo se hace? cuál es el procedimiento?Por cierto, cuando le doy al menú herramientas me sale una página con estas letras: You don’t have permission to access /admin/backup.php on this server. A que se debe? Muchas gracias de nuevo.

    Un saludo.

  • @Cristina: eliminar el archivo admin/file_manager.php y el de editar idiomas también.

    Saludos.

  • 3- Dificultad el acceso al admin.

    Para acceder al administrador de Oscommerce por defecto se accede a la carpeta /admin, donde te pedirá usuario y contraseña. Además del sistema de usuarios de Oscommerce deberíamos renombrar la carpeta /admin por otro nombre (y adaptar el correspondiente configure del administrador) y añadir una clave de acceso protegiendo la carpeta vía hosting. Estos sencillos pasos multiplican la seguridad de tu tienda virtual, no los dejes pasar.

    ————————————————————–

    Después de cambiar el nombre a la carpeta admin, y corregir el configure, no puedo conectar a la base de datos.

    Warning: mysql_connect() [function.mysql-connect]: Access denied for user ‘mysql’@'localhost’ (using password: NO) in /home/floresal/public_html/tienda/floresalud/includes/functions/database.php on line 19
    Unable to connect to database server!

    Solicito ayuda. Gracias.

  • Jose Manuel :3- Dificultad el acceso al admin.
    Para acceder al administrador de Oscommerce por defecto se accede a la carpeta /admin, donde te pedirá usuario y contraseña. Además del sistema de usuarios de Oscommerce deberíamos renombrar la carpeta /admin por otro nombre (y adaptar el correspondiente configure del administrador) y añadir una clave de acceso protegiendo la carpeta vía hosting. Estos sencillos pasos multiplican la seguridad de tu tienda virtual, no los dejes pasar.
    ————————————————————–
    SOLUCIONADO

    Después de cambiar el nombre a la carpeta admin, y corregir el configure, no puedo conectar a la base de datos.
    Warning: mysql_connect() [function.mysql-connect]: Access denied for user ‘mysql’@’localhost’ (using password: NO) in /home/floresal/public_html/tienda/floresalud/includes/functions/database.php on line 19Unable to connect to database server!
    Solicito ayuda. Gracias.

  • miriam:

    Hola:

    Se ve que soy la mas torpe del mundo¡¡¡

    He cambiado el nombre de archivo admin, pero podeis explicarme que cambio debo hacer en el config? pero facilito jajajjaja

  • victor:

    @miriam
    En mi tienda oscommerce, cuando carga aparece que se está conectando a “http://exero.eu/catalog/jquery.js” y google y otras páginas me tacha a mi tienda como infectada, asi que supongo que es un virus… alguién me puede ayudar un poco en este tema… gracias de antemano y enhorabuena jose por tus tutoriales, tu blog, etc… son muy buenos.

  • @victor: te va a tocar limpiar la tienda, revisar archivos para localizar el código malicioso y borrarlo. Y luego securizarla para que no pueda volver a ser infectada.

    Saludos.

  • Muchas Gracias por tus Consejos Jose ! !

  • @PC-SERVEIS, Diseño Web: de nada :D

    Saludos.

Deja un comentario