ШІ-помічники розробників можуть бути зламані через шкідливий код
Дослідники виявили вразливість у чат-боті GitLab Duo, який можна змусити вставляти шкідливий код та витікати конфіденційні дані
/sci314.com/images/news/cover/2860/2b58aaff361a81a8b70a2f88d4e80ae0.jpg)
Маркетологи рекламують інструменти розробки з підтримкою штучного інтелекту як незамінних помічників для сучасних програмістів. Платформа розробників GitLab, наприклад, стверджує, що її чат-бот Duo може миттєво створювати списки завдань, що усуває необхідність переглядати тижні комітів. Однак ці компанії не повідомляють, що такі інструменти за своєю природою легко можуть бути обмануті зловмисниками для виконання ворожих дій проти своїх користувачів.
Дослідники з компанії кібербезпеки Legit продемонстрували атаку, яка змусила Duo вставити шкідливий код у скрипт, який йому було доручено написати. Атака також може призвести до витоку приватного коду та конфіденційних даних про проблеми, таких як деталі вразливостей нульового дня. Все, що потрібно, це щоб користувач доручив чат-боту взаємодіяти з запитом на злиття або подібним контентом із зовнішнього джерела.
Механізмом для запуску атак є ін'єкції підказок. Серед найпоширеніших форм експлойтів чат-ботів ін'єкції підказок вбудовуються в контент, з яким чат-боту пропонується працювати, наприклад електронний лист для відповіді, календар для консультації або веб-сторінку для резюмування. Помічники на основі великих мовних моделей настільки прагнуть виконувати інструкції, що приймають накази практично звідусіль, включаючи джерела, які можуть контролюватися зловмисниками.
Атаки на Duo надходили з різних ресурсів, які зазвичай використовуються розробниками. Прикладами є запити на злиття, коміти, описи помилок та коментарі, а також вихідний код. Дослідники продемонстрували, як інструкції, вбудовані в ці джерела, можуть збити Duo з правильного шляху.
Дослідник Legit Омер Майраз написав, що ця вразливість підкреслює двосічну природу помічників штучного інтелекту, таких як GitLab Duo. Коли вони глибоко інтегровані в робочі процеси розробки, вони успадковують не лише контекст, але й ризик. Вбудовуючи приховані інструкції в нешкідливий на вигляд контент проекту, дослідники змогли маніпулювати поведінкою Duo, витягувати приватний вихідний код та продемонструвати, як відповіді штучного інтелекту можуть використовуватися для непередбачених та шкідливих результатів.
В одному з варіантів атаки Майраз приховав наступну інструкцію в іншому легітимному фрагменті вихідного коду. Коли Duo було доручено перевірити вихідний код та описати, як він працює, вихідні дані включали шкідливе посилання в іншому нешкідливому описі. Для додання прихованості шкідлива адреса, додана до вихідного коду, була написана з використанням невидимих символів Unicode, формату, який легко розуміється великими мовними моделями та невидимий для людського ока.
Шкідливі адреси, виведені у відповіді, мають клікабельну форму, що означає, що користувачеві потрібно лише клікнути по одній з них, щоб потрапити на шкідливий сайт. Атака використовує мову розмітки markdown, яка дозволяє веб-сайтам відображати звичайний текст у зручних для роботи способах. Серед іншого markdown дозволяє користувачам додавати елементи форматування, такі як заголовки, списки та посилання, без необхідності використання тегів HTML.
Атака також може працювати за допомогою HTML-тегів img та form. Це тому, що Duo аналізує markdown асинхронно, тобто починає відображати вихідні дані рядок за рядком у реальному часі, а не чекає, поки вся відповідь буде завершена, і надсилає все одразу. В результаті HTML-теги, які зазвичай видаляються з відповіді, розглядаються як активний веб-вихід у відповідях Duo. Здатність змушувати відповіді Duo діяти на активному HTML відкрила нові шляхи атак.
Наприклад, зловмисник може вбудувати інструкцію у вихідний код або запит на злиття для витоку конфіденційних ресурсів, доступних цільовому користувачеві та за розширенням чат-боту Duo, який використовується, але які в іншому випадку залишаються приватними. Оскільки Duo має доступ саме до тих самих ресурсів, які доступні особі, яка його використовує, інструкція отримає доступ до приватних даних, перетворить їх у код base64 та додасть всередину тегу GET-запиту, надісланого на веб-сайт, контрольований користувачем. Base64 потім з'явиться в журналах веб-сайту.
Ця техніка дозволила Майразу витягувати як вихідний код з приватних репозиторіїв, так і з будь-яких конфіденційних звітів про вразливості, до яких Duo може мати доступ.
Legit повідомила про таку поведінку GitLab, яка відповіла видаленням можливості Duo відображати небезпечні теги, такі як img та form, коли вони вказують на домени, відмінні від gitlab.com. В результаті експлойти, продемонстровані в дослідженні, більше не працюють. Цей підхід є одним з найпоширеніших способів, якими постачальники чат-ботів штучного інтелекту відповідали на подібні атаки. Замість пошуку ефективного засобу зупинки великих мовних моделей від виконання інструкцій, включених у недовірений контент, що поки що нікому не вдалося зробити, GitLab пом'якшує шкоду, яка може виникнути внаслідок такої поведінки.
Це означає, що помічники розробників коду не пропонують зовсім такої вражаючої продуктивності, яку обіцяють маркетологи. Розробники повинні ретельно перевіряти код та інші результати, створені цими помічниками, на предмет ознак зловмисності.
Майраз написав, що ширший висновок зрозумілий: помічники штучного інтелекту тепер є частиною поверхні атаки вашого додатка. Будь-яка система, яка дозволяє великим мовним моделям поглинати контент, контрольований користувачем, повинна розглядати цей вхід як недовірений та потенційно шкідливий. Контекстно-обізнаний штучний інтелект є потужним, але без належних запобіжних заходів він може так само легко стати точкою експозиції.
Дослідження підкреслює важливість обережного підходу до впровадження інструментів штучного інтелекту в критично важливі робочі процеси розробки. Хоча ці технології обіцяють значне підвищення продуктивності, вони також вносять нові вектори атак, які раніше не існували. Компанії, які розробляють та впроваджують такі інструменти, повинні інвестувати в надійні заходи безпеки та постійно оновлювати свої системи захисту у відповідь на нові загрози.
Випадок з GitLab Duo демонструє, як швидко можуть з'являтися та експлуатуватися вразливості в системах штучного інтелекту. Це також показує важливість співпраці між дослідниками безпеки та розробниками технологій для виявлення та усунення таких проблем до того, як вони будуть використані зловмисниками у реальному світі.
Схожі новини
- Штучний інтелект створив карту людських переконань22.06.2025, 18:26
- ШІ допомогло виявити 35 кліматичних явищ що регулюють температуру21.06.2025, 21:27
- DDoS-атака рекордної потужності 7,3 Тбіт/с зафіксована Cloudflare21.06.2025, 10:27
- Жінку відхилили на роботу через використання ChatGPT21.06.2025, 07:23
- Ілон Маск намагається змусити ШІ Grok поширювати дезінформацію19.06.2025, 23:54