Abr 28

Seguridad en nuestras Tiendas Virtuales

Tag: Apps Web,osCommerce,Tiendas onlineJordi Oller @ 23:59

Volviendo un poco a la seriedad y siendo hoy el Día internacional de la seguridad, me estaba planteando en crear una pequeña primera Guia de Seguridad para tiendas online, que básicamente se podría portar a casi cualquier aplicación PHP.

Principales archivos a modificar:

php.ini (Configuración general del PHP, si phpsuexec activado, tendremos que editarlo en la carpeta de la aplicación que vayamos a programar)

httpd.conf (configuración del apache)

.htaccess (sobreescribir las directivas del php.ini si nos lo permiten y no está activado phpsuexec)

 

Para tener una primera vision de la configuración general, y valorar si tenemos puntos comprometidos, deberemos crear un archivo php con el siguiente código y visitarlo con nuestro navegador:

<?php phpinfo() ?>

 

Pasos a seguir:

1) No mostrar errores a nuestros intrusos, para ello definiremos en el .htaccess 

[sourcecode=php]
php_flag display_errors Off
php_flag log_errors On
php_value error_log “Ruta completa al fichero de log”
[/sourcecode]

– Que no se muestren los errores en pantalla, y cambiarlo a que se guarden en la maquina en un fichero local solo accesible para el webmaster.

2) El famoso Register globals que por defecto ahora viene desactivado. En las tiendas oscommerce a partir de la RC1 ya no hace falta tenerla activada (en MS2 y anteriores si), por lo que ya no tendremos ese problema de configuración. Tenerlo activo no es un problema de seguridad en sí, si el código está bien implementado, pero si por defecto ya viene desactivado, estamos obligados a no jugar con “fuego” al poder pasar parámetros por GET y POST dentro de las variables globales de nuestra aplicación. Para desactivar esta directiva:

[sourcecode=php]
php_flag register_globals Off
[/sourcecode]

3) Usar SAFE_MODE o no… en mi opinión solo és útil para servidores compartidos, donde hay varios usuarios, y así evitar que unos accedan o incluyan los ficheros de los otros. El único y gran problema es que al tenerlo activo, tendremos incompatibilidades con otros módulos y funcionalidades. Habría que valorar si es realmente necesario tenerlo activo en nuestro servidor.

4) Doble protección de nuestros ficheros de administración. Por ejemplo… toda la carpeta administrador o backend de la aplicación implementar protección mediante formulario de login, y además añadir protección mediante apache desde nuestro panel de control de hosting o a mano.

5) Denegar el acceso a nuestros directorios y ficheros de configuración o “sensibles” con la siguiente instrucción en el .htaccess (dentro del directorio donde se encuentran los archivos a proteger)

Proteger ficheros php:

[sourcecode=php]

   Order Deny,Allow
Deny from all

[/sourcecode]

Proteger todos los ficheros del directorio que se especifique:

[sourcecode=php]

    Order Allow,Deny

[/sourcecode]

6) Sistemas de pago. El más sensible sin duda es la tarjeta de crédito. Los más seguros son los que usan webservices, y sin salir de la web, pero a día de hoy solo es viable con BBVA y algún otro banco.  Mi recomendación es usar el sistema TPV de servired, que podremos encontrar en casi todas las cajas y caixas (La caixa, Caixa catalunya, Caja madrid, etc) que através de una firma Sha1 completa ampliada y una clave personal se transmite la información de forma “segura” entre la página del banco (quien se encargará por nosotros de recoger los datos de la tarjeta y comprobar su veracidad) y nuestra tienda, que será la que reciba la confirmación y autorización del pago.



Han comentado4 Comentarios en “Seguridad en nuestras Tiendas Virtuales”

  1. Xaco ha comentado:

    Partiendo de la base de que oscommerce tiene unos cuantos fallos importantes de seguridad no conocidos, qué no voy a comentar.
    Un pequeño consejo:
    http://www.userlinux.net/1290_archivos_php_
    Salu2.

  2. Jordi Oller ha comentado:

    Efectivamente es un fallo batante común, pero hay que tener un poco de sentido común para no hacerlo en ficheros con datos de conexión.

  3. Rafa Alepuz ha comentado:

    Hola Jordi,
    El enlace que facilita Xaco no funciona.
    Cuál es el fallo bastante común del que habla Xaco?

    Otra cosa, en el punto 1 esas directivas las modificamos en el .htaccess como dices,
    o en el php.ini??

    Gracias!

  4. Seguridad en tiendas ha comentado:

    […] Seguridad en nuestras Tiendas Virtuales En las tiendas oscommerce a partir de la RC1 ya no hace falta tenerla activada … Seguridad Web (4) SEM (3) SEO (8) SMO (3) Software tienda virtual (10) Startups (1) … […]

Escribir comentarioDejar un comentario

Si quieres tener imagen en tus comentarios usa gravatar!