CodeWithLLM-Updates
-

https://www.pillar.security/blog/new-vulnerability-in-github-copilot-and-cursor-how-hackers-can-weaponize-code-agents

Як можна атакувати автоматичні генератори коду?
Отруюючи системні інструкції (“Rules File Backdoor”) LLM.

У багатьох програмах ШІ-кодінгу зараз є можливість підвантажувати їх з текстового файлу (наприклад, у Cursor це .cursorrules чи тека правил у корені проекту) - просто текстовий файл(и).

Гадаю, лише малодосвідчені програмісти або ті, хто не знайомий, як працюють нові IDE з агентними кодерами, запустять чужий код, не прочитавши перед цим файл інструкцій якщо він там є.

Наступний варіант, це коли ми створюємо проєкт і копіюємо таку інструкцію самі з відкритих каталогів, на кшталт cursor.directory - знову ж таки, треба розуміти, що ти робиш, і читати перед цим.


Але дослідники Pillar Security виявили, що зловмисники можуть використовувати приховані юнікод-символи та інші техніки обходу в текстових файлах правил, щоб обдурити агент-асистентів (наприклад, в Cursor або GitHub Copilot) і змусити їх генерувати код з бекдорами або вразливостями (наприклад, до головної сторінки сайту підвантажувати зовнішній javascript хакера).

Як це працює?

"На відміну від традиційних атак впровадження коду, націлених на конкретні вразливості, “Rules File Backdoor” являє собою значний ризик, оскільки перетворює сам AI на вектор атаки."

Найбільш вразливі до такої атаки ті, хто мало думає, коли створює код - не читає файли інструкцій, не перевіряє все, що було згенеровано. Публікує код чи деплоїть проекти без попереднього аудиту на безпеку.

Теоретично агентні IDE повинні бути відповідальні хоча б за перевірку файлів правил та коментарів коду на вставлені невидимі інструкції, але, судячи зі статті, розробники Cursor та GitHub Copilot сказали, що це користувачі самі (!) відповідальні за код, який вони генерують.