З упровадженням штучного інтелекту у повсякденні бізнес-процеси виникають нові вектори атак, які раніше вважалися теоретичними. Дослідник безпеки Хокон Молой (Håkon Måløy) оприлюднив деталі критичної техніки атаки на асистента Microsoft 365 Copilot у текстовому процесорі Word. Виявлений метод дозволяє за допомогою спеціально сформованих прихованих інструкцій маніпулювати поведінкою штучного інтелекту під час генерації документів, а також змушувати його непомітно копіювати ці зловмисні інструкції у новостворені файли. Це створює загрозу розповсюдження шкідливих промптів за принципом хробака.

Суть атаки полягає в експлуатації так званого непрямого впровадження інструкцій (indirect prompt injection). Коли користувач просить Microsoft Copilot проаналізувати або використати сторонній документ Word як джерело (контекст) для створення нового звіту, ШІ сканує весь текст файлу. Якщо у цьому тексті містяться приховані вказівки (наприклад, написані білим шрифтом на білому фоні, або заховані у метаданих чи дрібних елементах стилів), нейромережа сприймає їх як прямі накази розробника або поточного користувача.

У межах практичної демонстрації концепту (Proof of Concept) було доведено, що такі приховані інструкції можуть змусити Microsoft Copilot повністю переписати цифри або ключові висновки у фінансовому звіті. Проте найбільш тривожним аспектом дослідження є здатність моделі дублювати зловмисний промпт у вихідний файл. Коли Microsoft Copilot генерує новий документ на базі скомпрометованого джерела, він інтегрує інструкції атакуючого у фінальний текст. Якщо цей новий документ згодом буде використаний іншим співробітником компанії як основа для наступної сесії генерації, цикл повториться, що запускає ланцюгову реакцію поширення шкідливого коду.

Для успішної реалізації атаки зловмиснику не потрібно зламувати поштову скриньку або хмарне сховище жертви — достатньо надіслати Word-документ з прихованими промптами електронною поштою під виглядом резюме, комерційної пропозиції чи інструкції. Як тільки користувач спробує обробити цей файл через корпоративний Microsoft 365 Copilot (наприклад, попросить скласти резюме або порівняльний аналіз), його персональний асистент опиниться под повним контролем закладених інструкцій. Це може призвести до непомітної витоку конфіденційних даних через автоматично згенеровані веб-запити.

Це дослідження демонструє фундаментальну проблему архітектури сучасних великих мовних моделей (LLM): відсутність чіткої межі між керуючими інструкціями (системи/користувача) та вхідними даними, які модель обробляє. Оскільки Microsoft Copilot аналізує документ як єдиний потік токенів, він не здатний самостійно відрізнити легітимний інформаційний вміст від прихованих директив хакерів. Впровадження подібних асистентів у бізнес-середовище без додаткових фільтрів безпеки створює серйозну загрозу цілісності та конфіденційності даних корпоративного рівня.

Що це означає на практиці

Для зниження ризиків від непрямого впровадження інструкцій у системах штучного інтелекту, пентест-команда рекомендує вжити таких практичних кроків:

  • Критичний аудит генерованого контенту: Співробітники повинні усвідомлювати, що вихідні дані Microsoft Copilot або будь-якого іншого ШІ-помічника не можна використовувати без ретельної ручної перевірки. Фінансові показники, контракти та технічні звіти, згенеровані на основі зовнішніх документів, обов'язково мають звірятися з першоджерелами для виявлення потенційних маніпуляцій.
  • Заборона використання сторонніх неперевірених файлів як контексту: Обмежте практику безпосереднього завантаження у Microsoft Copilot документів Word, PDF або Excel від невідомих зовнішніх відправників. Якщо необхідно проаналізувати отриманий файл, спочатку конвертуйте його у звичайний текстовий формат (TXT), де всі приховані стилі, білі шрифти та метадані стануть явними і легко помітними під час швидкого перегляду.
  • Впровадження контентної фільтрації на рівні проксі та пошти: Налаштуйте системи захисту електронної пошти (Secure Email Gateway) та антивірусні рішення на сканування вхідних офісних файлів на наявність підозрілих текстових конструкцій. Пошукові шаблони можуть містити системні промпт-фрагменти на кшталт "ignore previous instructions", "instead of", "rewrite the output" тощо, які часто використовуються у сценаріях Jailbreak та Prompt Injection.
  • Оновлення та налаштування політик безпеки LLM-додатків: Якщо ваша компанія розробляє або інтегрує власні рішення на базі LLM за допомогою API, переконайтеся, що системний промпт (System Prompt) містить суворі інструкції щодо ігнорування будь-яких наказів, які містяться у користувацьких даних. Також слід розділяти обробку даних на окремі етапи із застосуванням валідаційних моделей-фільтрів перед виведенням результату кінцевому користувачу.