Desarrollo de aplicaciones seguras, consejos y recomendaciones

Las empresas de desarrollo ya han asumido que el coste de localizar un error o una vulnerabilidad durante el desarrollo sale infinitamente más económico que detectarlo durante el proceso de implantación o una vez desplegado.

El coste de una incidencia o una vulnerabilidad suele ser proporcional al tiempo que esta permanece en el sistema.

Implementar un ciclo de desarrollo seguro, donde las vulnerabilidades sean parte de los procesos de test y despliegue, genera un vinculo entre el área de seguridad y el área de desarrollo, con la consecuencia de aplicaciones mucho más robustas, seguras y rentables.

La seguridad del software debe ir acompañada de seguridad de los sistemas. No tiene sentido tener un software seguro si, por ejemplo, siendo una aplicación web no se implementa un protocolo SSL. Además, la seguridad del software debe ir acompañada de una configuración adecuada de la arquitectura de los sistemas, como la utilización de firewalls, centinelas o el cumplimiento de una certificación en concreto.

La seguridad de un producto no es estática, debe evolucionar con el tiempo, ya que cada día hay mas gente intentando hackear sistemas y acceder a una información reservada o privada.

Cada día aparecen nuevos caminos para explotar cualquier debilidad que exista en una aplicación o en cualquiera de sus componentes.

Aquí enumeramos algunos consejos a tener en cuenta a la hora de desarrollar aplicaciones software:

  1. Debemos de asumir que ningún componente de la aplicación es seguro e incluir test de seguridad igual que incluimos test unitarios, test de integración, de carga o de interfaz.
  2. Separar la capa de datos de la capa de control o de servicio y evitar que los atacantes puedan incorporar datos maliciosos.
  3. Acreditar la identidad del usuario y reforzar los métodos de autenticación.
  4. Autorizar, además de autenticar y solo dar acceso a lo que queremos que vea ese usuario, identificando datos sensibles y como se quieren gestionar.
  5. Validar la incorporación de datos, empleando listas blancas y listas negras.
  6. Analizar de forma exhaustiva la incorporación de nuevos componentes y más cuando se trate de componentes de terceros.
  7. Encriptación y firmado de los componentes más sensibles para fortalecerlos frente a ataques
  8. Diseñar procedimientos de actualización masiva que permitan corregir y actualizar el software de forma rápida y sencilla en cuanto se detecta un bug o vulnerabilidad.
  9. Implementar mecanismos de autobloqueo, que puedan bloquear por número de intentos u otros patrones, tanto usuarios como IPs de origen.
  10. Mantener entornos aislados para las distintas aplicaciones de forma que el hackeo de una de ellas no lleve al instantáneo hackeo del resto.

David Miralpeix flexygo P.O.

Aplicaciones seguras

Share on facebook
Share on twitter
Share on linkedin

Déjanos un comentario

avatar
novedades del crm de ahora

Novedades CRM (13/01/2020)

Descubre las novedades del CRM de AHORA diseñado por flexygo, la mejor y más potente plataforma low-code del mercado para el desarrollo ágil de apps.

Leer Más >>
flexygo web mail

flexygo low code y webmail

flexygo low code incorpora un webmail para gestionar los correos Desde el departamento de Desarrollo de flexygo hemos querido incorporar un módulo que permita listar,

Leer Más >>

Esta web usa cookies propias y de terceros para ofrecer un mejor servicio y hacer estadísticas de datos de uso. Acéptalas antes de seguir navegando para poder disfrutar de todos sus contenidos con plena funcionalidad. Si quieres más información o modificar su configuración, visita nuestra Política de Cookies y nuestra Política de privacidad.