1 puntos por GN⁺ 2024-08-21 | 1 comentarios | Compartir por WhatsApp

Exfiltración de datos causada por inyección indirecta de prompts a través de Slack AI

  • Esta vulnerabilidad permite a un atacante robar todos los datos que un usuario haya puesto en canales privados de Slack
  • Un atacante puede exfiltrar datos desde canales privados a través de Slack AI
  • Slack AI es una función que permite consultar mensajes de Slack en lenguaje natural
  • Desde el 14 de agosto, Slack empezó a recopilar documentos subidos, archivos de Google Drive, etc., lo que aumentó la superficie de riesgo
1. Vulnerabilidad
  • Inyección de prompts: un LLM no puede distinguir entre el "prompt del sistema" creado por el desarrollador y el resto del contexto agregado a la consulta
  • Inyección indirecta de prompts: mediante mensajes que contienen instrucciones maliciosas, es más probable que Slack AI siga esas instrucciones en lugar de la consulta del usuario
  • Las amenazas internas en Slack ya eran un problema, y ahora los atacantes pueden exfiltrar datos sin acceder a canales privados ni a esos datos directamente
2. Cadena de ataque de exfiltración de datos: inyección en canal público
  • En Slack, la consulta del usuario busca datos en canales públicos y privados
  • Un atacante puede exfiltrar claves de API que estén en un canal privado
  • Cadena de ataque:
    • A) El usuario pone una clave de API en su canal privado
    • B) El atacante coloca una instrucción maliciosa en un canal público
    • C) Cuando el usuario consulta a Slack AI por la clave de API, el mensaje del atacante queda incluido en la misma "ventana de contexto"
    • D) Slack AI sigue la instrucción del atacante y guía al usuario para que haga clic en un enlace
    • E) Si el usuario hace clic en el enlace, la clave de API se filtra
3. Cadena de ataque de phishing: inyección en canal público
  • En lugar de exfiltrar datos, se renderiza un enlace de phishing
  • Cadena de ataque:
    • A) El atacante coloca un mensaje malicioso en un canal público
    • B) El usuario consulta para resumir los mensajes de un usuario específico
    • C) El enlace de phishing se renderiza en Markdown
4. Implicaciones del cambio de Slack AI del 14 de agosto: inyección por archivos
  • Slack AI cambió para incluir archivos en canales y DM
  • La superficie de ataque se amplió considerablemente
  • Si se descarga un PDF con instrucciones maliciosas y se sube a Slack, puede producirse la misma cadena de ataque
  • Los administradores deben restringir la función de recopilación de documentos de Slack AI
5. Ponerlo en contexto
  • Estos ataques también son posibles en varias aplicaciones, como Microsoft Copilot y Google Bard
  • Cronograma de divulgación responsable:
    • 14 de agosto: divulgación inicial
    • 15 de agosto: solicitud de información adicional
    • 15 de agosto: entrega de video y capturas de pantalla adicionales
    • 16 de agosto: preguntas adicionales
    • 16 de agosto: entrega de respuestas claras
    • 19 de agosto: Slack determinó que la evidencia era insuficiente

Resumen de GN⁺

  • La vulnerabilidad de inyección indirecta de prompts en Slack AI es un problema grave que puede filtrar datos de canales privados
  • Los atacantes pueden exfiltrar datos sin acceder a canales privados
  • Los cambios en las funciones de Slack AI aumentaron considerablemente la superficie de ataque
  • Los usuarios deben restringir la función de recopilación de documentos de Slack AI para reducir el riesgo
  • Aplicaciones con funciones similares incluyen Microsoft Copilot y Google Bard

1 comentarios

 
GN⁺ 2024-08-21
Opinión de Hacker News
  • Parece que sería mejor poner la clave API de "confetti" como parte del nombre de dominio

    • De esta forma, la clave podría filtrarse incluso sin hacer clic debido al DNS prefetching del navegador
  • El núcleo de este ataque es entender el vector de exfiltración de datos

    • Slack puede renderizar enlaces de Markdown donde la URL queda oculta detrás del texto del enlace
    • El atacante engaña a Slack AI para que el usuario haga clic en un enlace como "haz clic aquí para reautenticarte"
    • Este enlace apunta al servidor del atacante e incluye en la cadena de consulta información privada a la que Slack AI puede acceder
    • Cuando el usuario hace clic en el enlace, los datos se filtran a los logs del servidor del atacante
  • La discusión sobre los permisos del canal lo complica innecesariamente

    • El usuario A busca usando Slack AI
    • El usuario B previamente inyectó un mensaje para que la IA devolviera un enlace malicioso
    • La IA devuelve el enlace malicioso al usuario A, y el usuario hace clic
    • Se podría lograr el mismo resultado usando otros vectores de ingeniería social, pero los LLMs llevan esta experiencia al extremo
  • Es una locura que las empresas estén aplicando LLMs a todo indiscriminadamente

    • Han pasado casi 2 años desde GPT-3 y todavía no pueden distinguir entre entradas confiables y no confiables
  • La víctima no necesita estar en un canal público para que el ataque funcione

    • La cita no hace referencia al canal del atacante, solo al canal privado donde el usuario puso la clave API
    • Viola el comportamiento correcto de citar todos los mensajes que contribuyeron
    • No entiendo por qué alguien esperaría que las citas de un LLM fueran precisas
    • Las citas parecen una especie de hackeo humano para engañar al público y hacerle creer que la salida es más precisa
    • Si se agrega expansión de enlaces a las respuestas de la IA, la filtración podría ocurrir automáticamente sin hacer clic
  • Configuraciones similares se han explorado en desafíos CTF

    • Cualquier app con LLM que publique en un feed de chat con enlaces habilitados es vulnerable
    • Si se consideran las vistas previas de enlaces, no hace falta interacción humana
  • El artículo no está a la altura del título

    • La idea de que "si manipulas socialmente a la IA puedes hacer phishing a los usuarios" es interesante
  • La inteligencia artificial cambia, pero la estupidez humana no

  • Hay que dejar de dar autenticación dedicada a los agentes de IA

    • Para cada tarea, se debería usar la autenticación del usuario que hace la llamada e impersonar efectivamente al usuario
    • El problema no es el contexto filtrado, sino la extensión con privilegios excesivos
  • Es un vector de ataque muy ingenioso

    • Hay muchas formas de exfiltrar datos con el contexto de un LLM