Un lead malicioso contra todo el CRM: SalesBleed forzaba a Agentforce a revelar datos sin que nadie hiciera clic

Un lead malicioso contra todo el CRM: SalesBleed forzaba a Agentforce a revelar datos sin que nadie hiciera clic

Una instrucción ajena permaneció en Salesforce hasta que el propio empleado pidió a la IA procesar el registro.

image

Un formulario público para recopilar registros de clientes potenciales resultó suficiente para que una instrucción externa ingresara en Salesforce y obligara al agente de IA corporativo a extraer datos del CRM sin que ningún empleado hiciera un solo clic. Zenity Labs reveló la cadena SalesBleed compuesta por tres fallos de Agentforce, en la que un registro externo de Web-to-Lead se convertía en una inyección de prompts indirecta, y el agente de confianza continuaba el ataque ya dentro del entorno corporativo.

Al atacante le bastaba enviar un registro especialmente preparado a través de Web-to-Lead, el mecanismo estándar de Salesforce para recopilar solicitudes desde sitios públicos. La instrucción maliciosa se almacenaba en el CRM como un registro habitual y podía pasar desapercibida durante mucho tiempo. Cuando más tarde un empleado solicitaba a Agentforce procesar el registro reciente, el agente leía el texto inyectado como parte de la tarea y podía acceder a otros registros de Salesforce dentro de los permisos del usuario.

El primer fallo permitía eludir Trusted URLs, el mecanismo que debería bloquear enlaces e imágenes de dominios no fiables. La verificación procesaba de forma incorrecta algunas zonas de dominio y secuencias especiales de caracteres. Tras eludir el filtro, Agentforce pudo obtener información de las tablas Leads y Accounts, incorporarla en la dirección de una imagen y devolver la etiqueta HTML. Al cargar la imagen, el navegador enviaba una solicitud al servidor controlado por el atacante, por lo que los datos salían del CRM automáticamente. Ese escenario ilustra bien por qué el agente de IA con acceso a las API corporativas se convierte de hecho en un nuevo usuario privilegiado.

El comportamiento de las defensas fue especialmente revelador. Agentforce podía indicar al empleado que el contenido había sido bloqueado por las políticas de seguridad, aunque la solicitud con información sensible ya se hubiera enviado al exterior. Para la demostración, los especialistas utilizaron nombres de empresas, montos de operaciones y direcciones de correo electrónico, pero por el mismo procedimiento se podrían transmitir otros datos del CRM a los que el agente tuviera acceso.

La segunda variante de SalesBleed trasladaba la filtración a Slack. El mensajero descarga automáticamente los datos de los enlaces para generar una vista previa. Una dirección preparada específicamente obligaba a Slack a conectarse a la infraestructura del atacante tan pronto como el enlace aparecía en el mensaje. De nuevo, el usuario no necesitaba pulsar nada, y la información exfiltrada se transmitía junto con la solicitud de red.

El tercer fallo afectó a la acción Reply to a Slack Thread del conjunto estándar Slack Knowledge. Agentforce podía publicar mensajes en hilos de trabajo sin requerir una confirmación obligatoria y sin indicar de forma clara quién había iniciado el envío. En combinación con un registro infectado, esa cadena de confianza permitía a un atacante externo convertir al agente corporativo en una fuente de mensajes de phishing dentro de Slack.

El peligro aumentaba porque el registro malicioso permanecía en la tabla Leads. Cada nueva petición al mismo registro ofrecía a la instrucción inyectada otra oportunidad para ejecutarse. Salesforce recibió información sobre los fallos el 1 de junio. La corrección del bypass de Trusted URLs se confirmó el 19 de agosto, la atribución correcta de los mensajes en Slack se comprobó el 20 de agosto, y el 21 de septiembre el equipo confirmó la corrección de toda la cadena descrita. Ahora, las acciones peligrosas en Slack requieren por defecto la confirmación del usuario.

SalesBleed continúa la serie de incidentes en los que la interfaz promete control a la persona justo después de que el agente haya ejecutado una acción sensible. En septiembre se encontró un fallo similar en Kiro, donde los datos de trabajo podían enviarse al servidor del atacante incluso antes de que el usuario pulsara el botón de consentimiento.

Salesforce también se enfrenta a riesgos más tradicionales relacionados con las conexiones confiables. A finales de 2025, la compromisión de las integraciones de Gainsight creó una amenaza para los datos de numerosos clientes de Salesforce y volvió a mostrar el amplio radio de ataque que adquieren los componentes a los que el CRM permite acceder a la información corporativa.