![Cómo Blindar la Seguridad de un Chatbot de IA en Local y Evitar Filtraciones de Información](https://acf.geeknetic.es/imgri/imagenes/auto/25/02/01/tu6-como-blindar-la-seguridad-de-un-chatbot-de-ia-en-local.png?f=webp)
Cómo Blindar la Seguridad de un Chatbot de IA en Local y Evitar Filtraciones de Información
por Raúl UnzuéHardening ChatBot de IA Local
La Inteligencia Artificial (IA) es una herramienta poderosa que mejora la eficiencia operativa de las empresas, pero también puede representar un riesgo si la información sensible que maneja llega a filtrarse al exterior. Un ejemplo, es el ChatBot de un Gestor Documental que puedes tener implementado en tu empresa.
¿Cómo garantizar que un ChatBot de IA instalado en la empresa no envíe ni reciba datos de internet?
Sin una configuración adecuada y un correcto endurecimiento de seguridad o hardening (en esta entrada os explícabamos como se realizaba en Wordpress), un ChatBot local puede convertirse en un punto vulnerable para ciberataques, filtraciones de información o accesos no autorizados.
El hardening de un ChatBot de IA local implica la aplicación de medidas de seguridad diseñadas para limitar su exposición a amenazas externas, bloquear accesos no deseados y controlar el flujo de datos dentro de la red corporativa. Esto es especialmente crítico cuando el ChatBot maneja información sensible, propiedad intelectual o datos estratégicos de la empresa.
En esta guía, presentaremos un modelo de seguridad teórico-práctico, aplicable a una empresa estándar, que se basa en cortafuegos, segmentación de red mediante VLANs y control de accesos a través de Directorio Activo (Active Directory o LDAP). Con estas medidas, garantizaremos que el ChatBot, como podría ser uno basado en DeepSeek, solo opere dentro del entorno empresarial sin posibilidad de exponer información al exterior y quede blindado.
El Entorno de Seguridad para el Chatbot
Para este ejemplo, supongamos que la empresa ha instalado un ChatBot de IA basado en Llama 3 (como explicamos en la siguiente entrada su instalación bajo Windows) en sus servidores locales. Este modelo de IA procesa información de clientes, empleados y documentos internos, por lo que cualquier fuga de datos podría ser un problema grave.
Para evitar filtraciones o blindar nuestro ChatBot, configuraremos un entorno con las siguientes medidas de seguridad:
- Un Servidor de IA Local: El ChatBot corre en un servidor físico o virtual dentro de la empresa.
- Red Segura con VLANs: Segmentamos las redes para que el ChatBot solo se comunique con los sistemas internos.
- Cortafuegos que Bloquea Internet: No permitimos que el ChatBot acceda a servidores externos.
- Autenticación con Directorio Activo: Solo usuarios autorizados pueden acceder al ChatBot.
- Monitorización y Auditoría de Accesos: Registramos cada interacción con la IA.
Servidor de IA Local
El ChatBot Llama 3 se instala en un servidor que no tiene conexión directa a internet. Este servidor se encuentra en una VLAN exclusiva para inteligencia artificial, separada del resto de la red empresarial.
- Sistema Operativo: Linux o Windows Server
- Modelo de IA: Llama 3 (pre-entrenado y alojado en local)
- Almacenamiento: Solo accede a una base de datos interna
Vamos a desarrollar el resto de elementos de la red.
Configuración Técnica del Entorno
En esta apartado, detallaremos la configuración de red completa, incluyendo direcciones IP para cada segmento, comunicación entre componentes, puertos TCP/IP usados y bloqueos de tráfico en el firewall. De este modo, podrás desarrollar un esquema claro para la arquitectura de seguridad del ChatBot.
Estructura de Red y Asignación de Direcciones IP
Vamos a suponer que la empresa tiene un rango de red interna 192.168.10.0/24 y segmentaremos la red en diferentes VLANs para evitar accesos no autorizados.
VLAN |
Uso |
Rango de IPs |
Accesibilidad |
---|---|---|---|
VLAN 10 |
Red de Usuarios |
192.168.10.0/24 |
Puede acceder al ChatBot |
VLAN 20 |
Servidores internos (ChatBot) |
192.168.20.0/24 |
Sin acceso a internet |
VLAN 30 |
Red de Administración |
192.168.30.0/24 |
Control total de la red |
VLAN 40 |
Red de Invitados |
192.168.40.0/24 |
Sin acceso al ChatBot |
¿Por qué hacemos esto?
Porque así, si un dispositivo infectado por malware intenta acceder al ChatBot, no podrá hacerlo sin estar en la VLAN correcta y con las credenciales adecuadas.
Asignación de IPs por Dispositivos
Dispositivo/Servicio |
Dirección IP |
Descripción |
---|---|---|
Servidor de IA (ChatBot) |
192.168.20.10 |
Aloja el ChatBot de IA |
Servidor de Base de Datos |
192.168.20.20 |
Almacena información indexada |
Controlador de Dominio (AD) |
192.168.30.10 |
Autenticación y control de acceso |
Estación de usuario |
192.168.10.50-200 |
Usuarios internos |
Gateway/Cortafuegos |
192.168.1.1 |
Filtra tráfico entre VLANs |
Comunicación entre Componentes y Puertos TCP/IP Usados
Para permitir la correcta comunicación entre los diferentes sistemas, utilizaremos los siguientes puertos TCP/IP.
Origen |
Destino |
Puerto TCP |
Uso |
---|---|---|---|
Usuarios (VLAN 10) |
Servidor de IA (VLAN 20) |
5000 |
API del ChatBot (FastAPI/Uvicorn) |
Servidor de IA (VLAN 20) |
Base de Datos (VLAN 20) |
5432 |
PostgreSQL (base de datos del ChatBot) |
Servidor de IA (VLAN 20) |
Directorio Activo (VLAN 30) |
389 |
LDAP para autenticación |
Administradores (VLAN 30) |
Servidor de IA (VLAN 20) |
22 |
SSH para gestión del servidor |
Servidor de IA (VLAN 20) |
Internet |
❌ Bloqueado |
Evita fugas de datos |
Reglas del Cortafuegos: Qué Permitir y Qué Bloquear
Para asegurar la integridad del sistema, el firewall debe bloquear cualquier tráfico innecesario.
El ChatBot no debe tener acceso a internet. Para ello, configuramos un firewall empresarial que bloquea todo tráfico de red no autorizado.
Pautas que vamos a aplicar:
- ❌ Bloquear todo tráfico de salida hacia internet desde el servidor del ChatBot.
- ❌ Denegar conexiones entrantes desde fuera de la empresa.
- ✅ Permitir conexiones internas solo desde las VLANs autorizadas.
- ✅ Habilitar registros de actividad para auditoría.
Control de Acceso con Directorio Activo
Para garantizar que solo los empleados correctos puedan interactuar con el ChatBot, configuramos la autenticación a través de Microsoft Active Directory.
- Solo los empleados del departamento autorizado (por ejemplo, Soporte o Recursos Humanos) pueden iniciar sesión.
- Se asignan permisos de acceso basados en roles, limitando qué tipo de datos puede consultar cada usuario.
- Se establecen políticas de doble autenticación para mayor seguridad.
Ejemplo de Roles de Usuario:
Grupo de Usuarios |
Permisos en el ChatBot |
---|---|
Equipo de Recursos Humanos |
Puede hacer preguntas sobre empleados |
Soporte Técnico |
Consulta guías técnicas |
Gerencia |
Acceso a reportes y estadísticas |
Usuarios Invitados |
Sin acceso |
Aquí se establecen las reglas de filtrado que aplicaremos:
Reglas Generales del Firewall
Regla | Origen | Destino | Puerto/Protocolo | Acción |
---|---|---|---|---|
Permitir tráfico web al ChatBot | 192.168.10.0/24 (Usuarios) | 192.168.20.10 (Servidor de IA) | 5000/TCP | ✅ Permitir |
Permitir acceso del ChatBot a la base de datos (Están en la misma red, no aplicaría) | 192.168.20.10 (Servidor de IA) | 192.168.20.20 (Servidor de BD) | 5432/TCP | ✅ Permitir |
Permitir autenticación con Active Directory | 192.168.20.10 (Servidor de IA) | 192.168.30.10 (Controlador de Dominio) | 389/TCP (LDAP) | ✅ Permitir |
Permitir administración del ChatBot (SSH) | 192.168.30.0/24 | 192.168.20.10 (Servidor de IA) | 22/TCP | ✅ Permitir |
Bloquear acceso del ChatBot a internet | 192.168.20.0/24 (Red de IA) | Internet | Todos | ❌ Bloquear |
Bloquear acceso de usuarios a la base de datos | 192.168.10.0/24 (Red de Usuarios) | 192.168.20.20 (Servidor de BD) | Todos | ❌ Bloquear |
Bloquear acceso de invitados al ChatBot | 192.168.40.0/24 (Red Invitados) | 192.168.20.10 (Servidor de IA) | Todos | ❌ Bloquear |
Esquema y flujo de Comunicación
Flujo de Comunicación
- Los usuarios en la VLAN 10 acceden al ChatBot en 192.168.20.10 a través de la API en puerto 5000.
- El ChatBot consulta la base de datos en 192.168.20.20 mediante el puerto 5432.
- El ChatBot valida credenciales con el Directorio Activo (192.168.30.10) mediante puerto 389 (LDAP).
- Los administradores en VLAN 30 pueden acceder al ChatBot vía SSH (puerto 22).
- El firewall bloquea todo tráfico externo, evitando cualquier intento de comunicación con internet.
Prevención de Filtraciones de Datos
Aunque el ChatBot ya está aislado de internet y solo accesible para empleados autorizados, añadimos más capas de seguridad para prevenir filtraciones accidentales.
Monitorización de Actividad
Cada interacción con el ChatBot debe ser registrada y monitorizada en tiempo real. Esto permite detectar comportamientos sospechosos y prevenir intentos de extracción de información.
¿Cómo implementarlo?
- Registro de eventos en tiempo real: Cada pregunta, respuesta y usuario involucrado deben ser registrados en un SIEM (Security Information and Event Management) para su análisis posterior.
- Análisis de patrones anómalos: Se deben establecer reglas que detecten patrones sospechosos, como:
- Consultas repetitivas sobre temas sensibles en un corto período de tiempo.
- Solicitudes de información que excedan un umbral predefinido.
- Acceso fuera de horarios laborales o desde dispositivos no autorizados.
- Alertas en caso de actividad sospechosa: Si se detecta un comportamiento inusual, se enviará una alerta automática a los administradores de seguridad para tomar medidas inmediatas.
Herramientas recomendadas
- Splunk / ELK Stack (Elasticsearch, Logstash, Kibana) – Para analizar logs y detectar anomalías.
- Wazuh – Para correlación de eventos de seguridad y SIEM.
- Graylog – Para centralizar y analizar registros del ChatBot.
Políticas de Prevención de Pérdida de Datos (DLP)
Es imprescindible evitar que el ChatBot proporcione respuestas que contengan datos sensibles o información crítica de la empresa. Para ello, se pueden aplicar reglas de prevención de pérdida de datos (DLP, Data Loss Prevention).
¿Cómo funciona?
- Filtrado de palabras clave y patrones sensibles: Implementación de reglas que bloqueen respuestas si contienen:
- Información financiera: Números de tarjetas de crédito, cuentas bancarias.
- Datos personales: DNI, teléfonos, direcciones.
- Credenciales: Contraseñas, tokens de autenticación.
- Información estratégica: Documentación interna clasificada.
- Categorización de información: El ChatBot debe reconocer qué tipos de datos están permitidos y cuáles deben ser bloqueados.
- Desensibilización de respuestas: En lugar de bloquear completamente la respuesta, se pueden ocultar datos sensibles con asteriscos o reemplazos contextuales.
Ejemplo de implementación
- Si un usuario pregunta: "¿Cuál es el número de cuenta del cliente X?"
- Respuesta válida: "No puedo proporcionarte esa información."
- Respuesta bloqueada: "El número de cuenta es 1234-5678-9000"
Herramientas recomendadas
- Microsoft Purview DLP – Para definir políticas de protección de datos.
- Google Cloud DLP – Para analizar y proteger datos en IA.
- OpenDLP – Solución open-source para detectar fugas de información.
Mecanismo de Respuesta ante Incidentes
Si un usuario intenta extraer datos de manera sospechosa o reiterativa, es crucial contar con un sistema de respuesta automática para mitigar el riesgo antes de que se materialice la amenaza.
¿Cómo funciona?
-
Detección de actividad sospechosa
- Identificación de usuarios que realizan solicitudes de datos confidenciales de manera repetitiva.
- Intentos de manipulación del ChatBot para extraer información clasificada.
- Accesos inusuales (por volumen de consultas o desde ubicaciones no habituales).
-
Generación de alertas automáticas
- Notificación instantánea a los responsables de seguridad.
- Registro del incidente en el SIEM o en la herramienta de monitoreo.
-
Bloqueo automático del usuario o restricción de acceso
- Primera advertencia: El ChatBot responde con un mensaje alertando sobre el intento indebido.
- Segunda advertencia: Se solicita autenticación adicional (ej. autenticación multifactor MFA).
- Intentos repetidos: Se bloquea automáticamente el acceso del usuario y se reporta a RRHH o al equipo de seguridad.
Ejemplo de respuesta del ChatBot
- "Lo sentimos, pero esta solicitud de información no está permitida. Este intento ha sido registrado."
- "Has excedido el límite de consultas sospechosas. Tu acceso ha sido bloqueado temporalmente."
Herramientas recomendadas
- CrowdStrike Falcon / SentinelOne – Para detección y respuesta ante incidentes.
- Fail2Ban – Para bloquear accesos sospechosos según reglas predefinidas.
- Suricata / Zeek – Para detectar ataques de exfiltración de datos.
Conclusiones: Beneficios de esta Configuración
Con esta arquitectura, garantizamos que el ChatBot de IA opera de forma segura dentro del entorno corporativo y quede blindado, minimizando cualquier riesgo de filtración de datos al exterior. Gracias a un diseño basado en segmentación de red, autenticación centralizada y reglas estrictas de firewall, creamos un entorno hermético y altamente controlado.
Principales Pilares de Seguridad
- Aislamiento Total: Sin acceso a internet, se eliminan posibles fugas de datos y ataques remotos.
- Red Segura y Segmentada: El acceso se restringe a usuarios internos autorizados, con permisos controlados por VLANs.
- Reglas de Firewall Rígidas: Se bloquea cualquier tráfico no esencial, garantizando que solo los servicios permitidos se comuniquen.
- Autenticación Centralizada: Integración con Active Directory, asegurando que solo personal autorizado interactúe con el ChatBot.
- Monitorización Continua: Registro detallado de todas las interacciones para detectar patrones sospechosos y prevenir incidentes.
Proteger un ChatBot de IA local no se trata solo de aislarlo de internet, sino de implementar una estrategia integral de seguridad que combine prevención, detección y respuesta proactiva.
La combinación de monitorización avanzada, políticas de prevención de fuga de datos (DLP) y mecanismos de respuesta automática permite que la IA funcione como un activo seguro dentro de la empresa. Al adoptar estas medidas, la organización puede aprovechar el potencial de la inteligencia artificial sin comprometer la confidencialidad ni la integridad de su información crítica.
Fin del Artículo. ¡Cuéntanos algo en los Comentarios!