¿Es razonable usar un proxy de seguridad cuando se integran dos aplicaciones web?

0

Antecedentes: estamos en el proceso de integrar dos aplicaciones web. La otra, la aplicación A, es un servicio de Internet de acceso público, que es proporcionado por un tercero y que ofrece API de servicios web con los que nos integraremos. La otra, la aplicación B, es una aplicación antigua (ish) heredada alojada en una intranet de la empresa. Por el momento, no se puede acceder a la aplicación B desde Internet. Es un sistema bastante grande y expone muchas API abiertas que están diseñadas para integraciones de sistemas estrictamente dentro de la intranet. No podemos permitirnos exponer estas API para que sean accesibles desde Internet (intencionalmente o por accidente). Controlamos la aplicación B, y podemos implementar las nuevas funciones y API relacionadas con la nueva integración, sin embargo, por favor.

He investigado un poco, intentando encontrar la solución más adecuada para estos desafíos de seguridad. Algunas fuentes sugieren que un proxy de seguridad del servicio web (o una puerta de enlace de seguridad como algunos lo llaman) proporcionaría seguridad adicional en un caso como este. Aparentemente, este proxy suele estar alojado en una DMZ. El proxy básicamente realizaría las funciones de seguridad que se requieren, como el cifrado / descifrado de mensajes, la verificación de la autenticación y la integridad de los mensajes, la auditoría, etc. Supongo que un enfoque como este es más razonable cuando se integran las aplicaciones existentes donde las comunicaciones de las aplicaciones son No está asegurado en este momento, pero la integración debe implementarse sin tener que modificar las aplicaciones. Sin embargo, supongo que la principal ventaja de un proxy en nuestra situación (cuando solo hay 2 aplicaciones) sería exponer únicamente la API limitada en la aplicación B, que es necesaria para la integración en el exterior y ocultar todo lo demás. Algunos de los beneficios secundarios pueden ser que descarga algún trabajo que, de lo contrario, caería en la aplicación B (como la criptografía, la validación de mensajes, la detección de posibles ataques, etc.) y podría proporcionar alguna protección adicional para los ataques DoS. ¿Son correctas aquí mis interpretaciones?

La verdadera pregunta es, ¿cuál sería la forma más segura de hacer que la API creada para la integración sea accesible desde el exterior y evitar el acceso a todo lo demás en la aplicación B? ¿Sería un proxy de seguridad un ¿Una adición razonable para mejorar la seguridad de la aplicación B (de la manera en que lo describí o de alguna otra manera), o es suficiente una integración directa de punto a punto? ¿Qué otros enfoques podrían ser razonables? Los aspectos de seguridad aquí son primordiales, pero, naturalmente, me gustaría evitar la ingeniería excesiva.

    
pregunta Markus Yrjölä 28.02.2014 - 14:34
fuente

1 respuesta

0

Supongamos que actualizar o reemplazar la aplicación B no es una opción, que está intentando actualizar la seguridad en una aplicación heredada.

En ese caso, mi recomendación sería usar un WAF como " la forma más segura de hacer que la API creada para la integración sea accesible desde el exterior y evitar el acceso a todo lo demás en la aplicación B? "

Un Firewall de aplicaciones web es una combinación de un proxy, como usted sugirió, y una aplicación web centrada en IDS / IPS. Algunos ejemplos serían Application Security Manager (ASM) de F5 y SecureSphere de Imperva.

Como mínimo, un WAF le permitirá controlar las API a las que se accede. Por ejemplo, si la aplicación B es REST, el WAF se puede usar para prohibir el acceso a esta parte de la API y también permite el acceso a esa parte de la API. Dependiendo de cómo esté escrita la aplicación y de la flexibilidad de WAF, esto puede ser cierto para múltiples tipos de API (los iRules F5 permiten que los filtros personalizados se escriban con gran poder y detalle).

Además, un WAF buscará varios ataques, cosas como ataques de analizador, desbordamientos, invocaciones de comandos, todas las cosas que no desea que alguien envíe a su servidor de aplicaciones heredado.

    
respondido por el gowenfawr 28.02.2014 - 16:08
fuente

Lea otras preguntas en las etiquetas