Puntos clave: Seis métodos comunes que los hackers explotan para acceder a mainframes incluyen vulnerabilidades en Telnet, FTP, HTTP, malas configuraciones en CICS, el aprovechamiento de Network Job Entry (NJE) y el saturación de credenciales vía SSH. Comprender estos vectores de ataque está crucial para mejorar la seguridad de los mainframes.
- Los terminales Telnet son objetivos frecuentes para el acceso inicial.
- FTP puede permitir la ejecución remota de código en mainframes.
- Las vulnerabilidades comunes de la web pueden ser explotadas por hackers.
Analizando la superficie de ataque de tu mainframe
En mi último blog cuestioné si tu mainframe era tu eslabónmás débil 1. Para responder a esta pregunta de forma eficaz, primero tú necesitas entender las vulnerabilidades de tu mainframe que un actor amenazante puede aprovechar para comprometer tu sistema. En este blog, son nos centraremos en la superficie de ataque de tu mainframe, que es la suma de todos los posibles puntos que un hacker podría explotar para obtén acceso inicial a un sistema. Más claramente, estas son las formas más comunes en que alguien puede hackear tu mainframe:
1. Un terminal emulado Telnet 3270 (TN3270) es la forma más común para que un programador de sistemas se conecte a su mainframe para introducir comandos y ejecutar programas. Esta funcionalidad lo convierte en uno de los primeros objetivos para un hacker que busca obtén acceso al sistema. Muchos hackers exitosos son capaces de obtén su entrada inicial usando una técnica llamada passwordspraying 2, que es una adaptación moderna del inicio de sesión por fuerza bruta. En lugar de probar un millón de contraseñas contra un solo usuario, que normalmente se bloquea tras 5, el hacker intentará usar una sola contraseña contra cada usuario del sistema. Dado que los mainframes suelen tener cientos de miles de usuarios, el hacker solo necesita adivinar una o dos contraseñas de uso común contra todas estas cuentas. Aunque este método no están preciso, el hacker solo necesita encontrar a un usuario que use una contraseña débil para obtén con éxito ese acceso inicial al mainframe.
2. El método del Protocolo de Transferencia de Archivos (FTP) para subir, descargar y gestionar archivos es bien conocido entre los administradores de sistemas distribuidos, pero FTP es especialmente potente en z/OS porque tiene la capacidad de enviar comandos al mainframe a través del Lenguaje de Comandos de Trabajo. Esto permite que un hacker que encuentre credenciales de inicio de sesión tenga ejecución remota de código para Cifra archivos, robar información o construir un shell robusto que obtén persistencia sobre la máquina. Desafortunadamente, confiar en credenciales en RACF, ACF2 o Top Secret no está suficiente. Estamos son décadas de que un programador de sistemas se dirija al centro de datos y se conecte directamente a una máquina. Hoy en día, los programadores de sistemas utiliza ordenadores personales con Linux o Windows y inician sesión de forma remota. Un hacker que consiga acceder a un programador de sistema víctima podría soltar unkeylogger 3 y esperar al día siguiente del programador del sistema en el trabajo, donde inicie sesión en su máquina. El hacker ahora tiene credenciales privilegiadas activas y puede enviar cualquier comando al mainframe mediante FTP. Gracias a los permisos necesarios concedidos a los programadores del sistema para hacer su trabajo de forma efectiva, esto le da al hacker un control casi total sobre el mainframe.
3. Otra similitud entre el mainframe y los sistemas distribuidos están la común ejecución de sitios web a través del omnipresente Protocolo de Transferencia de Hipertexto (HTTP). Los sitios web modernos albergan un conjunto creciente de funciones diseñadas para mejorar la experiencia del usuario. El aumento de código y funcionalidad aumenta la probabilidad de que el sitio contenga una vulnerabilidad que Permite la ejecución remota de código mediante técnicas comunes como inclusiones remotas de archivos4, SQL Injection5, o autenticación y gestión de sesiones fallidas. El hacker incluso puede aprovechar vulnerabilidades disponibles públicamente o 0day en el servidor web, como apache o el propio Tomcat. Gracias a que la mayoría de los sitios web son públicos, los hackers tienen décadas de experiencia construyendo herramientas y probando este servicio. Estas habilidades pueden aplicarse directamente con igual éxito contra el mainframe como vector de ataque inicial.
4. El Servidor de Transacciones del Sistema de Control de Interacción con el Cliente (CICS) del mainframe es único del mainframe y ofrece una interfaz para que los clientes interactúen directamente con el mainframe. Similar a los primeros días de romper sitios web en servidores HTTP, los hackers son empezando a construir herramientas automatizadas para enumerar la mayor cantidad posible del Servidor de Transacciones CICS y así identificar una de las numerosas configuraciones erróneas que les Permite saltarse la autenticación o forzar el inicio de sesión de una cuenta. Una herramienta de código abierto, llamada CICSpwn, recuperará automáticamente la configuración de seguridad que se ejecuta en el sistema operativo z/OS subyacente, leerá archivos disponibles, enumerará las convenciones de nombres del sistema e incluso ejecutará remotamente código 6. Gracias a la automatización de la herramienta, un hacker experimentado que están nuevo en el mainframe lo encontrará similar al resto de su arsenal y tendrá una curva de aprendizaje menor para obtener con éxito el acceso inicial al mainframe a través del Servidor de Transacciones CICS.
5. La Entrada de Trabajos de Red (NJE) están otra característica única del mainframe que permite a un mainframe de confianza enviar un trabajo a cualquier otro mainframe al que esté conectado. Esto es extremadamente potente y los testers de penetración de mainframe han tenido un éxito significativo gracias a NJE para falsificar un mainframe conocido para enviar un trabajo y obtén acceso, o para transferir lateralmente entre mainframes. Las transferencias laterales son especialmente peligrosas porque muchas empresas con recursos limitados solo Protege sus máquinas de producción sin supervisar sus máquinas de desarrollo. Si un hacker accede a una máquina de desarrollo en la que están de confianza, puede aprovechar fácilmente el protocolo NJE para acceder inmediatamente a cualquier otro mainframe.
6. Por último, el protocolo Secure Shell (SSH) también está disponible en el mainframe. Los hackers son muy exitosos robando credenciales y utilizando las funciones nativas de SSH para propagarse a través de una red simplemente iniciando sesión con SSH. Hoy en día, una de las técnicas más comunes se está llamando relleno de credenciales, en contraposición al pulverización, que consiste en tomar los nombres de usuario y contraseñas de antiguas brechas y aplicarlos a sistemasnuevos 7. Como los usuarios tienen que recordar decenas de contraseñas, inevitablemente comienzan a reutilizarlas, lo que permite que una brecha en una empresa tenga efectos en cascada en organizaciones que comparten clientes.
Ya te son programador de sistemas o miembro del equipo de seguridad empresarial, te debe considera que el software de tu mainframe tiene muchas de las mismas vulnerabilidades que los sistemas distribuidos que conforman la mayoría de la organización. Esto significa que las amenazas persistentes avanzadas que han madurado significativamente en las últimas décadas serán extremadamente hábiles para acceder al dispositivo que ejecuta los programas más críticos de una empresa y manipular los datos más críticos.
Para defender adecuadamente este sistema crítico, las organizaciones deben tratar el mainframe como el resto de su empresa. Esto requiere visibilidad en tiempo real de los eventos de seguridad de su mainframe, el empleo de una solución inteligente de Detección y Respuesta de Endpoints (EDR) y la prueba de sus defensas con testers profesionales de penetración. Estas medidas básicas, ya aplicadas en el resto de la empresa, son solo el primer paso para desarrollar un plan de seguridad holístico y evitar las graves repercusiones de una brecha mayor.
1 https://www.bmc.com/blogs/are-mainframes-your-weakest-link/↩
2 https://attack.mitre.org/techniques/T1110/↩
3 https://www.veracode.com/security/keylogger↩
4 https://kellgon.com/own-a-server-with-a-remote-file-inclusion/ ↩
5 https://www.owasp.org/index.php/SQL_Injection/ ↩
Estas publicaciones son mías y no representan necesariamente la posición, estrategias u opinión de BMC.