¿Es la aplicación de mainframe de IBM promedio inherentemente más segura que la aplicación de nube promedio, o es simplemente seguridad a través de la oscuridad?

El mainframe es definitivamente más seguro que la aplicación promedio de la nube, pero no tiene nada que ver con RACF, o la seguridad a través de la oscuridad. Varias publicaciones buenas aquí no se centran en el punto arquitectónico clave que lo hace tan seguro, al menos no de una manera que sea comprensible para aquellos que aún no conocen y entienden el problema.

La arquitectura del chip de mainframe es diferente. ¡Se ha hecho diferente para que sea seguro! Cuando se habla de una arquitectura, en este contexto, significan que el conjunto de instrucciones es diferente. En el chip de mainframe, ciertas instrucciones se segregan como “riesgosas” y se denominan “instrucciones privilegiadas”. Estas instrucciones son las que permiten que el software del sistema administre “espacios de direcciones” separados, que son áreas dedicadas en las que se pueden ejecutar los programas de aplicación. Los sistemas operativos y software similar, como los sistemas de bases de datos, pueden requerir instrucciones privilegiadas, pero una aplicación ordinaria no.

La aplicación ordinaria es la que se ejecutaría desde un usuario final y, por lo tanto, estaría sujeta a ataques. Pero ahora, con esta arquitectura, el posible pirata informático que encuentra un exploit está físicamente limitado para permanecer solo dentro de la memoria asignada al programa en el que está trabajando.

Esto es enorme Esto es muy diferente. Esto es seguro

En el “servidor de la nube”, por ejemplo, cuando un atacante puede realizar un ataque de “desbordamiento de búfer”, puede escribir sobre la memoria sin ninguna limitación. De hecho, la esencia de este ataque es que sobrescribe la memoria con su propio programa en lugar de lo que el programa esperaba obtener (por ejemplo, un “nombre”) y luego engaña a la CPU para que la ejecute.

En el mundo no mainframe, una vez que esto sucede, el conjunto completo de instrucciones de la computadora está disponible para la programación. En el mundo de mainframe, si el hacker intenta usar una instrucción privilegiada, el chip en sí * debe * recibir una señal física (¡otra entrada por separado!) De que este programa ha sido autorizado para ejecutar estas instrucciones. (Esta es la autorización APF que otros han mencionado). Dado que el pirata informático no tiene forma de invadir esta lista de autorizaciones, sin contar con ingeniería social, su programa nunca tendrá permiso para ejecutar las 10 instrucciones más poderosas en el chip. No recibirá la señal de entrada física que permita la ejecución de estas instrucciones, y su programa finalizará de inmediato. Las únicas instrucciones que podrá ejecutar son aquellas que deben permanecer dentro de la “región” de la dirección de memoria preasignada, asignada al programa que comprometió. Por lo tanto, nunca podrá bloquear otro programa, espiar datos de otro programa o comprometer otro programa. Él no tiene una oración para lograr el acceso “raíz”. A lo sumo, su hazaña se limita únicamente al programa donde se originó.

Esto lo hace seguro. Muy seguro.

Diría que estamos hablando de un orden de magnitud o dos más seguro.

Solo tengo experiencia con RACF (producto de IBM), así que no puedo hablar directamente con TopSecret o ACF2 (productos de CA), pero creo que son sustancialmente similares. RACF permite un control sofisticado y detallado de los recursos del sistema. Los usuarios pueden asignarse a múltiples grupos y el acceso a los recursos puede otorgarse / denegarse a usuarios o grupos. Los recursos pueden ser archivos específicos, grupos de archivos que coinciden con algún patrón de nombres, programas individuales, tablas de bases de datos, columnas en tablas, comandos del sistema, transacciones, etc. También hay múltiples niveles de acceso: leer, actualizar, crear, etc. no es un experto en LDAP o Active Directory, pero creo que el nivel de controles disponibles en los productos de seguridad de mainframe se encuentran entre los más sofisticados, si no los más sofisticados. El sistema también registra activamente el acceso detallado y las fallas de acceso.

Todo eso quiere decir que el entorno de mainframe puede estar bien protegido contra el acceso no autorizado por parte de cualquier usuario. Sin embargo, inherente a la cuestión de la seguridad contra las amenazas externas, sin embargo, es la cuestión de qué tan probable es que un usuario remoto pueda encontrar y explotar un agujero de seguridad, a pesar del intento del sitio de asegurar el acceso. Desde esa perspectiva, creo que el mainframe tiene algunas cosas que funcionan a su favor.

Lo más importante es que los espacios de direcciones no autorizados por APF no pueden acceder a otros espacios de direcciones en el sistema. (“Espacio de direcciones” es aproximadamente igual a un “proceso”.) Por lo tanto, en general, el peor escenario para un ataque externo sería bloquear, por ejemplo, el servidor web. Sin embargo, eso probablemente no durará mucho ya que los espacios de direcciones importantes generalmente son monitoreados por automatización y / o humanos y se reiniciarán relativamente rápido.

Los subsistemas de mainframe también tienen una larga historia (desde hace 50 años) de uso en entornos sensibles a la seguridad. Mientras que los sistemas Unix y Windows parecían comenzar desde el punto de confiar en el usuario, no creo que el entorno mainframe haya confiado alguna vez en el usuario. La Declaración de Integridad del Sistema de IBM ha estado vigente desde 1973. Consulte: http://www-03.ibm.com/systems/z/

Eso no quiere decir que nunca ha habido exposiciones de seguridad: el software está escrito por humanos y, por lo tanto, a veces no cumple con sus objetivos de diseño. Pero esos generalmente se abordan rápidamente. Además, aunque la mayoría de las tiendas de mainframe probablemente no actualizan z / OS con tanta frecuencia / rapidez como lo hacen las tiendas para Unix / Windows, en términos de versiones principales, es poco probable que la mayoría de las tiendas tengan más de 2 versiones. Hoy, las principales versiones de z / OS se lanzan normalmente en septiembre y se admiten durante 3 años. Las migraciones directas n + 2 son totalmente compatibles, por lo que a partir de julio de 2011, la versión más reciente de z / OS es 1.12, y es probable que la mayoría de las tiendas tengan z / OS 1.10 o posterior. Entonces, incluso si no está aplicando parches todos los meses, probablemente no esté ejecutando una versión del sistema operativo que se lanzó hace más de 5 años. Y desde una perspectiva de seguridad, los parches mensuales no son necesarios si no tiene parches de seguridad mensuales.

El acceso a los recursos del mainframe desde fuera del firewall normalmente se realiza a través de un sistema intermediario en la DMZ. Por lo tanto, también es más difícil acceder directamente al mainframe. OTOH, eso también significa que la seguridad de los recursos de mainframe a los que puede acceder el sistema intermediario es tan buena como la seguridad del sistema intermediario.