
Зміст статті
- Коротко
- Що перевіряють: таблиця
- Prompt injection: пряма і непряма
- Витік даних через RAG і базу знань
- Надмірні повноваження AI-агента
- Прихований контекст і системний промпт
- Небезпечна обробка відповідей моделі
- Вхід, ролі й ізоляція клієнтів навколо LLM
- Витрати і відмова в обслуговуванні
- Що зазвичай не входить у пентест AI застосунку
- Що надає замовник
- Що ви отримаєте в результаті
- Чекліст перед пентестом AI застосунку
- FAQ
- Посилання
Під час пентесту AI застосунку перевіряють, чи можна змусити чат-бота, RAG-пошук або AI-агента зробити те, чого не задумав розробник: виконати чужі інструкції (prompt injection), показати документи іншого клієнта, викликати інструмент без потрібних прав, видати прихований системний промпт чи спалити бюджет на запити. Основою є OWASP Top 10 for LLM Applications 2026 (перелік десяти головних ризиків для застосунків на великих мовних моделях, серпень 2026 року), а вхід, ролі й API навколо моделі тестують як звичайний вебзастосунок. [1] [7]
Пентест AI застосунку означає ручну перевірку всієї системи навколо моделі: інтерфейсу чату, бази знань, інструментів агента, API і прав доступу. Саму модель OpenAI, Anthropic чи Google ніхто не «зламує»: перевіряють, що ваш застосунок дозволяє їй бачити і робити. Нижче таблиця ризиків, пояснення до кожного, що надати виконавцю і що ви отримаєте. Загальний формат роботи описано на сторінці пентест.
Коротко
- Актуальна редакція списку OWASP для LLM вийшла в серпні 2026 року і замінила редакцію 2025 року. Попросіть виконавця назвати версію, за якою він працює. [1] [2] [3]
- Prompt injection лишається ризиком номер один, і OWASP прямо пише, що надійного способу її повністю запобігти сьогодні немає. Тому тест перевіряє не лише фільтри, а й що станеться, коли фільтр обійдуть. [1]
- Найбільше в редакції 2026 року піднялися надмірні повноваження агента: з шостого на третє місце. Чим більше інструментів і прав у моделі, тим дорожча помилка. [1]
- Від замовника потрібні тестові акаунти для кожної ролі, опис інструментів агента, тестові документи для бази знань і ліміт витрат на тест.
- Результат: звіт із відтвореними сценаріями атак, впливом на бізнес і порядком виправлень, а після виправлень ретест, якщо він погоджений.
Що перевіряють: таблиця
| Що перевіряють | Приклад ризику | Навіщо бізнесу |
|---|---|---|
| Пряма prompt injection (LLM01) | Користувач пише боту «забудь правила» і отримує знижку, якої не існує, або відповідь від імені компанії, яку не можна публікувати | Бот не дає обіцянок і не робить дій поза своєю роллю |
| Непряма prompt injection (LLM01) | У резюме, листі чи сторінці сайту сховано інструкцію, і агент, читаючи документ, пересилає дані на чужу адресу | Чужий текст, який читає модель, не керує вашою системою |
| Витік даних через RAG (LLM02, LLM09) | На запитання клієнта A пошук підтягує договір клієнта B, бо база знань спільна і без перевірки прав | Модель бачить лише ті документи, які дозволено бачити цьому користувачу |
| Надмірні повноваження агента (LLM03) | Бот підтримки має доступ до функції «повернути гроші» без ліміту і підтвердження людиною | Помилка або обман моделі не стає реальною дією з грошима чи даними |
| Прихований контекст і системний промпт (LLM08) | У системному промпті лежать ключ API, внутрішні правила знижок або перелік інструментів, і бот їх переказує | Розкриття промпту нічого не дає зловмиснику |
| Небезпечна обробка відповіді (LLM10) | Відповідь моделі вставляється на сторінку як код, і в браузері співробітника виконується скрипт | Те, що згенерувала модель, не виконується без перевірки |
| Вхід, ролі й ізоляція клієнтів | Зміна номера розмови в запиті до API показує чужу переписку з ботом | Один клієнт не бачить даних іншого, як і в будь-якому SaaS |
| Витрати і відмова (LLM06) | Без лімітів один акаунт запускає тисячі довгих запитів, і рахунок за модель зростає в рази | Немає раптового рахунку і недоступного сервісу |
Номери в дужках відповідають редакції OWASP 2026 року. Останній рядок про ролі в самому списку для LLM не стоїть, його перевіряють за OWASP API Security Top 10, але в AI застосунках саме там часто ховається найпростіший витік. [7]
Prompt injection: пряма і непряма
Prompt injection означає ситуацію, коли текст, який читає модель, змінює її поведінку всупереч задуму розробника. Пряму ін’єкцію пише сам користувач у чаті. Непряма приходить через вміст, який модель читає за завданням: вебсторінку, лист, документ, відповідь інструмента, фрагмент із бази знань. OWASP окремо наголошує, що інструкції можуть бути невидимими для людини: сховані в символах Unicode, у зображенні чи аудіо. [1]
Тестувальник пробує обидва шляхи. Для прямого він перевіряє, чи можна вивести бота за межі ролі, змусити його розкрити внутрішні дані чи викликати інструмент. Для непрямого кладе підготовлені документи туди, звідки модель їх прочитає: у базу знань, пошту, тікет підтримки. Головне питання не «чи обійшли фільтр», а «що сталося після цього». OWASP радить будувати систему так, ніби обхід колись станеться, і обмежувати, що модель може зробити і куди можуть потрапити її відповіді. [1]
Витік даних через RAG і базу знань
RAG (Retrieval-Augmented Generation) означає, що перед відповіддю застосунок шукає у ваших документах потрібні фрагменти і додає їх у запит до моделі. Модель не знає, кому який документ можна показувати. Якщо пошук не фільтрує результати за правами користувача, вона спокійно перекаже чужий договір, зарплати чи листування.
Тестувальник під двома акаунтами різних клієнтів чи відділів перевіряє, чи можна дістати документи іншого, прямим питанням чи обхідним формулюванням. Окремо дивляться, чи можна підкласти в базу знань документ з інструкціями, який потім прочитають інші користувачі. OWASP описує слабкості векторних баз і пошуку окремим пунктом LLM09, а витік чутливих даних пунктом LLM02. [1]
Надмірні повноваження AI-агента
AI-агент означає модель, яка не лише відповідає, а й викликає інструменти: шукає в CRM, створює тікети, надсилає листи, запускає код. OWASP називає три корені проблеми: зайві функції, зайві права і зайва самостійність без підтвердження людиною. [1]
Тут тестувальник складає перелік усіх інструментів агента і для кожного питає: чи потрібен він, з якими правами він працює (користувача чи сервісного акаунта з повним доступом), чи можна через нього дістатися даних іншого клієнта, чи є підтвердження для дій із грошима і видаленням. Потім пробує змусити агента виконати ці дії через ін’єкцію. Якщо агент має довготривалу пам’ять і діє сам, OWASP радить додатково звірятися з окремим списком OWASP Top 10 for Agentic Applications, опублікованим у грудні 2025 року. [1] [4]
Прихований контекст і системний промпт
Системний промпт (прихована інструкція, яку застосунок дає моделі перед розмовою) майже завжди можна витягти. У редакції 2026 року OWASP перейменував пункт System Prompt Leakage на Hidden Context Exposure (LLM08) і розширив його: до прихованого контексту належать також описи інструментів і правила, підтягнуті з бази знань. [1]
Тестувальник перевіряє не сам факт витоку, а що саме витікає. Ключі API, паролі, рядки підключення до бази чи логіка доступу в промпті означають серйозну знахідку. OWASP формулює правило просто: виходьте з того, що прихований контекст побачать, не кладіть туди секретів і не покладайтеся на нього як на захист. [1]
Небезпечна обробка відповідей моделі
Відповідь моделі слід вважати таким самим неперевіреним вводом, як текст від анонімного користувача. Якщо застосунок вставляє її на сторінку як HTML, підставляє в запит до бази даних, у команду сервера чи в адресу запиту, ін’єкція в модель перетворюється на класичну вразливість вебзастосунку. У редакції 2026 року цей пункт (LLM10) охоплює і небезпечний код, який генерують AI-асистенти. [1]
Тестувальник змушує модель згенерувати шкідливий вміст і дивиться, де він опиняється: в інтерфейсі оператора, в журналах, в адмінпанелі, у листі клієнту.
Вхід, ролі й ізоляція клієнтів навколо LLM
Чат-бот зазвичай має звичайний бекенд: API розмов, історію, завантаження файлів, адмінпанель із налаштуваннями промптів. Тут працюють ті самі ризики, що й у будь-якому вебзастосунку: доступ до чужих об’єктів за номером, дії не за роллю, слабкі сесії. [7] Для SaaS з кількома клієнтами на одній платформі головне питання: чи ізольовані дані, історія розмов і база знань одного клієнта від іншого. Детальніше про перевірку API у статті як перевіряють безпеку сайту і API, а про багатоклієнтські продукти в статті пентест для SaaS-стартапу.
Витрати і відмова в обслуговуванні
Кожен запит до моделі коштує грошей. OWASP описує пункт Unbounded Consumption (LLM06) як ризик відмови сервісу, неконтрольованих витрат і копіювання моделі через масові запити, і зазначає, що звичайного обмеження кількості запитів уже недостатньо: потрібні ліміти на токени, жорсткі стелі витрат і автоматичні запобіжники для агентів. [1] У редакції 2026 року цей пункт піднявся на чотири позиції.
Тестувальник перевіряє ліміти на акаунт і на сесію, довжину вхідних даних, розмір файлів, цикли викликів інструментів. Навантажувальні атаки на робочу систему не проводять без окремої згоди: зазвичай достатньо показати, що ліміту немає, і порахувати можливу ціну.
Що зазвичай не входить у пентест AI застосунку
- Сама модель провайдера (OpenAI, Anthropic, Google тощо) і його інфраструктура: їх тестують лише в межах правил самого провайдера.
- Навчання власної моделі на отруєних даних (LLM05) і ланцюг постачання моделей (LLM04), якщо ви не тренуєте і не донавчаєте модель самі. Це окремий аудит процесу.
- Оцінка якості відповідей, упередженості і фактичних помилок (LLM07 Misinformation) як окремий напрям. Пентест показує випадки, коли неправильна відповідь веде до небезпечної дії, але не замінює тестування якості.
Для ширшої рамки управління ризиками AI можна використати NIST AI Risk Management Framework, а для опису технік атак на AI системи базу знань MITRE ATLAS. [5] [6] Редакція OWASP 2026 року містить відповідності своїх пунктів обом. [2]
Що надає замовник
- Опис архітектури: яка модель і провайдер, що є в базі знань, які інструменти має агент і з якими правами.
- По два тестові акаунти на кожну роль і кожного тестового клієнта, щоб перевірити доступ одного до даних іншого.
- Тестове середовище з копією бази знань без реальних персональних даних або набір тестових документів.
- Системний промпт і опис інструментів, якщо обираєте відкритий формат: так тест глибший за той самий час.
- Ліміт витрат на модель під час тесту і контакт, який може зупинити тест.
- Письмовий дозвіл із межами перевірки і переліком сторонніх сервісів, яких тест не торкається.
Повний список кроків є в статті як підготуватися до пентесту.
Що ви отримаєте в результаті
- Короткий висновок для керівництва: що знайдено, чим це загрожує бізнесу, що виправити першим.
- Знахідки з точними запитами чи документами, які відтворюють атаку, доказами і оцінкою ризику з прив’язкою до пунктів OWASP.
- Рекомендації для розробників: які права забрати в агента, де поставити підтвердження людиною, що прибрати з промпту, як фільтрувати пошук за правами.
- Перелік перевіреного і того, що лишилося поза межами.
- Ретест після виправлень, якщо його погоджено в договорі. Оскільки відповіді моделі не завжди однакові, сценарії атак повторюють кілька разів.
Строк залежить від кількості ролей, інструментів агента і джерел даних, тому його фіксують до старту. Якщо обсяг ще не зрозумілий, почніть з пентесту найризиковіших сценаріїв: доступу до чужих даних і дій агента з грошима. Що робити зі звітом далі, описано в статті що робити після пентесту.
Чекліст перед пентестом AI застосунку
Завантажити чекліст підготовки (PDF)PDF · A4
FAQ
Що перевіряють під час пентесту AI застосунку?
Prompt injection, пряму і через документи, витік даних через RAG, права інструментів агента, витік системного промпту, обробку відповідей моделі, вхід і ізоляцію клієнтів, а також ліміти витрат. Основою є OWASP Top 10 for LLM Applications 2026, а API навколо моделі тестують як звичайний вебзастосунок.
Чи можна повністю захиститися від prompt injection?
Ні, і OWASP прямо пише, що надійного способу запобігти їй сьогодні немає. Тому захист будують навколо моделі: мінімальні права інструментів, підтвердження людиною для важливих дій, фільтр пошуку за правами користувача і перевірка відповідей перед використанням.
Чи тестують саму модель OpenAI чи іншого провайдера?
Ні. Модель і інфраструктура належать провайдеру. Перевіряють ваш застосунок: що модель бачить, які інструменти може викликати і що відбувається з її відповідями.
Чим пентест AI застосунку відрізняється від звичайного пентесту?
До звичайних перевірок API і ролей додаються атаки через текст, який читає модель, перевірка бази знань і прав агента. Відповіді моделі не завжди однакові, тому кожен сценарій повторюють кілька разів і фіксують точні запити.
Коли робити пентест AI застосунку?
Перед запуском для клієнтів і після великих змін: нового інструменту в агента, нового джерела даних у базі знань, переходу на іншу модель. Нове право агента змінює ризик більше, ніж зміна тексту промпту.
Посилання
- OWASP Top 10 for LLM Applications 2026 genai.owasp.org
- OWASP GenAI Security Project unveils the 2026 Top 10 for LLM Applications genai.owasp.org
- OWASP Top 10 for LLM Applications 2025 genai.owasp.org
- OWASP Top 10 for Agentic Applications (December 2025) genai.owasp.org
- MITRE ATLAS atlas.mitre.org
- NIST AI Risk Management Framework nist.gov
- OWASP Top 10 API Security Risks 2023 api-security.owasp.org



