La Seguridad en la automatización de procesos

La automatización robótica de procesos (RPA) es una tecnología que se está convirtiendo rápidamente en una herramienta esencial para la automatización de tareas repetitivas y procesos de negocio.
Al igual que con cualquier tecnología, es importante tener en cuenta los aspectos relativos a la seguridad al implementar proyectos de automatización con RPA.

Para abordar los riesgos de estos sistemas, es fundamental establecer controles de seguridad adecuados:

  • Segregación de Entornos

Como en otras tecnologías, la segregación de entornos se refiere a la separación de los entornos de desarrollo, pruebas y producción. Esta práctica es fundamental para garantizar la calidad y la seguridad de los procesos de RPA y minimizar los riesgos en producción.

Al separar los entornos de desarrollo, pruebas y producción, se minimizan los riesgos de que los errores en el código del proceso afecten en producción, lo que puede reducir el tiempo de inactividad y los costes asociados con los incidentes de seguridad. Además, se asegura que los procesos funcionen correctamente en real, lo que puede mejorar la eficiencia y la productividad de la empresa.

  • Control de accesos y segmentación de roles

El control de accesos se refiere a la gestión de quién tiene acceso a qué recursos y cuándo. Se utiliza para garantizar que solo las personas autorizadas tengan acceso a los procesos y para realizar determinadas funciones. Se pueden tener roles de operador que sólo pueden realizar determinadas acciones de ejecución de los procesos, pero ni siquiera pueden ver el código. De igual manera los desarrolladores no tienen permisos para ejecutar procesos en producción. Esta gestión de roles puede llegar a ser compleja si estamos en Centros de Excelencia federados o multi-tenant donde puede haber equipos de automatización orientados por funciones e incluso por países. Así, los programadores de España en el área de finanzas solo podrán modificar los procesos de finanzas españoles, mientras que puede haber operadores que gestionen todos los procesos de la compañía a nivel global.

  • Control de acceso y credenciales

Uno de los beneficios que nos proporciona La automatización con RPA es el acceder a múltiples aplicaciones o sistemas y procesar sus datos. Por tanto, es fundamental asegurar que para cada proceso solo se tenga acceso a las aplicaciones necesarias, a los datos necesarios y que se implementen los controles adecuados para protegerlos. Esto incluye la gestión de usuarios, contraseñas y el cifrado de datos.

Los datos sensibles, como los datos personales, financieros y confidenciales, deben protegerse adecuadamente. Esto puede incluir el uso de tecnologías de cifrado y control de acceso para garantizar que solo se tenga acceso a los datos necesarios. Además, los datos deben ser almacenados de manera segura, utilizando tecnologías de almacenamiento de datos seguros y protegidos con controles de acceso.

Es importante asegurarse de que todos los usuarios que tienen acceso a los datos se autentiquen y se autoricen adecuadamente. Los controles de acceso deben ser proporcionales al nivel de riesgo asociado con la información que se está protegiendo.

Los datos también deben ser protegidos durante su transmisión entre diferentes sistemas y dispositivos. Esto puede incluir el uso de tecnologías de cifrado de datos y de transporte seguras, como SSL o TLS, para garantizar que los datos transmitidos sean seguros y no puedan ser interceptados por terceros no autorizados.

Para cumplir todas estas necesidades, las soluciones de automatización disponen de áreas especificas para almacenar las credenciales de cada aplicación de manera que incluso puede existir un rol que introduzca las credenciales que usan el robot y que nadie mas sepa cual es. Esto permite que ni siquiera los programadores ni operadores puedan ver esas credenciales.

Por otro lado, la comunicación que se realiza entre las diferentes capas de estas soluciones está cifrada para evitar la intercepción de datos.

  • Auditoría y trazabilidad

Para garantizar la seguridad de los datos, es importante tener la capacidad de realizar un seguimiento de las actividades realizadas por los robots. Esto incluye la grabación de todas las acciones realizadas por los robots y la implementación de un sistema de auditoría que permita verificar que las acciones se han realizado correctamente.

La auditoría y trazabilidad también es importante para la identificación de errores y la resolución de problemas. Cuando se produce un error o un fallo, es importante poder rastrear la causa del problema y revertir cualquier cambio o acción que haya contribuido al problema. El registro de auditoría debe ser almacenado de manera segura y solo debe estar disponible para personas autorizadas.

