En la actualidad, cerca del 64,4% de la población mundial utiliza Internet, lo cual representa un incentivo para todo tipo de empresas para ofrecer sus servicios por medio de sitios o aplicaciones web. Fluid Attacks explica la importancia de revisar los programas de software mediante pruebas continuas y durante todo su desarrollo en busca de vulnerabilidades, para mantener seguras a las organizaciones y los usuarios.
Felipe Gómez, Director Regional de Fluid Attacks, asegura que “estamos en un momento en el que las personas de todo el mundo tienen un contacto continuo con sitios y aplicaciones web. Los atacantes aprovechan las vulnerabilidades en la programación de este software para manipular o interrumpir su funcionamiento normal u obtener información sensible. La manera de reducir los costos de reparación de estas fallas es identificarlas y remediarlas mucho antes de que los programas se encuentren disponibles en Internet, evitando así grandes pérdidas en tiempo, dinero y reputación”.
Las vulnerabilidades en sitios y aplicaciones web pueden representar mayor o menor riesgo dependiendo de la cantidad de información sensible que manejen. Mientras más elementos tienen en sus back-ends para dar respuestas a las solicitudes de los usuarios, más alta es la probabilidad de estar expuestas a amenazas. Errores como mecanismos de autenticación inseguros, controles de acceso insuficientes o servicios de nube mal configurados pueden ser aprovechados por los ciberdelincuentes para ejecutar ataques.
Un paso inicial de las empresas para evitar este tipo de inconvenientes es usar una herramienta automatizada open-source de análisis de código fuente y ambientes de desarrollo. Los escaneos y pruebas continuas del código permiten verificar el cumplimiento de los requisitos de seguridad que son más críticos para los programas de software disponibles en Internet:
- Verificar que los componentes de terceros sean seguros para proteger contra el uso de software con vulnerabilidades conocidas.
- Descartar entradas no seguras e incluir encabezados de seguridad HTTP para proteger contra ataques de inyección y cross-site scripting (XSS).
- Usar mecanismos preexistentes y actualizados para cifrar la información, protegiendo así contra fallas criptográficas.
- Definir usuarios con privilegios para proteger contra la pérdida de control de acceso.
- Requerir contraseñas y frases de contraseña largas para proteger contra las fallas de identificación y autenticación.
- Controlar los redireccionamientos para conducir a sitios confiables, protegiendo así contra los ataques de falsificación de solicitudes del lado del servidor (SSRF).
“Una solución completa para el manejo de amenazas debe combinar herramientas automáticas de escaneo junto a la capacidad de hackers éticos para identificar y reportar las vulnerabilidades en los proyectos de software de las organizaciones. Estos profesionales simulan ataques provenientes de un entorno que se encuentra en constante evolución y pueden encontrar fallas mucho más graves que se descubren en la interacción del usuario con los sitios y aplicaciones web. Además de esto, es recomendable que la solución cuente con una plataforma de gestión de resistencia a ataques (ARM) que permita recibir los informes de las pruebas, conocer el cumplimiento con estándares de seguridad, gestionar las vulnerabilidades y determinar mecanismos para ejercer automáticamente las políticas de seguridad de la organización”, concluye Felipe Gómez.