Una tarde de junio, una IA estaba revisando para mí unos cambios en un sitio web. Para eso quería arrancar un momento un servidor de pruebas local – trabajo de rutina. Para que no apareciera parpadeando ninguna ventana de consola, eligió la que a sus ojos era la variante pulcra: arrancar el servidor como proceso con ventana oculta, mediante script.
Segundos después saltó Microsoft Defender. Clasificación: troyano, gravedad «grave». Justificación, textual: «Este programa es peligroso. Ejecuta comandos de un atacante». El proceso fue eliminado y la tarea de la IA fracasó – desde su perspectiva, sin dejar rastro: comando enviado, nada volvió. Y en mi pantalla quedó una alerta de virus, provocada por mi propia herramienta.
[BILD: captura de pantalla del aviso de Defender (amenaza eliminada, gravedad grave), si se puede reconstruir del historial. Ruta de destino /images/articles/defender-falle/.]
No fue una falsa alarma en sentido estricto
Lo fascinante de este incidente: el antivirus no desvarió. Hizo justo aquello para lo que existe.
El software de protección moderno no reconoce los programas maliciosos solo por firmas conocidas, sino por su comportamiento. Y el comportamiento en este caso – un entorno de scripts, iniciado con directivas relajadas, crea un subproceso invisible – es sencillamente el ejemplo de manual de un programa malicioso que descarga a escondidas sus herramientas. Exactamente así se vería si un atacante real quisiera afianzarse en mi ordenador. El nombre interno de la detección lo decía con toda claridad: algo así como «PowerShell, ejecución oculta de subproceso».
La IA no tramaba nada malo. Pero la intención no está en la memoria del proceso. Una heurística evalúa qué ocurre, no para qué – y según todo lo observable, este comportamiento era indistinguible de un ataque. El aviso de que «ejecuta comandos de un atacante», por cierto, no iba ni siquiera tan desencaminado: el proceso ejecutaba de verdad los comandos de un tercero. Solo que ese tercero trabajaba por encargo mío.
Por qué las IA caen en estos patrones
Una IA elige sus medios según la conveniencia práctica: ¿molesta la ventana? Se oculta la ventana. Y eso que sabe mucho sobre técnicas de software malicioso – pero en el fragor de una tarea concreta optimiza para que «funcione», no hacia «le parece de fiar a un guardián». Las personas con experiencia en sistemas llevan incorporada esa segunda comprobación; saben qué trucos se evitan, no porque no funcionen, sino porque son sospechosos.
La solución fue, en consecuencia, poco espectacular: la vía de la ventana oculta quedó descartada. Desde entonces, la IA usa la función visible que su propio entorno de herramientas prevé para dejar procesos en segundo plano – mismo efecto, ninguna alarma, y en esa misma sesión funcionó de inmediato y sin problemas. Y el incidente figura como regla en sus notas: nada de procesos ocultos, nada de artimañas – tomar las vías oficiales. Es la misma actitud de fondo que la de nuestras salvaguardas para agentes: un rodeo que parece un ataque no es un buen rodeo.
Qué puedes llevarte de esto
Primero, lo tranquilizador: si tu antivirus salta con scripts o programas generados por IA, eso no significa automáticamente que la IA te haya colado algo malicioso. La detección por comportamiento señala patrones – y el código de IA cae de vez en cuando en patrones sospechosos, porque está construido por conveniencia, no por convención.
Segundo, el jarro de agua fría: de eso no puedes fiarte. El mismo aviso podría ser real la próxima vez. El código generado por IA merece revisión antes de ejecutarse – precisamente porque la intención no se le ve desde fuera. El antivirus se queda encendido, sus avisos se leen en vez de cerrarse con un clic, y en caso de duda: primero entender qué se estaba ejecutando, después dar el visto bueno. El guardián que tomó a mi IA por un ladrón hizo su trabajo. Exactamente esa clase de guardianes quiero conservar.
/compact – lo esencial cuando el contexto escasea:
Una IA arrancó un servidor de pruebas local como proceso con ventana oculta – Microsoft Defender lo clasificó como troyano y eliminó el proceso. No fue una falsa alarma en sentido estricto: la detección por comportamiento evalúa qué ocurre, no para qué, y un subproceso invisible es el ejemplo de manual de un programa malicioso – el código de IA cae de vez en cuando en patrones sospechosos porque está construido por conveniencia, no por convención. La consecuencia: nada de procesos ocultos ni artimañas, sino las vías oficiales y visibles – y como el mismo aviso podría ser real la próxima vez, el código generado por IA merece revisión antes de ejecutarse.