El aislamiento es la piedra angular de un sistema de información seguro Sin embargo, debe haber interacción entre los componentes del sistema para que funcione realmente. Para adaptar las soluciones a tareas específicas, ya sea la operación de una pasarela de IoT o un reactor nuclear, es necesario poder describir varias políticas de seguridad.
KasperskyOS está diseñado para gestionar estas y otras tareas de seguridad mediante el sistema de seguridad de Kaspersky. Todas las comunicaciones entre procesos (IPC) pasan por este módulo. Comprueba que cada interacción cumpla con las políticas de seguridad y, si no las cumple, se bloquea.
Incluso si un componente está comprometido, Kaspersky Security System elimina o minimiza cualquier posible daño. De este modo, el sistema se vuelve ciberinmune.
La arquitectura de Kaspersky Security System se basa en dos conceptos clásicos de seguridad de la información: la arquitectura MILS (varios niveles independientes de seguridad) y FLASK (Flux Advanced Security Kernel).
Esquema de interacción entre los componentes de KasperskyOS
Se bloquea cualquier interacción que no esté explícitamente permitida por la política de seguridad. El principio de denegación por defecto es la base de todas las soluciones seguras basadas en KasperskyOS.
Los desarrolladores de soluciones pueden combinar muchos modelos diferentes para crear políticas que se ajusten mejor a sus objetivos de seguridad. El lenguaje PSL está diseñado para describir la política de seguridad en términos de la solución en sí.
El desarrollador no tiene que escribir código que implemente la política de seguridad. En su lugar, se genera mediante un compilador especial basado en la descripción de PSL. Puede confiar en el código generado sobre la base de modelos bien estudiados.
La implementación de las políticas de seguridad está separada del código de la aplicación. Como resultado, se pueden modificar de forma independiente, lo que simplifica significativamente el trabajo de los desarrolladores de aplicaciones y los arquitectos de soluciones.
Kaspersky Security System es un monitor en el que el núcleo envía todos los mensajes de IPC para comprobar que cumplen con la política de seguridad especificada. Además, los objetos pueden acceder directamente a Kaspersky Security System mediante una interfaz especial, lo que abre oportunidades adicionales para los arquitectos de seguridad.
Para simplificar la creación de políticas, desarrollamos un lenguaje de especificación de políticas (PSL) específico. La sintaxis de PSL permite combinar varios modelos de seguridad en una sola política, incluidos los autómatas temporizados y de estados finitos, los modelos TE (Type Enforcement), el control de acceso basado en roles (RBAC) y muchos otros. También puede desarrollar sus propias clases de políticas. Al mismo tiempo, PSL es un lenguaje expresivo en el que las descripciones se desarrollan en función de la tarea.
El lenguaje de especificación de políticas exime a los desarrolladores de la necesidad de escribir políticas de seguridad, implementar o configurar el sistema de seguridad de Kaspersky manualmente. Lo único que necesita es ejecutar un compilador especial para optimizar el código del sistema de seguridad de Kaspersky para la tarea seleccionada en la descripción de PSL.
Configuración flexible de las directivas de seguridad y control de tolerancia cero en la comunicación entre procesos