Застосунок з Lovable, Bolt, Base44 чи Cursor може працювати бездоганно — і водночас показувати одному клієнту дані іншого. Перед запуском пройдіть ці 10 місць: правила доступу до бази (Supabase RLS, Firebase rules), ключі в коді, адмінку й API без входу, файли, оплату, вхід і введення.
Баги + вразливості — $499 замість $648. Не знайдемо жодного бага — повернемо 100%.Подивитися приклад звіту
Оновлено 16 жовтня 2026 · команда QA piperlink
CVE-2025-48757: 170 З 1 645 ЗАСТОСУНКІВ LOVABLE МАЛИ ПОМИЛКИ В ПРАВИЛАХ ДОСТУПУ ДО БАЗИ
ESCAPE · ЖОВТЕНЬ 2025: 400+ ВІДКРИТИХ СЕКРЕТІВ У 5 600+ ЗАСТОСУНКАХ, СТВОРЕНИХ З AI
ЧЕКЛІСТ
10 кроків. До запуску.
Увійдіть другим клієнтом і спробуйте дістатися даних першого. Лише у власному застосунку.
01 / БАЗА
Row Level Security на кожній таблиці
У Supabase кожна таблиця з даними користувачів має мати ввімкнений RLS і правила, прив’язані до того, хто увійшов. Увійдіть клієнтом Б і спробуйте прочитати, змінити чи видалити запис клієнта А.
БЕЗ RLS ПУБЛІЧНИЙ КЛЮЧ ЧИТАЄ ТАБЛИЦЮ
02 / КЛЮЧІ
Жодних секретних ключів у браузері
Ключ anon у Supabase може бути публічним. Ключ service_role, секретні ключі Stripe і ключі AI-сервісів не мають потрапляти у фронтенд — а все, що лежить у змінних VITE_ чи NEXT_PUBLIC_, туди потрапляє. Пошукайте їх у скриптах сторінки.
СЕКРЕТНИЙ КЛЮЧ У JAVASCRIPT
03 / АДМІНКА
Адмінку перевіряє сервер
Сховати кнопку адмінки — не захист. Відкрийте адресу адмінки без входу і звичайним клієнтом.
АДМІНКА ВІДКРИВАЄТЬСЯ ЗА АДРЕСОЮ
04 / API
Кожен запит до API перевіряє, хто питає
Викличте API чи edge functions без токена, а потім з ID іншого клієнта. Відповіддю має бути відмова, а не дані.
ЧУЖИЙ ID ПОВЕРТАЄ ЧУЖІ ДАНІ
05 / ФАЙЛИ
Приватні файли лишаються приватними
Рахунки, фото, документи — у приватному сховищі з тимчасовими посиланнями. Відкрийте адресу файлу в приватному вікні.
ПРИВАТНІ ФАЙЛИ В ПУБЛІЧНОМУ СХОВИЩІ
06 / ОПЛАТА
Платний доступ — лише після підтвердженої оплати
Відкривайте доступ лише тоді, коли сервер підтвердив оплату — вебхуком із перевіреним підписом чи запитом до платіжного сервісу, — а не лише тому, що відкрилася сторінка «Успішно». Відкрийте її без оплати.
СТОРІНКА «УСПІШНО» ДАЄ ДОСТУП
07 / ВХІД
Кількість спроб входу обмежена
Введіть неправильний пароль двадцять разів. Вас мають пригальмувати чи зупинити, а повідомлення — не казати, чи існує така пошта.
ПАРОЛЬ МОЖНА ПІДБИРАТИ БЕЗ КІНЦЯ
08 / ВВЕДЕННЯ
Те, що вводять люди, лишається текстом
Вставте <img src=x onerror=alert(1)> в ім’я чи коментар і відкрийте сторінку, де воно показується, — особливо в адмінці.
КОМЕНТАР ЗАПУСКАЄ КОД
09 / ПОМИЛКИ
Помилки не показують нутрощів
Навмисно зламайте запит. Застосунок має показати звичайне повідомлення, а не трасування стека, помилку бази чи налаштування.
ПОМИЛКА БАЗИ НА ЕКРАНІ
10 / СЕКРЕТИ
Секрети — поза репозиторієм
Жодного файлу .env у публічному репозиторії чи публічній папці сервера. Якщо ключ колись витік — замініть його: видалити файл недостатньо.
КЛЮЧ, ЩО ВИТІК, ПРАЦЮЄ, ДОКИ ЙОГО НЕ ЗАМІНИТИ
ПОНАД СПИСОК
Чекліст знаходить очевидне. Фахівець — решту.
Наш фахівець з кібербезпеки пробує зламати застосунок, як це зробив би хакер, — неруйнівно й лише з вашого дозволу.
01 / СКАНЕРИ
Запускайте й сканери
Вбудовані й автоматичні сканери ловлять відомі шаблони в коді й налаштуваннях. Запускайте їх — а потім перевірте те, що покаже лише другий клієнт, який увійшов.
02 / НАША КОМАНДА
Тестування на вразливості
Чужі дані й файли, правила доступу до бази, ключі в коді, адмінка й API без входу, підробка оплати, перебір паролів. $349 окремо.
03 / КОМПЛЕКТ
Баги + вразливості
Тестування на баги й на вразливості разом — $499 замість $648. Це не пентест: повний пентест — окрема послуга за договором.
ТАРИФИ
Спочатку — один реліз. Далі — за потребою.
Фіксовані ціни. Суму бачите до оплати — нічого не списується без вашого рішення.
4 тестування за 30 днів: перше — на баги, далі — ваших оновлень
Весь застосунок — до 25 екранів або сторінок
5 головних сценаріїв і всі ролі
Справжні пристрої: комп’ютер і телефон
Звіт по кожному тестуванню й ретест виправлень
Не знайдемо жодного бага — повернемо 100%
Тестування оновлення — $149. Для застосунку, який ми вже тестували. Замовити оновлення ↗︎
Тестування на вразливості — $349. Без тестування на баги. Замовити окремо ↗︎
Опції. Ще одна платформа — +$149. Ще 25 екранів — +$149. Терміновий звіт за 1–2 робочі дні — +$99.
Оплата частинами. До 12 платежів: Монобанк, ПриватБанк, А-Банк, Глобус Банк, OTP Bank. Обираєте на сторінці оплати.
ПИТАННЯ
Часті запитання.
?!
Чи безпечний ключ anon від Supabase у браузері?
Так, він і задуманий публічним — але лише коли Row Level Security захищає кожну таблицю. Ключ service_role обходить ці правила й ніколи не має потрапляти в браузер.
Що робити, якщо знайшли витік?
Спершу закрийте його: увімкніть RLS чи виправте правило, перенесіть ключ на сервер. Потім замініть кожен ключ, що був відкритий, — ключ, який витік, працює, доки ви його не заміните. І перевірте ще раз другим клієнтом.
Це пентест?
Ні. Чекліст і наше тестування на вразливості — неруйнівні спроби зламу вашого застосунку з вашого дозволу. Повний пентест — окрема послуга за договором.
Скільки коштує ваше тестування на вразливості?
$349 окремо або $499 у пакеті «Баги + вразливості» разом із тестуванням на баги (окремо — $648). У звіті кожна знахідка з кроками, скріншотом і промптом для AI, щоб її виправити.