OWASP про безпеку ШІ для LLM-додатків

Проєкт Open Web Application Security Project (OWASP) склав топ-10 загроз для LLM-додатків з метою підвищення обізнаності. Стаття надає систематичний огляд ризиків безпеки застосунків, цього разу у сфері генеративного ШІ. Хоча всі усвідомлюють деякі з ризиків, пов’язаних із LLM, мало хто має повну картину. Зазвичай люди або недооцінюють ризик (як правило, поспішаючи розгорнути нову функцію з підтримкою ШІ), або значно переоцінюють його і відхиляють все, що включає ШІ.

LLM стали обличчям сучасного ШІ-буму, але вони є лише однією маленькою категорією штучного інтелекту загалом. Вони також є лише одним компонентом усього, що називається LLM-додатком, тому перш ніж розглядати топ-10 ризиків, щоб зрозуміти ширшу картину безпеки, почнемо з уточнення термінології:

  • Велика мовна модель (LLM) – це по суті величезний шматок коду (іноді буквально один файл розміром у кілька гігабайтів), який приймає текстові інструкції та генерує результат. Внутрішньо LLM є складними багатошаровими нейронними мережами з мільярдами параметрів, які налаштовуються шляхом обробки величезної кількості навчальних даних. Найбільші моделі потребують стільки обчислювальної потужності, що лише кілька компаній мають можливість навчати їх та експлуатувати.
  • LLM-додаток – це будь-який програмний продукт, який надсилає дані до LLM та отримує результати від нього. Найочевиднішим прикладом є ChatGPT, який є чат-додатком, що взаємодіє з моделлю GPT. Функціональність на основі LLM вбудовується в усе – від бізнес програмного забезпечення до операційних систем і телефонів, тому значення терміну “LLM-додаток” швидко розширюється.

Небезпеки роботи з невідомим

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

  • LLM01: Ін’єкція промптів. LLM працюють з природною мовою, тому їхні інструкції завжди змішують команди та дані, що надаються користувачем, дозволяючи атаки, які безпосередньо або опосередковано змінюють системну підказку.
  • LLM03: Скомпрометованість навчальних даних. Налаштування внутрішніх параметрів LLM вимагає величезної кількості дійсних, дозволених та точних навчальних даних. Впроваджуючи користувацькі набори даних або змінюючи загальнодоступні дані, зловмисники можуть впливати на результати LLM.
  • LLM06: Розкриття конфіденційної інформації. Немає способу перевірити, що LLM не був навчений на конфіденційних даних. Якщо такі дані були включені, ніколи не можна бути повністю впевненим, що вони не будуть розкриті в деякому контексті, що потенційно призведе до порушення конфіденційності.

Надто велика довіра до LLM

Всі сміялися над деякими речами, які можуть продукувати ChatGPT та інші додатки з LLM, але найбільший його потенціал полягає в автоматизації — і це зовсім не смішно. Як тільки генеративні ШІ-джерела даних інтегруються через API та автоматизуються, сліпо довіряючи результатам і забуваючи про необхідність особливого догляду та уваги, відкривається ще три напрямки ризиків:

  • LLM02: Небезпечна обробка вихідних даних. Якщо результати LLM безпосередньо використовуються як вхідні дані для іншого додатка (включаючи інший LLM) і не очищаються, відповідна підказка може змусити LLM згенерувати атаку, яка потім виконується додатком. Це може посилити такі атаки як XSS, CSRF, SSRF та інші.
  • LLM08: Надмірна самостійність. Найновіші LLM можуть викликати зовнішні функції та взаємодіяти з іншими системами у відповідь на підказку. Якщо ця можливість не до кінця контролюється або контроль обходиться, LLM може виконувати ненавмисні дії, або самостійно, або під контролем зловмисника.
  • LLM09: Надто велика довіра. Деякі відповіді та пропозиції LLM можуть, на перший погляд, здаватися правильними, але можуть призвести до серйозних проблем, якщо використовуються дослівно або на них базуються подальші дії. Прикладами є прийняття неправильних рішень на основі хибної інформації або впровадження програмних помилок та вразливостей через прийняття неправильних або небезпечних пропозицій від ШІ-асистентів для коду.

Зловживання моделлю

Самі моделі також можуть бути мішенню. Будь-який додаток, заснований на LLM, залежить від того, щоб конкретна модель була робочою та відповідала, тому виведення цієї моделі з ладу вплине на будь-яке програмне забезпечення, яке на неї покладається. Часто надзвичайно дорогі для навчання та експлуатації, комерційні моделі також є цінною інтелектуальною власністю, що може зробити їх прямою ціллю для атак. Існують дві категорії ризиків для зловживання моделлю:

  • LLM04: Відмова в обслуговуванні моделі. Зловмисники можуть бомбардувати LLM послідовностями зловмисних запитів, щоб перевантажити модель або її інфраструктуру хостингу. Прикладами є надзвичайно довгі або навмисно складні підказки, а також аномально великі обсяги запитів.
  • LLM10: Крадіжка моделі. Окрім безпосереднього доступу до власних моделей та їх ексфільтрації, зловмисники можуть також намагатися витягнути внутрішні параметри моделі для створення аналогічної моделі. Велика кількість точно спрямованих (і необмежених) запитів та відповідей може також надати достатньо даних для навчання або вдосконалення копіювальної моделі.

Слабкі місця в реалізаціях та інтеграціях LLM

LLM створюються, навчаються, вдосконалюються та експлуатуються за допомогою складного ланцюга інструментів, часто включаючи інші моделі для тонкого налаштування, що робить їх ланцюг постачання ризиком безпеки, так само як і будь-який інший шматок програмного забезпечення (якщо не більше). Щоб вирішити нові випадки використання та допомогти інтегрувати LLM у все більше систем і додатків, також виникли цілі екосистеми плагінів і розширень з відкритим кодом та комерційних плагінів.

  • LLM05: Вразливості ланцюга постачання. Вразливий компонент може дозволити зловмисникам скомпрометувати систему LLM, наприклад, отримати доступ до підказок користувачів та даних облікових записів. Багато ШІ-проєктів використовують пакети з відкритим кодом на Python з реєстру PyPi, тому скомпрометовані, з бекдором або просто вразливі пакети з реєстру є серйозним ризиком.
  • LLM07: Небезпечний дизайн плагінів. Вразливості безпеки в плагінах та розширеннях LLM можуть відкрити нові шляхи атак. Такі атаки є поза контролем як розробників додатків, так і розробників LLM. Наприклад, плагін може не перевіряти вхідні дані запиту і таким чином дозволяти атаки, такі як SQL-ін’єкції, або навіть дозволяти зловмисникам отримати неавторизований доступ до бекенд-систем через віддалене виконання коду.

Розуміння ризиків генеративного ШІ

Додатки великих мовних моделей не є менш безпечними, ніж будь-яке інше програмне забезпечення, але вони мають додаткові застереження поверх типових міркувань безпеки застосунків, таких як контроль доступу або перевірка та очищення вхідних даних. Головний ризик полягає в тому, що LLM, як і інші типи генеративного ШІ, принципово відрізняються від більш традиційних джерел даних, і єдиний спосіб створити та використовувати їх безпечно — це завжди пам’ятати про це.

Часом можливості великих мовних моделей мають ціну прийняття того, що результати надходять з невідомості, яка ніколи не гарантовано, що працює так, як очікується, або генерує точно те, на що сподіваються. Таким чином, у певному сенсі, OWASP топ-10 для LLM-додатків є списком причин, чому не треба сліпо довіряти генеративному ШІ як джерелу даних.

Підписатися на новини