Pues eso que no soy nada paranoico, tengo otros TOCs ;-), ni siquiera en estos tiempos. Soy de los que no cierra la puerta con doble llave. O que deja el coche abierto mientras baja a un recado.

Desarrollando aplicaciones pienso antes que nada en la funcionalidad que resuelve un problema. Pero, no estoy aquí para decir lo que yo hago ni ser ejemplo de nada. Estoy para reflexionar sobre la importancia de implantar buenas prácticas de seguridad en nuestras aplicaciones.

Una aplicación vulnerable puede ser inútil, o mucho pero: causar un enorme daño.

Y si lo tuyo son las cifras: según algunas estimaciones, todos los días se piratean entre 30.000 y 50.000 sitios web. Y los números aumentan cada día

Las amenazas más comunes

Ante tanto ataque, afortunadamente, se ha generado respuesta por parte de la comunidad tecnológica que ha sistematizado la defensa. Empezando por detectar las amenazas más comunes.

La lista del OWASP Top 10 incluye la definición de los 10 tipos de ataques más comunes (y también dañinos) de los que deberías defenderte. Algunos son viejos conocidos que los sistemas más modernos evitan casi de fábrica. Pero otros requieren acción.

Quién es responsable

Muchas veces los programadores nos escudamos en los departamentos de operaciones, de sistemas y los más afortunados incluso en el de seguridad. Y claro que hay una parte crucial que no depende de nuestro código. Pero hay otra que sí. Entre otros:

  • Mecanismos de autenticación de usuarios
  • Sistemas de autorización basados en roles
  • Garantizar almacenamiento y transmisión encriptada de información sensible
  • Logs de accesos y eventos sospechosos
  • Defensa de APIS públicas y de interfaces de usuario

En resumen

  • El riesgo potencial de ataque está en aumento,
  • Las consecuencias de un ataque pueden provocar un serio daño al negocio o incluso hundirlo.
  • La responsabilidad de la protección también es de los programadores.

El reto está en priorizar la seguridad en un mundo que exige funcionalidad y premia la velocidad de entrega y de ejecución.