https://blue41.com/blog/how-we-helped-bunq-secure-their-financial-ai-assistant/Суть проблемыБанковские ИИ-ассистенты получают контекст из транзакций, документов, сообщений и других источников. Когда пользователь спрашивает «покажи последние транзакции», ассистент тянет данные и передаёт их в LLM. Проблема в том, что описание транзакции задаётся третьей стороной — и модель может воспринять его как инструкцию, а не как данные. Это и есть indirect prompt injection: вредоносные инструкции спрятаны не во вводе пользователя, а во внешних данных.
Сценарий атаки1. Атакующий переводит жертве €0.02, вписывая в поле описания инжекционный payload.
2. Жертва открывает приложение и задаёт рутинный вопрос — ассистент сам подтягивает транзакцию с payload.
3. LLM обрабатывает инструкции из описания и генерирует — внутри банковского приложения, от имени банка — правдоподобное сообщение с запросом повторной аутентификации.
Атака не требует доступа к устройству, малвари или социальной инженерии.
Почему это опасно для банков- Поле описания транзакции никогда не проектировалось как доверенная граница инструкций.
- Атака дешева и правдоподобна: сообщение приходит от «настоящего» банка с реальным контекстом аккаунта.
- Чем больше возможностей у ассистента — тем шире поверхность атаки.
Почему гарлейлы недостаточныУ Bunq уже были фильтры. Payload не содержал классических паттернов вроде «игнорируй предыдущие инструкции» и был замаскирован под обычные данные. Риск возникает не из самого текста, а из взаимодействия между данными, логикой retrieval, поведением модели и контекстом приложения.
Эффективная защита — 4 уровня1. Минимизируй контекст: не передавай ассистенту поля, которые не нужны для задачи.
2. Обращайся с retrieval-данными как с недоверенными: описания транзакций — данные, не инструкции.
3. Ограничь чувствительные выводы: ассистент не должен генерировать ссылки, запрашивать учётные данные или инициировать операции без дополнительного контроля.
4. Мониторь поведение в runtime: отслеживай, к каким данным обратился ассистент, какие ответы сгенерировал, какие инструменты вызвал — и детектируй отклонения от нормального профиля.
ВыводПеревод в €0.02 обнажил архитектурную проблему: недоверенные данные могут влиять на поведение ассистента. Prompt injection — это не только проблема модели, но и проблема безопасности приложений, потоков данных и runtime-мониторинга.