Por otro lado, es tremendamente importante que estos registros de auditoria o logs sean inviolables, es decir, no puedan ser modificados por nadie. Estos registros de auditoria deben cubrir cualquier interacción del sistema. Por ejemplo:

  • Uso general del sistema
  • Inicios de sesión: tanto eventos de inicio de sesión exitosos como inicios de sesión intentados/fallidos
  • Actividades: qué hacen los usuarios, cuánto tiempo pasan haciéndolo, desde dónde lo hacen (sistemas de origen, nombres de host, dirección IP, etc.) y cuál es el efecto / resultado de sus actividades.
  • Actividades de gestión / administración del sistema
  • Cambios en la configuración del sistema
  • Adición / eliminación de nuevos usuarios
  • Cambios en los puntos finales, ubicaciones de entrada/salida, variables de entorno, etc.
  • Control del Ciclo de vida del desarrollo
  • Creación de nuevos procesos
  • Auditoría de actividades de promoción y gestión de cambios: publicación, importación / exportación, migración, cambios de parámetros, etc.
  • Comportamiento en tiempo de ejecución
  • Qué usuario ha iniciado qué proceso
  • Dónde y cuándo se ha ejecutado un proceso y durante cuánto tiempo
  • Qué actividades han realizado los robots: cómo / cuándo / dónde / por qué

Sin este nivel completo de supervisión, sería posible, por ejemplo, desarrollar / crear un proceso no autorizado en un entorno externo y luego importar / ejecutar ese proceso y posteriormente eliminarlo, sin que quedara traza de que se hizo, quien lo hizo y cuando

La clave en el registro de logs es el no repudio. Es decir que no sea argumentable su veracidad. Si un registro de auditoría no tiene las características de seguridad, irrevocabilidad e integridad entonces se vuelve repudiable: se pueden cuestionar su exactitud, afirmar que es

  • Control de versiones

La automatización con RPA a menudo implica la creación y modificación de scripts y flujos de trabajo. Es importante tener un sistema de control de versiones para garantizar que todas las modificaciones se realicen de manera controlada y que se pueda rastrear quién hizo cada cambio. El control de versiones también es importante para revertir cambios en caso de que se produzca un error o una falla en el proceso de automatización.

El control de versiones implica establecer una estructura de control de cambios, identificar y etiquetar las versiones de los procesos y mantener un registro de todas las versiones. Esto permite que los desarrolladores trabajen en diferentes versiones de un proceso sin interferir en el trabajo de otros desarrolladores. Además, un control de versiones adecuado permite volver a versiones anteriores del proceso en caso de problemas.

  • Pruebas de seguridad

Al igual que con cualquier software, es importante realizar pruebas de seguridad regulares para identificar y solucionar vulnerabilidades de seguridad. Las pruebas de penetración y las revisiones de código pueden ayudar a identificar problemas de seguridad potenciales antes de que sean explotados.

Las pruebas de seguridad en los proyectos de automatización con RPA deben realizarse en diferentes etapas del ciclo de vida del desarrollo, desde la fase de diseño hasta la fase de producción. Estas pruebas incluyen la identificación de vulnerabilidades en los procesos y la verificación de que los controles de seguridad están implementados  y son efectivos.

Una de las pruebas más importantes es la evaluación de vulnerabilidades. Esto implica realizar pruebas de penetración y escaneo de vulnerabilidades en los sistemas de automatización para identificar cualquier debilidad en la seguridad. Las pruebas de penetración son simulaciones de ataques cibernéticos, que buscan explotar debilidades en el sistema y obtener acceso no autorizado a los datos o sistemas.

Otras pruebas importantes incluyen pruebas de carga, pruebas de estrés y pruebas de recuperación ante desastres. Las pruebas de carga y estrés simulan el uso intensivo del sistema para verificar si puede gestionar grandes cantidades de trabajo sin fallar. Las pruebas de recuperación ante desastres se realizan para verificar que la solución de automatización puede recuperarse de un fallo en el sistema o un desastre natural.

  • Seguridad e Infraestructuras TIC

La seguridad de la infraestructura TIC es otro aspecto importante a considerar al implementar proyectos de RPA. La infraestructura utilizada para la automatización con RPA debe ser segura y estar protegida adecuadamente contra amenazas externas e internas. Esto incluye la implementación de firewalls, antivirus y otras medidas de seguridad para garantizar la protección de los datos y la infraestructura. Los sistemas de automatización generalmente se instalan sobre maquinas virtuales ya sean on-premise, en cloud privados o públicos. El acceso a ellas se realiza generalmente por Acceso remoto (RDP) y gran parte de las veces por VPN. Estos dos elementos deben estar perfectamente controlados para evitar accesos indebidos no autorizados, implementando, por ejemplo, doble factor de autenticación.

Si se toman las medidas adecuadas para abordar estos aspectos clave de la seguridad, las empresas pueden mitigar los riesgos y sacar todo el provecho a la automatización de procesos.

Autor: Marcos Navarro Alcaraz (Info)

Experto en Automatización de procesos

Comparte este Post