Hola, estamos acabando de cerrar un proyecto MIXTO, WEB servido por vModApache y App Velneo, y en principio todo ha transcurrido con normalidad, pero anoche me vino un flash a la cabeza que me dejó bastante inquieto, y no sé si he cometido un error de base. Me explico:
- La parte Web del proyecto incluye un Blog que está implementado integramente en v7 y servido por vModApache. Para ello he implementado un editor HTML completo en v7 que hace lo mismo que hace WordPress con un Blog (yo diria que mucho más rápido), hasta aqui genial. Naturalmente para que todo sea fluido, las imagenes que insertamos en los post del blog previamente las tenemos alojadas en nuestra BD. Dado que esta parte se trata de un blog, el hecho de que sean públicas no tiene la menor importancia. Si a algun curioso le da por mirar el código fuente HTML servido y fijarse en la etiqueta de [img /] puede ver la ruta completa de la imagen en nuestra BD, algo parecido a esto:
[ img src="http://www.myDomain.com/SOLUCION/obj/PORJECT_DATOS_dat/tabla_POSTS_IMAGENES/JPG00007.png" / ]
Si el curioso, conoce un poco Velneo, sabrá el nombre de nuestra SOLUCION, de nuestro PROYECTO DE DATOS y de la tabla POST_IMAGENES, en la que Velneo numera "secuencialmente" todas las imagenes JPG00007, JPG00008,JPG00009 ... para su acceso web.
De esta forma si el curioso tipea en la URL de un navegador cualquiera:
http://www.myDomain.com/SOLUCION/obj/PORJECT_DATOS_dat/tabla_POSTS_IMAGENES/JPG00007.png
o
http://www.myDomain.com/SOLUCION/obj/PORJECT_DATOS_dat/tabla_POSTS_IMAGENES/JPG00008.png
o
http://www.myDomain.com/SOLUCION/obj/PORJECT_DATOS_dat/tabla_POSTS_IMAGENES/JPG00009.png
etc...
Tendrá acceso ilimitado a todas la imagenes declaradas en la tabla nuestra BD.
No sería más lógico que la numeración de las imagenes por Velneo no fuera consecutiva y fuera alguna formula alfanumérica, del estilo twiter JPGx4v_3g5j9.png para que nadie pudiera suponer de forma lógica cual es la siguiente imagen de la tabla y acceder a ella a traves del navegador de forma tan sencilla, ME PARECE UN GRAVE ERROR DE SEGURIDAD.
EN FIN, al tratarse de un blog no debería tener mas importancia pero "nada mas lejos de la realidad". Por que de igual modo que existen imagenes en las tablas para el Blog, en nuesta aplicacion existen imagenes en otras tablas que no deberian ser públicas, concretamente imagenes que tienen derechos de copyright y que solo deben servise previo pago.
Si nuestro curioso compra una sola de las imagenes con copyright servida con vModApache y le dá por mirar el codigo HTML veria algo así:
http://www.myDomain.com/SOLUCION/obj/PORJECT_DATOS_dat/tabla_IMAGENES_COPYRIGHT/JPG00001.png
Lógicamente solo tiene que tipear en su navegador:
http://www.myDomain.com/SOLUCION/obj/PORJECT_DATOS_dat/tabla_IMAGENES_COPYRIGHT/JPG00001.png
http://www.myDomain.com/SOLUCION/obj/PORJECT_DATOS_dat/tabla_IMAGENES_COPYRIGHT/JPG00002.png
http://www.myDomain.com/SOLUCION/obj/PORJECT_DATOS_dat/tabla_IMAGENES_COPYRIGHT/JPG00003.png
etc...
etc...
para bajarse por la cara cualquier imagen con copyright que tengamos "inocentemente guardadas en nuestra BD Velneo".
¿POR QUE ESTÁN ACCESIBLES VIA WEB TODAS LAS IMAGENES DE NUESTRA BD?
¿EN QUE ME ESTOY EQUIVOCADO DE PARTIDA?
¿NO DEBERIAMOS PODER DECIDIR EN TIEMPO DE EJECUCION SI LA IMGEN SE DEBE SERVIR O NO?
¿SE PUEDE HACER ESTO, Y YO NO SE COMO HACERLO?
SI NO ES ASI ¿COMO LE EXPLICO ESTE AGUJERO DE SEGURIDAD AL CLIENTE?
¿COMO EXPLICA VELNEO ESTE AGUJERO DE SEGURIDAD?
¿POR QUE ENUMERA TAN INOCENTEMENTE LOS OBJETOS IMAGEN VELNEO?
¿HE PERDIDO UN MES DE PROGRAMACION?
P.D. Hoy en el primer Flash de la pagina de inicio de Velneo curiosamente lo primero que me ha aparecido es : "v7 ES SEGURIDAD", Y CLARO NO HE PODIDO EVITAR ESBOZAR UNA AMARGA SONRISA.