Interacción segura cliente/servidor.
Interacción segura cliente/servidor
Los problemas de seguridad de la información están lejos de limitarse a cuestiones individuales de control de acceso y firewall, que suelen ser consideradas por los autores de las publicaciones. Con este artículo intentamos corregir esta deficiencia
Arquitectura cliente/servidor multinivel
En los sistemas de información modernos construidos en una arquitectura cliente/servidor, generalmente hay tres niveles:
• nivel de presentación (implementando funciones de entrada y visualización de datos);
• nivel de aplicación (responsable de los servicios universales, así como de funciones específicas de un área temática particular);
• nivel de acceso a los recursos de información (realizando las funciones fundamentales de almacenamiento y gestión de información y recursos informáticos).
La comunicación entre niveles la proporciona el administrador de transacciones y comunicaciones. El uso de la tecnología Internet/Intranet ha introducido cambios en este esquema clásico al colocar un cliente universal a nivel de presentación — Un navegador web (posiblemente complementado con subprogramas de aplicación) y asignar las funciones de un centro de información (que es aconsejable combinar con las responsabilidades de un administrador de transacciones y comunicaciones) a un servidor web. El resultado es el circuito que se muestra en la figura.
Las estaciones de trabajo del cliente se comunican con el servidor web en redes locales y globales. La plataforma de hardware de los sistemas cliente incluye tanto ordenadores con todas las funciones (fijos y/o móviles) como comunicadores más sencillos.
Los sistemas de servidores de la mayoría de las organizaciones están distribuidos en varios sitios de producción, conectados, por regla general, por canales de comunicación públicos. Desde el punto de vista de los usuarios, esta separación es imperceptible, ya que interactúan con el servidor Web, pero desde el punto de vista de la seguridad, esta circunstancia es muy significativa. La configuración del software de las estaciones de trabajo de los clientes no es rígida. Puede reponerse dinámicamente mediante subprogramas u otros agentes activos recibidos en la red.
En el futuro, consideraremos la protección de las configuraciones cliente/servidor descritas, es decir, sistemas distribuidos, heterogéneos, multiservicio y en evolución.
Las amenazas de red son las más peligrosas para ellos, ya que no se permite el trabajo directo de los usuarios en los servidores. Si un atacante ha conseguido acceder al servidor, significa que ya se ha superado al menos una barrera de seguridad.
Amenazas en el entorno de red
Las amenazas en el entorno de red se pueden dividir en los siguientes tipos:
• escucha de red;
• cambios en los flujos de datos corporativos:
• impacto en los servicios de red de infraestructura:
• falsificación de paquetes de red:
• envío anómalo paquetes :
• generación de tráfico anómalo:
• rechazo de acciones completadas.
Los atacantes pueden intentar interceptar la red para lograr los siguientes objetivos:
• interceptar la información transmitida:
• interceptar la información de autenticación:
• analizar el tráfico.
La modificación de los flujos de datos corporativos conlleva las siguientes violaciones de seguridad:
• robo, reordenamiento, duplicación de información;
• cambiar e insertar sus propios datos (intermediario ilegal).
Impacto en los servicios de red de infraestructura significa:
• interferencia con el funcionamiento del servicio de nombres;
• cambiar las rutas de los flujos de información corporativa.
La suplantación de paquetes de red puede adoptar las siguientes formas:
• suplantación de direcciones;
• interceptación de conexiones:
• imitación del trabajo de otros servidores.
El envío de paquetes anómalos y la generación de tráfico anómalo son ataques de disponibilidad que se han vuelto relativamente generalizados recientemente. Finalmente, el rechazo de las acciones comprometidas — Esta es una amenaza a nivel de aplicación; es real, en primer lugar, debido a la naturaleza distribuida de los sistemas cliente/servidor.
Servicios de seguridad y requisitos para los mismos
Requisitos para los servicios de seguridad
Lo más recomendable es construir la protección de los sistemas creados en una arquitectura cliente/servidor según el mismo esquema, es decir, asignar un conjunto de servicios de seguridad que puedan ser utilizados tanto por los servidores como por los clientes. Este enfoque libera a los componentes de la aplicación de funciones que les son inusuales, lo cual es importante para aumentar la confiabilidad, simplificar y acelerar su desarrollo y actualización. Por supuesto, algunas funciones (por ejemplo, control de acceso) se pueden implementar dentro de un componente de aplicación o sistema operativo, pero esta es la excepción y no la regla.
El conjunto de servicios de seguridad está diseñado para proporcionar protección frente a las amenazas enumeradas en el apartado anterior. Además, una condición necesaria en este caso — se trata del cumplimiento de la seguridad arquitectónica y, en particular, la imposibilidad de eludir las medidas de protección.
Los servicios de seguridad están diseñados para ser tecnológicamente avanzados, permitiendo una fácil integración en los sistemas existentes y el desarrollo en el proceso de evolución de los sistemas. Para lograrlo, es necesario seguir estándares, principalmente los de Internet, por ser los más extendidos y viables.
Los servicios de seguridad deben tener una interfaz de software detallada y cómoda respaldada por los fabricantes de software.
Además, son necesariamente manejables. Esto significa que el entorno distribuido admite una configuración y auditoría centralizadas que son resistentes a las amenazas de la red. Además, los servicios de seguridad deben integrarse con sistemas de gestión comunes.
Los servicios de seguridad deben ser lo más transparentes posible y los gastos generales y las molestias que causan — mínimo.
Para proteger los sistemas cliente/servidor, los siguientes servicios de seguridad son los más importantes:
• autenticación:
• control de acceso;
• cortafuegos;
• cifrado;
• Control de integridad y autenticidad.
Identificación/autenticación
Medios modernos de identificación/la autenticación debe satisfacer dos condiciones:
• ser resistente a las amenazas de la red;
• admite el concepto de inicio de sesión único en la red.
El primer requisito se puede cumplir mediante métodos criptográficos. Hoy en día, los enfoques generalmente aceptados se basan en el sistema Kerberos o en el servicio de directorio de certificados X.509.
Inicio de sesión único — este es un requisito de transparencia y facilidad de uso. Si hay muchos servicios de información en la red corporativa a los que se puede acceder de forma independiente, entonces la identificación/autenticación múltiple se vuelve demasiado engorrosa.
El inicio de sesión único en la red se logra mediante el almacenamiento centralizado de los datos utilizados para la autorización, es decir, para determinar los permisos de los usuarios. Autorización — un área que limita entre la gestión y la seguridad de la información, por lo que las soluciones de autenticación a escala empresarial pueden depender tanto de medios administrativos como puramente defensivos.
Control de acceso
El control de acceso es probablemente el área de seguridad de la información más investigada. «Discrecional» y «obligatorio» La gestión se incluyó en todos los cursos teóricos y criterios de evaluación. También domina en la práctica.
En los últimos años se ha ido desarrollando activamente la llamada gestión basada en roles. Su esencia es que las entidades intermedias — se colocan entre los usuarios y sus privilegios. roles. Para cada usuario pueden estar activos varios roles al mismo tiempo, cada uno de los cuales le otorgará ciertos derechos.
Dado que hay muchos menos roles que usuarios y privilegios, su uso ayuda a reducir la complejidad y, por lo tanto, a mejorar la capacidad de administración de los sistemas. Además, sobre la base de un modelo a seguir, es posible implementar principios tan importantes como la división de responsabilidades (esto no permite que uno influya en ningún proceso importante por sí solo).
Para algunos servicios comunes, como la Web, el control de acceso basado en roles no sólo es natural, sino también relativamente sencillo de implementar (en el caso de la Web, basado en procedimientos cgi). En nuestra opinión, esta área merece la atención de los especialistas en seguridad de la información.
Firewalling
Firewalling como servicio de seguridad realiza la siguientes funciones:
• limita el acceso a Internet filtrando los datos transmitidos;
• transforma la información transmitida.
Los firewalls filtran información basándose en una base de reglas predefinida, lo que permite una mayor flexibilidad para abordar problemas de seguridad que los sistemas operativos tradicionales. Con un filtrado complejo, que cubre los niveles de red, transporte y aplicación, las reglas pueden incluir direcciones de red, la cantidad de datos transferidos, operaciones a nivel de aplicación, parámetros ambientales (por ejemplo, tiempo), etc.
La transformación de la información transmitida puede afectar tanto a los campos de servicio de los paquetes como a los datos de la aplicación. En el primer caso, normalmente hablamos de traducción de direcciones, que ayuda a ocultar la topología del sistema protegido. Esta es una propiedad única del servicio de blindaje que le permite ocultar la existencia de ciertos objetos de acceso. La transformación de datos puede consistir, por ejemplo, en cifrarlos.
Cifrado
Cifrado — un medio vital para garantizar la confidencialidad.
Para los servicios de cifrado informático modernos, es importante garantizar una riqueza funcional suficiente de las interfaces y su estandarización.
Estamos hablando de crear componentes seguros e invariantes que puedan integrarse libremente (al menos desde un punto de vista técnico) en configuraciones existentes y futuras.
Prestemos atención a los problemas técnicos y regulatorios del cifrado informático.
Entre los primeros, el tema más apremiante es la productividad. Implementación de software en procesadores universales — éste no es un remedio adecuado. Otro desafío técnico — desarrollo de una amplia gama de productos destinados a su uso en todo tipo de equipos informáticos y de red — desde comunicadores personales hasta potentes puertas de enlace.
En cuanto a las cuestiones regulatorias, destacamos la necesidad de un reconocimiento oficial de la admisibilidad del uso de herramientas y algoritmos extranjeros (ya que esto está prescrito, por ejemplo, por las especificaciones IPsec).
Control de integridad y autenticidad
En los sistemas modernos, La integridad y autenticidad del control deben extenderse más allá de grupos individuales de datos, componentes de hardware o software. Debe cubrir configuraciones distribuidas y proteger los flujos de información contra modificaciones no autorizadas.
Hoy en día, existen amplias soluciones para el monitoreo de integridad y autenticidad con un enfoque tanto en el sistema como en la red (generalmente el monitoreo se realiza de manera transparente para las aplicaciones como parte de la actividad general del protocolo). La interfaz del software para este servicio se ha estandarizado (como parte de la interfaz del servicio de seguridad general, GSS-API).