Hay un montón de artículos sobre seguridad API, simplemente escríbalo en un motor de búsqueda. Muchos de ellos serán escritos por vendedores con una solución particular. Eso no significa que estén equivocados, solo que tienen un objetivo particular para la publicación del contenido: usted compra sus productos o servicios. También está el inicio de una página de OWASP, pero no han llegado muy lejos. Pero hay una cosa clave a tener en cuenta: no puede confiar en nada que se origine en el cliente: el navegador es un entorno hostil y el usuario tiene control total sobre cualquier cosa que ocurra allí. Verifique todo, esto incluye desinfectar todas las entradas, confiar en canales seguros para transmitir información de autenticación, usar nonces u otros medios para prevenir ataques de repetición, etc. Otra pieza importante es reducir su superficie de ataque siempre que sea posible. Idealmente, tiene un servicio expuesto a Internet, su servidor de aplicaciones que recibe la solicitud y devuelve la respuesta y realiza toda su validación de seguridad. Todo lo demás, la base de datos, la búsqueda, el registro, todo lo demás, es inaccesible más allá de un firewall que permite el acceso a hosts conocidos. La reciente ola de ransomware contra Mongo y ElasticSearch se debe a que la gente no hizo eso. Nuevamente, no puede confiar en nada que provenga de fuera del firewall.
Estoy desarrollando una aplicación con su API Rest. ¿Qué reglas de seguridad o mejores prácticas debo seguir para construir un sistema seguro?
Related Content
No sé casi nada de música moderna. ¿Cómo empiezo a descubrir lo que me gusta?
Actualmente estoy en una dieta líquida y tengo hipo frecuente. Esta bien?
Nací con una corbata de lengua, aprendí mi S de manera diferente, ¿cómo se pronuncia en la boca?
La seguridad es un tema enorme en sí mismo y dudo que cualquier libro o artículo pueda abarcar todos los aspectos. También es un objetivo en movimiento, ya que lo que se consideró seguro hace un par de años puede que ya no lo sea.
Si tanto la aplicación como la API REST están bajo su control, lo que significa que usted (o sus colegas) están a cargo de desarrollar, depurar, ensamblar e implementar en servidores de producción, entonces hay algunas cosas que puede hacer para que sea más seguro .
- Como mencionó William Hurley, reduzca su superficie de ataque. Un solo puerto seguro en un servidor dedicado razonablemente potente es suficiente para la mayoría de las aplicaciones en sus primeros años.
- Use una conexión segura entre la aplicación y la API. Esto evita los ataques de hombre en el medio. Sin embargo, no puede evitar el malware descargado en el dispositivo que aprendió a imitar la aplicación.
- Mantenga la API privada. Las API públicas son objetivos fáciles.
- Si los contratistas están involucrados en el desarrollo, entonces deles diferentes puntos finales API para trabajar. ¡Bajo ninguna circunstancia, deberían tener acceso a los servidores de producción en cualquier momento! Esto significa algunas cosas para usted y sus compañeros de trabajo a quienes se les ha confiado esta responsabilidad:
- Modificará todos los candidatos de lanzamiento tanto para la aplicación como para la API para usar los puntos finales de producción antes de la implementación. Esto puede ser automatizado y puede ser una mejor opción. ¡He visto a los desarrolladores perezosos incorporar puntos finales de API en el código para comentarlos dentro o fuera según sea necesario!
- La responsabilidad de la depuración de cualquier problema crítico que tenga la mala costumbre de ocurrir en horas extraterrestres es responsabilidad de cualquier contratista que esté despierto al otro lado del mundo.
- Monitoreo activo de cualquier personal no autorizado que pueda estar “phishing” para esta información.
Estas son solo algunas cosas básicas que puede hacer. Finalmente depende de la cantidad de seguridad que desee, ya que algunas sugerencias solo se aplican si la seguridad es la principal preocupación.
Gracias por el A2A.
La falta de estándares de seguridad en cualquier mercado dificulta la administración de los controles de seguridad a nivel de aplicación. Tener una lista de verificación de seguridad sólida no solo mejora la seguridad de la aplicación sino también el ecosistema involucrado en el proceso de desarrollo. Además, los sólidos estándares de seguridad y las pautas bien establecidas diferencian una plataforma de las demás.
Aquí estoy compartiendo una metodología, es galardonada y ayudó a más de 300 organizaciones a crear aplicaciones seguras. Esta metodología va más allá de las evaluaciones de vulnerabilidad y las pruebas de penetración. La evaluación de seguridad múltiple de Entersoft protege su API contra los ataques más recientes y letales.
Para descargar la metodología de seguridad API, por favor encuentre el siguiente enlace:
Descargar Metodología API
Aquí hay tres reglas más importantes del proceso de desarrollo de aplicaciones.
- Comience con el usuario
El desarrollador de aplicaciones en alta mar debe pensar en los que usarán la aplicación, sus objetivos y desafíos. Deben diseñar la aplicación móvil con la participación del usuario y deben poder proporcionar una solución que les resulte útil y que quieran usar. Deben asegurarse de que comprenden todos los elementos de los requisitos de los usuarios de la aplicación.
- Lucha por la simplicidad
Una aplicación móvil debería ser fácil de usar; de lo contrario, las personas no lo harán. El diseño debe ayudar a los usuarios a lograr sus objetivos de la manera más eficiente posible.
- Respeta la plataforma
Nunca intente recrear una aplicación web como una aplicación móvil. Los sitios web se ejecutan en computadoras y no están diseñados para acceder a la pantalla táctil. Además de la interfaz de usuario táctil, las plataformas móviles tienen algunas diferencias clave: ofrecen capacidad de navegación, capacidad de fotografía y varias otras funciones disponibles para crear una experiencia de usuario potente. Las aplicaciones móviles también tienen la ventaja de acceder a cualquier lugar, en cualquier momento y, lo que es más importante, a dispositivos para interacciones rápidas y efectivas.
Quiere conocer otras reglas sobre el proceso de desarrollo de aplicaciones offshore. Luego, debe consultar este artículo que proporciona detalles más detallados sobre este tema y los ayuda a crear la mejor aplicación para sus usuarios.