A la hora de desarrollar a medida o implementar algún tipo de sistema para algún cliente, ya sea trabajando de forma independiente o para una empresa, el cliente (quien solicita el trabajo) se transforma en la principal amenaza de seguridad. Es muy común entre los desarrolladores recibir presiones, cambios a última hora, mejoras de “usabilidad” que atentan contra la seguridad, etc. Generalmente, cuando un cliente necesita algo, él piensa que todo es magia y comienza a apresurarnos, acortando el plazo y exigiendo features nuevas lo que nos pone a nosotros, los desarrolladores, en una situación muy crítica.
En lo personal, me ha pasado que por evitar una falla de seguridad he
decidido hacer validaciones de formularios con 3 niveles, validación
por javascript, validación por php y validación a nivel de base de datos
y me he demorado 3 o 4 veces más de lo que me hubiese demorado si
hubiese dejado solo la validación por javascript, lo que permite, obvia-
mente, hacer un post directo sin pasar por el formulario y saltarse esa
validación.
Otro factor crítico es el tema del presupuesto, generalmente los clientes quieren todo por muy poco dinero y en muy poco tiempo y nosotros, al necesitar el dinero, aceptamos y, lo que empieza siendo un trabajo extra para ganar unaas monedas termina siendo un dolor de cabeza.
Si bien es cierto que los clientes en lo general son los que provocan este tipo de fallos, no hay que dejar de lado cuando se le encargan sistemas a personas que no están capacitadas, queines, para mi, representan un peligro mucho mayor que un cliente apresurado, pero creo que es menor frecuente.
Como conclusión, en estos temas informáticos, lamentablemente el cliente no siempre tiene la razón.
Como opinón propia, creo que cuando alguien logré ingresar a un sistema indevidamente se debería juzgar al desarrollador, por incompetente 🙂
Comentarios recientes