Ocurre, con los accesos privilegiados y, claro, su gestión, que existen muchas interpretaciones un tanto simplistas, conceptos erróneos y, lo más preocupante, conjuntos de políticas de seguridad que parten de esas bases y, por lo tanto, de premisas erróneas. Y sí, estamos de acuerdo en que cualquier agujero de seguridad es un problema serio y a tener en cuenta, pero no podemos perder la perspectiva y dar a todos la misma importancia. Debemos tener en cuenta que, si somos responsables de administrar una infraestructura, la gestión de este tipo de accesos debe ser, siempre, una de nuestras prioridades.
Pero, claro, para poder gestionar los accesos privilegiados de manera adecuada, es fundamental que primero tengamos claro de qué estamos hablando. Necesitamos una definición que nos ayude a comprender, en su complejidad, de qué estamos hablando. Una vez que lo tengamos claro, llega el momento de analizar los distintos tipos de cuentas privilegiadas que existen, y ya adelanto que son bastantes más que hace algunos años. Y, claro, con esta base ya completamente definida, tendremos que analizar a qué riesgos nos enfrentamos y cómo podemos enfrentarnos a ellos.
¿Qué son los accesos privilegiados?
Como se puede deducir por su nombre, hablamos de los accesos a cuentas privilegiadas, esto es, que cuentan con uno o más permisos por encima de los atribuidos a las cuentas normales. Hay múltiples tipos de cuentas que cumplen esta condición (las veremos más adelante). Dichos permisos se suelen traducir en tener acceso a información sensible, sea esta del tipo que sea, así como a elementos clave de la infraestructura y, por lo tanto, son imprescindibles para poder trabajar con dicha información, así como para gestionar los elementos de IT. Puede parecer una obviedad, pero hay que recordarlo: los accesos privilegiados son imprescindibles.
El problema, claro, es que esta condición las convierte en el primer objetivo de la inmensa mayoría de los ciberdelincuentes. Técnicas delictivas como el spearphishing, una variante del phishing mucho más elaborada, se emplean de manera muy habitual para intentar obtener credenciales de cuentas privilegiadas. Y es que, aunque pueda parecer exagerado, una sola cuenta privilegiada, en combinación con determinadas técnicas de ataque, puede traducirse en un acceso completo por parte de los ciberdelincuentes a aquello que deseamos y debemos proteger.
Además, también son de manera más que habitual el objetivo de los empleados desleales. Ya operen de manera autónoma, por interés económico o afán de venganza, o lo hagan sirviendo a intereses externos, lo más probable es que pretendan explotar los accesos privilegiados (ya sea porque disponen de una cuenta privilegiada o porque roban los datos de una), ya sea para robar y exfiltrar información, o para sabotear las operaciones de la que todavía es la empresa en la que trabajan.
Y todavía hay un factor de riesgo más y que, pese a su carencia de malas intenciones, también puede ser tremendamente peligroso: los usuarios que, por desconocimiento u omisión, comprometen la seguridad de sus credenciales, de sus dispositivos, o de cualquier otro elemento de la infraestructura que pueda convertirse en una puerta de acceso para los ciberdelincuentes. Cualquier empleado descuidado es un peligro, pero aquellos que cuentan con accesos privilegiados lo son muchísimo más.
¿Qué tipos de cuentas privilegiadas existen?
Aquí llegamos a uno de los errores más comunes al abordar la seguridad de los accesos privilegiados. Y es que la tendencia más habitual es la de pensar, exclusivamente, en cuentas privilegiadas «tradicionales» y, generalmente, las que cuentan con todos los privilegios posibles, como por ejemplo la del administrador de toda la infraestructura. Las omisiones y los descuidos en este punto son una puerta abierta, de par en par, a todas las amenazas que puedas imaginar, y a otras mucha más que ni siquiera imaginas. Repasemos algunas cuentas privilegiadas:
Cuenta administrativa local: Este es uno de los tipos de cuenta más comunes al hablar de accesos privilegiados, y probablemente la primera o la segunda que viene a la cabeza de todo el mundo. Se trata de una cuenta que se circunscribe exclusivamente a un elemento concreto, que no es personal ni de uso constante y, en muchos casos, se identifica con nombres de usuario muy comunes: root, admin, etcétera. Son cuentas que nunca deben ser utilizadas para el trabajo diario, solo deben estar ahí para aquellos momentos puntuales en los que sea necesario llevar a cabo labores de administración.
Cuenta de usuario con privilegios: Aquí, por contra, nos encontramos con un tipo de cuenta que, erróneamente, tiende a ser olvidada o excluida al hablar de accesos privilegiados. Se trata de una cuenta personal, de alcance variable (puede ser local u ofrecer acceso a varios sistemas), de uso constante, y a la que por unas necesidades concretas se le han concedido, de manera permanente, determinados permisos adicionales. Son el objetivo más común de ataques de phishing dirigidos y de spearphishing, dado que la mayoría de sus usuarios no son profesionales de IT ni tienen formación específica en ciberseguridad.
Cuenta administrativa de dominio: Llegamos a la cuenta con más «poder» de todas las que veremos aquí. Y es que hablamos de una cuenta de administración con privilegios en todos los componentes de su dominio. Hablamos de una cuenta no personal, que no debe ser de uso constante y que actúa a modo de llave maestra para el administrador de esa infraestructura. Imagina el riesgo de que una cuenta de estas características pueda caer en las manos de un ciberdelincuente, un empleado desleal, aparecer a la venta en el mercado negro, etcétera.
Cuenta de servicio externo: Con la proliferación del modelo as a service, cada vez más elementos de las infraestructuras IT dependen de proveedores externos. Y muchas veces esos servicios externos almacenan y gestionan activos importantes y que deben estar bien protegidos. Es fundamental pensar en consolas de administración, tokens de acceso, certificados y un largo etcétera. Todos estos elementos gozan de accesos privilegiados, y no deben ser descuidados a a hora de gestionar las cuentas con privilegios.
Usuarios con privilegios temporales y de emergencia: Ya sea en respuesta a una incidencia, por una necesidad puntual o cualquier otra razón, es relativamente común escalar de manera temporal los privilegios de una cuenta normal. Aquí nos encontramos con un problema singular: estas cuentas son, temporalmente, privilegiadas, pero en muchas ocasiones no reciben la supervisión adecuada para tal tipo de cuentas. Además, también es relativamente común que, por una gestión inadecuada, mantengan los privilegios durante más tiempo del que los necesitan.
Cuenta de aplicación/servicio: Con este tipo de cuenta entramos en un subgrupo que tiende a ser olvidado al hablar de los accesos privilegiados. Me refiero a los que no son operados por personas, sino por software. Un ejemplo muy común son las claves SSH o mediante API keys que se emplean para interconectar elementos de cloud con otros de nuestra propia infraestructura. O las cuentas empleadas por los sistemas de backup que se conectan, automáticamente, a ordenadores y servidores para realizar las copias de seguridad. No hay que olvidar nunca que en conexiones M2M también hay accesos privilegiados.
Cuenta de aplicación local: El principal ejemplo de este tipo de cuentas lo vemos al instalar determinadas apps en dispositivos móviles y ordenadores. Me refiero, claro, al momento en el que éstas piden autorización al usuario para acceder a determinados elementos protegidos del sistema anfitrión. La concesión de dichos permisos establece accesos privilegiados permanentes (aunque revocables) que también pueden ser objetivo de un ataque.
Esta lista podría ser todavía más larga, pero estos son los principales y, además, sirven para dar una perspectiva más global de a qué nos referimos cuando hablamos de accesos privilegiados. No solo son cuentas de administración, también lo son las de mantenimiento, las que interconectan diferentes elementos de la infraestructura (sean internos o externos)… la lista es mucho más amplia de lo que podía parecer al principio, ¿verdad?
Riesgos de los accesos privilegiados
La inmensa mayoría de los ciberataques, independientemente de si su objetivo es acceder a información/recursos o cualquier otro tipo de activo, o llevar a cabo acciones de sabotaje, tienen su punto de partida en lograr acceder a cualquier punto de la infraestructura a atacar. Y, una vez dentro, ir moviéndose hasta alcanzar su objetivo, ya sea este un punto concreto (por ejemplo un servidor con información sensible) o replicarse por tantos elementos de la misma como le resulte posible (por ejemplo para un ransomware masivo). ¿Y qué es necesario para llevar a cabo estas acciones? Efectivamente, privilegios.
Muchos ataques se inician con cuentas sin accesos privilegiados, normalmente cuentas de usuarios sin privilegios que han sido obtenidas mediante phishing y otras técnicas. Con esas credenciales contarán con un acceso básico, que en principio solo compromete la seguridad de aquello con lo que está trabajando esa persona… y puede que ni eso, pues puede tratarse de una cuenta local con aún más limitaciones. Y podría parecer que la historia acaba aquí… pero en realidad solo acaba de empezar, el siguiente paso es la escalada de privilegios.
Al hablar de escalada o escalonamiento de privilegios, podemos deducir rápidamente que nos referimos a que partimos de un punto con determinados privilegios, y que mediante diversas técnicas, podremos «crecer» y obtener otros que no teníamos al principio. El objetivo, claro, es crecer tanto como sea posible o, al menos, lo suficiente como para poder ejecutar el ataque que previamente se ha planificado. Es importante, eso sí, distinguir entre dos tipos de escaladas de privilegios.
Escalada vertical: Este es el modelo que le viene a todo el mundo a la cabeza al hablar de escalada de privilegios. Consiste en acceder a un determinado sistema con una cuenta básica y, aprovechando exploits de seguridad y con otras técnicas, ir obteniendo nuevos privilegios en ese mismo sistema hasta hacerse con un acceso completo al mismo o, como mínimo, lograr el nivel de acceso necesario para llevar a cabo la siguiente fase del ataque.
Escalada horizontal o movimiento lateral: Al final, en todo ataque, el objetivo intermedio son los accesos privilegiados. Sin embargo, y por diversas razones, puede ocurrir que el atacante no quiera o, principalmente, no pueda escalar verticalmente en el sistema y la cuenta comprometida. En tal caso hay una segunda vía, que es desplazarse horizontalmente, es decir, a otro sistema de la infraestructura. O a muchos otros. Obtener un acceso básico a un sistema ya puede permitir obtener información que comprometa, al mismo nivel, a otros sistemas.
Este tipo de escalada también tiene encaje en los ataques de ransomware en los que se pretende acceder al mayor volumen posible de activos que encriptar y exfiltrar. No obstante, en el contexto de los accesos privilegiados, el más goloso de los objetivos es encontrar una cuenta de usuario con privilegios que no se gestione de manera específica, sino como el resto de cuentas de usuario. De este modo, desafiando la seguridad de las cuentas menos seguras y aprovechando una gestión inadecuada de los privilegios, un atacante puede escalar verticalmente tras realizar uno o varios movimientos horizontales.
¿Qué es la gestión de accesos privilegiados?
Llegados a este punto, ya es más que evidente que cualquier cuenta, cualquiera que cuente con privilegios, sean estos mayores o menores, se circunscriban a un ámbito más o menos amplio, y sean permanentes o temporales, debe ser sometida a un especial control. Para tal fin, sin duda lo más recomendable es combinar un conjunto de buenas prácticas y alguna de las soluciones de gestión de accesos privilegiados (PAM) diseñadas para este fin por diversos fabricantes del sector de la seguridad.
A este respecto, y para asegurarse de elegir el proveedor correcto, el Centro Criptológico Nacional (CCN) publicó, en julio del año pasado, la Guía de Seguridad de las TIC CCN-STIC 140, en cuyo anexo A.6, podemos encontrar la definición que este organismo da en lo referido a la gestión del acceso privilegiado. Y es muy importante tener en cuenta este documento, pues solo las soluciones que cumplan íntegramente con lo que en él se indica figuran en el listado de productos de seguridad del CCN.
En lo referido a las buenas prácticas, creo que lo más interesante plantearlas en conjunto con su némesis, es decir, aquello que debemos evitar, para poner el foco en ambos lados de la historia. Y es que esto nos puede ayudar a detectar qué posibles errores estamos cometiendo actualmente en la gestión de los accesos privilegiados.
Gestión manual, ¿sí o no?: Probablemente esta sea la pregunta más sencilla de todas, y la respuesta es no. Por norma general, la gestión manual se traduce en documentos de Excel con mil claves, varios calendarios con tantos eventos que al final lo más probable es que la mitad de ellos se queden sin leer, contraseñas repetidas y que no se actualizan nunca, cambios que no llegan a registrarse… El caos tiene nombre, y se llama gestión manual. Y no quieres eso para tus accesos privilegiados.
Privilegios, ¿que sobren o que falten?: Nos podemos ahorrar algo de tiempo si, en previsión de las (posibles) futuras necesidades de un usuario, escalamos sus privilegios de manera anticipada. Claro, que nos podemos ahorrar muchos disgustos si no actuamos de esa manera. Debemos revisar, al detalle, las necesidades específicas de cada cuenta y, con ello, asignarles exclusivamente los permisos que realmente necesitan. Y, algo muy importante, revisar estas asignaciones de manera común, ya que las necesidades cambian, y de su mano deben hacerlo también los accesos privilegiados.
Política de contraseñas: Si todas las credenciales deben cumplir unas mínimas condiciones de seguridad, en el caso de las cuentas privilegiadas este punto de partida debe ser bastante superior al empleado en las cuentas normales. Y no me refiero solo a la complejidad de la contraseña, que también, sino a la implantación de accesos MFA, limitación de la vida útil de cada clave y prohibición de reutilización de claves, tanto simultáneamente un múltiples accesos, como de manera secuencial en un mismo acceso.
Partners, ¿muchos o pocos?: Si tenemos 25 proveedores distintos para las máquinas de vending, pues perfecto, no hay ningún problema. Sin embargo, si hablamos de infraestructura y de seguridad, lo más recomendable es mantener limitado el número de terceras partes implicadas y, por lo tanto, de la cantidad de medios de acceso y accesos privilegiados que coexisten simultáneamente. Menos (accesos) es más (seguridad).
¿Un solo acceso privilegiado para todo?: Ni de broma. Es cierto que es positivo reducir el número de accesos privilegiados, manteniendo y actualizando constantemente aquellos que son necesarios. Sin embargo, concentrar todos los privilegios en muy pocas cuentas hace que la hipotética exposición de una de ellas sea, potencialmente, mucho más peligrosa. La clave, sin duda, es encontrar el equilibro entre el número de accesos y el nivel de privilegios de los mismos.
Empleados y formación: Sé que suena obvio, pero en realidad la formación a los empleados en lo referido a ciberseguridad sigue siendo una asignatura pendiente en muchas empresas. Y buena parte de los incidentes de seguridad que afectan a las empresas están directamente relacionados con fallos de los usuarios: contraseñas inadecuadas, apertura de adjuntos sospechosos, gestión incorrecta de la información sensible, uno innecesario de cuentas privilegiadas, shadow IT… un enorme conjunto de malos hábitos que se pueden prevenir, en gran medida, mediante formación.