Archive for July, 2009

Consejos básicos de seguridad en Oscommerce 2

Posted in Seguridad on July 30th, 2009 by Jose Criado – Be the first to comment

Mi amigo Jordi Oller me recuerda que en su blog (recomiendo leerlo) tiene un post sobre seguridad en Oscommerce que resulta muy adecuado como segundo nivel de protección, aunque ahora sí que empezamos a meternos más en temas técnicos de programación. Aquí os dejo el post completo y el link al original.

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.

Compártelo:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • BarraPunto
  • Bitacoras.com
  • blogmarks
  • Blogosphere News
  • LinkedIn
  • Live

Consejos básicos de seguridad en Oscommerce 1

Posted in Seguridad on July 28th, 2009 by Jose Criado – 4 Comments

Como cualquier tipo de software, Oscommerce es susceptible de sufrir ataques aprovechando vulnerabilidades en su programación. Para intentar evitar en la medida de lo posible este tipo de problemas voy a daros una serie de consejos sencillos para aumentar la seguridad de vuestra tienda virtual Oscommerce.

seguridad en oscommerce

1 - Abrir un navegador para trabajar exclusivamente con el administrador de Oscommerce.

Así evitaremos cualquier tipo de intento de captura de sesión o de inyección de código. No uses pestañas ni guardes la sesión cuando cierres el navegador.

2 - Proteger el directorio admin con un password a nivel de servidor.

Así tendremos que loguearnos tanto a nivel de servidor como a nivel de Oscommerce, con lo que aumentaremos la seguridad.

3 - Revisar cada contribución que instalemos.

Cualquier contribución puede tener vulnerabilidades y dejar puertas abiertas, centraos en usar las más conocidas y testeadas, y ante la duda no instalarla.

4 - Instalar la contribución Virtual Keybooard tanto en parte pública como en el login de administración de Oscommerce. Evitaremos posibles keyloggers.

Con estos 4 sencillos consejos lograremos aumentar sensiblemente la seguridad de nuestra tienda virtual Oscommerce.

Compártelo:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • BarraPunto
  • Bitacoras.com
  • blogmarks
  • Blogosphere News
  • LinkedIn
  • Live

Ventajas y desventajas de Separate Pricing Per Customer (SPPC)

Posted in Optimizacion on July 10th, 2009 by Jose Criado – 1 Comment

Sin duda Separate Pricing Per Customer (SPPC) es una de las contribuciones para Oscommerce  más útiles que conozco. Permite al administrador de la tienda virtual crear grupos de clientes a los que aplicarles diferentes tarifas de precios, e incluso configurar tipos de impuestos, formas de pago y de envío a utilizar por cada uno de los grupos.

sppc

Pero también es una de la que causa mayores problemas. Esto es debido a que se trata de una contribución que modifica Oscommerce en gran medida y de forma significativa, lo que provoca incompatibilidades con muchas otras contribuciones. Y aunque muchas de las contribuciones más utilizadas en Oscommerce tienen su propia versión para tiendas con SPPC, la mayoría de las veces requiere una adaptación manual por parte de la persona que las instala. Aunque sin conocimientos de PHP será complicado que una persona logre adaptar contribuciones para que funcionen con SPPC, voy a intentar daros una serie de pistas y consejos para facilitaros en lo posible la tarea:

- Si es posible, debe ser la primera contribución que se instale en tu Oscommerce, ya que así te ahorrarás el tiempo que se tarda en instalarla manualmente cuando hay que integrarla en una tienda con otras contribuciones instaladas.

- Recuerda que cada contribución que afecte a precios directa o indirectamente deberá ser adaptada para que funcione con SPPC.

- Cualquier contribución que modifique las clases order, shipping, etc, debe ser revisada y adaptada (en las instrucciones de instalación tienes la lista de archivos modificados).

- Cuidado con los atributos. Contribuciones que les afecten deben ser revisadas.

Para aquellos que os decidáis por intentar hacer las adaptaciones a mano os daremos algunas pistas:

- Cuando un cliente especial se loguea se creará una sesión que lo identifica como tal.

- Dicha sesión hará que se ejecute una query para obtener un array con todos los precios especiales (en caso de existir) para cada producto que se muestre en pantalla.

- Se sustituyen los valores normales por los de dicho array, y si el cliente es especial y existe un precio especial para ese producto será mostrado.

Resumiendo, SPPC es una de las mejores contribuciones para Oscommerce, de una utilidad más que demostrada. Pero si no vas a usarla, si en tu tienda virtual no vas a tener deferentes tipos de clientes, te recomiendo no instalarla. Te hará la vida más fácil.

Contribuciones: Separate Pricing Per Customer (SPPC)

Compártelo:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • BarraPunto
  • Bitacoras.com
  • blogmarks
  • Blogosphere News
  • LinkedIn
  • Live

tpv virtual para oscommerce con e-tpv

Posted in Pagos on July 9th, 2009 by Jose Criado – 2 Comments

En E-tpv han desarrollado un módulo de pago para oscommerce mediante el cual puedes instalar su tpv virtual de forma sencilla y rápida.

e-tpv

El sistema de pagos es similar a cualquier tpv virtual tradicional, y aunque las comisiones de servicio son un poco altas, no tiene comisiones de mantenimiento y el alta se realiza en 5 minutos. Y lo más importante, no pondrán pegas para concederlo. Una seria alternativa si tu entidad bancaria te deniega el tpv virtual. Si mejoran las comisiones de servicio pueden convertirse en la primera opción para muchos comercios online.

Contribuciones: E-tpv.

Compártelo:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • BarraPunto
  • Bitacoras.com
  • blogmarks
  • Blogosphere News
  • LinkedIn
  • Live

Adaptar Oscommerce para IPhone

Posted in Optimizacion on July 2nd, 2009 by Jose Criado – 3 Comments

Las compras por internet desde dispositivos móviles aumentan constantemente, y cada vez es más necesario adaptar nuestras tiendas virtuales Oscommerce para posibles compradores que utilicen este sistema.

oscommerce-iphone

Con la contribución Iosc - mobile sito for iPhone lograremos adaptar rápidamente nuestro Oscommerce para ser visualizado correctamente desde un dispositivo iPhone.

Contribuciones: iOSC - mobile for iPhone.

Compártelo:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • BarraPunto
  • Bitacoras.com
  • blogmarks
  • Blogosphere News
  • LinkedIn
  • Live