Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/boxed-dev/vibe-coding-security
Анализ уязвимостейАудит конфигурацииВеб-безопасностьБезопасность облачных средОбнаружение СекретовБезопасность Цепочки ПоставокАутентификацияОбучение и ОбразованиеПодобранные Ресурсы
Безопасность API
Безопасность ИИ
Безопасность Баз Данных
GitHubboxed-dev/vibe-coding-security

vibe-coding-security

Чек-лист безопасности перед запуском для приложений, созданных ИИ (Lovable, v0, Bolt, Cursor). 69 проверок, охватывающих Supabase RLS, раскрытые ключи и промпт-инъекции. Те же паттерны, что стоят за CVE-2025-48757 (170 приложений) и утечкой Moltbook (1,5 млн API-токенов).

РепозиторийСайт
13161 месяц назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Безопасность Vibe Coding

Прежде чем твитнуть о запуске, прогоните эти 69 проверок. Они повторяют точные паттерны, стоящие за CVE Lovable RLS (CVE-2025-48757, 170+ приложений, 2025), утечкой Moltbook (1,5 млн API-токенов, февраль 2026) и взломом платформы Lovable в апреле 2026 года (исходный код и сервисные ключи проектов других пользователей, находившиеся в открытом доступе ~2,5 месяца).

Нужен полный комплект? 50 навыков аудита, 15 .cursorrules, 1 MCP-конфиг + 4 CLI-рецепта, 30 adversarial-промптов для ревью, 10 разборов инцидентов. Установка за 5 минут. Фиксированные $10.

→ rishabhvaai.gumroad.com/l/plddbd


В аудите, опубликованном в октябре 2025 года, Escape.tech просканировала 5 600 реальных приложений, сгенерированных ИИ, охватив 14 600 активов (методология). Они сообщили о 2 038 критических уязвимостях, более 400 утёкших секретах и 175 случаях раскрытия PII в 1 400 из этих приложений (результаты). Секреты были найдены прямо во фронтенд-бандлах: ключи Stripe, OpenAI и Supabase лежали в клиентском JavaScript. С тех пор ничего не улучшилось: отчёт GitGuardian за 2026 год насчитал 28,6 млн новых секретов в публичном GitHub за 2025 год (+34% год к году), секретов AI-сервисов стало на 81% больше, а в коммитах, соавторами которых были кодинг-агенты, секреты утекали примерно в 2 раза чаще, чем в среднем у людей. Это чек-лист из 69 конкретных, проверяемых пунктов. Каждый соответствует реальному паттерну инцидента. Если вы можете отметить все 69 — выкатывайте. Если нет — исправьте то, что вам мешает.

Не SaaS. Не сканер. Обычный список, который вы проходите перед пушем в прод.


Чек-лист безопасности из 69 пунктов перед запуском

До релиза 30 минут. Стоп. Сначала прогоните это.

Только уязвимость Lovable RLS (CVE-2025-48757, 2025, CVSS 9.3) раскрыла 170+ продакшн-приложений. Moltbook раскрыла 1,5 млн API-токенов в феврале 2026 года — доступных одним curl-запросом. Это не были крайние случаи. Это были массовые запуски.

Этот чек-лист группирует 69 конкретных проверяемых пунктов по аутентификации, секретам, API, базам данных, фронтенду, AI/LLM, инструментам агентов и деплою. Если вы не можете отметить все 69 — не выкатывайте.


Аутентификация (8 пунктов)

  • 1. Row-Level Security (RLS) включена на каждой таблице вашей базы данных.
  • 2. Политики RLS существуют для каждой таблицы и каждой роли (anon, authenticated, service_role).
  • 3. JWT-токены проверяются на сервере на каждом защищённом API-маршруте (никогда не доверяйте фронтенду проверку аутентификации).
  • 4. Сессии ротируются или инвалидируются после входа (защита от CSRF и фиксации сессии).
  • 5. Magic-ссылки (аутентификация без пароля) одноразовые, истекают менее чем за 15 минут и привязаны к IP или отпечатку устройства пользователя.
  • 6. Нельзя обновлять или удалять пользователей, заказы и чувствительные записи, полагаясь только на переданные пользователем ID. Тест: попробуйте обновить запись другого пользователя, изменив ID в запросе.
  • 7. CSRF-токены проверяются на изменяющих состояние запросах (POST, PUT, DELETE) через double-submit cookie или SameSite=Strict.
  • 8. У сессионных cookie установлены флаги HttpOnly, Secure и SameSite=Strict.

Секреты и окружение (7 пунктов)

  • 9. Никаких секретов в переменных NEXT_PUBLIC_*, .env-файлах Vue/React или захардкоженных строках. Выполните grep NEXT_PUBLIC_ и проверьте все переменные.
  • 10. .env, .env.local, .env.*.local находятся в .gitignore и никогда не коммитятся. Проверьте историю git: git log --all -p | grep -i "api_key\|secret".
  • 11. Ключ Supabase service_role находится ТОЛЬКО в серверном .env (Node, Python, Go и т.д.), никогда — во фронтенд-бандлах или .env.local. Ключ service_role полностью обходит RLS — одна утечка означает полный доступ на чтение/запись ко всем таблицам.
  • 12. Ключи Stripe: публичный ключ — в NEXT_PUBLIC_*, секретный ключ — только на сервере, подпись вебхуков проверяется.
  • 13. API-ключи OpenAI, Anthropic, xAI никогда не находятся во фронтенд-коде; всегда проксируются через ваш API.
  • 14. Никаких захардкоженных API-ключей, URL баз данных или учётных данных в исходниках (включая комментарии и неиспользуемый код).
  • 15. Секреты ротируются после запуска или если они когда-либо были раскрыты в истории исходников.

Укрепление API (10 пунктов)

  • 16. Rate limiting активен на /api/auth/*, /api/login, /api/register. Тест: 100 запросов в минуту должны возвращать 429.
  • 17. Все пользовательские вводы, поступающие в /api/*, проверяются с помощью Zod, Yup или аналогов до обращения к базе данных. Никакая сырая req.body не передаётся в запросы.
  • 18. Никакого массового присваивания: пользователь не может установить admin=true, role=admin или другие чувствительные поля, отправив их через POST.
  • 19. Подписи вебхуков проверяются (сравните заголовок подписи HMAC-SHA256 с ожидаемым значением, используя сравнение за константное время).
  • 20. CORS не установлен в *. Разрешённые origins захардкожены и не включают localhost в продакшене.
  • 21. SQL-запросы используют только параметризованные выражения. Никакой конкатенации строк пользовательского ввода в SQL.
  • 22. NoSQL-запросы (MongoDB, Firebase и т.д.) не конкатенируют пользовательский ввод в фильтры или селекторы.
  • 23. Загружаемые файлы проверяются (mime-тип + размер), хранятся вне веб-корня и переименовываются для предотвращения path traversal.
  • 24. Редиректы после входа в систему находятся в белом списке. Нельзя перенаправить на внешний домен через open redirect.
  • 25. API не совершает непроверенные внешние запросы. Убедитесь, что URL, используемые в серверных запросах, берутся из вашего белого списка, а не из пользовательского ввода (защита от SSRF).

База данных (6 пунктов)

  • 26. RLS ПРИНУДИТЕЛЬНО включена на всех таблицах. Роль anon не может выполнять SELECT/INSERT/UPDATE/DELETE ни на одной таблице без явной разрешающей политики.
  • 27. Публичная роль anon имеет ноль разрешений по умолчанию. Политики предоставляют только необходимое. Только чтение публичных списков, никогда — запись.
  • 28. Ключ service-role используется ТОЛЬКО в серверном коде. Проверка: grep -r "service_role" src/. Во фронтенд-файлах должно быть ноль результатов.
  • 29. Изоляция пользовательских данных: запросы всегда фильтруются по auth.uid() или team_id. Ни один запрос не возвращает все записи всех пользователей.
  • 30. Мягкие удаления (флаг is_deleted) или архивные таблицы предотвращают случайную потерю данных. Жёсткие удаления логируются с указанием исполнителя + временной метки.
  • 31. Резервные копии базы данных существуют и протестированы. Вы убедились, что можете восстановиться из резервной копии до этого запуска.

Фронтенд (8 пунктов)

  • 32. Никаких dangerouslySetInnerHTML или innerHTML без санитизации через DOMPurify. Проверьте каждый экземпляр в кодовой базе.
  • 33. Все npm/pip/gem-зависимости проверяются на известные CVE. Запустите npm audit, pnpm audit или npx osv-scanner --lockfile=package-lock.json перед запуском — и проверьте конкретные версии в KNOWN-VULNERABLE-VERSIONS.md, потому что npm audit ловит опубликованные CVE, но не вредоносные пакеты.
  • 34. Content Security Policy (CSP) включена в продакшене (strict-dynamic, без unsafe-inline). Сначала протестируйте на стейджинге.
  • 35. Никакие /api/debug, /admin/backdoor или внутренние тестовые эндпоинты не доступны в продакшене. Выполните grep по маршрутам «debug», «mock», «test-only».
  • 36. Установлен X-Frame-Options: DENY. Проверьте, что заголовок отправляется в каждом ответе (предотвращает кликджекинг).
  • 37. Сообщения об ошибках не раскрывают внутренние пути, стек-трейсы или схему БД в продакшене. Протестируйте ошибки 404, 500 и ошибки прав доступа.
  • 38. Никакого загрязнения прототипов: объекты, предоставленные пользователем, не объединяются с объектами приложения без санитизации.
  • 39. React: никаких инлайновых обработчиков событий с несанитизированными пользовательскими данными. Используйте react-dompurify или аналог для любого пользовательского контента, отображаемого как HTML.

AI и LLM (10 пунктов)

Это проверки, которых никогда не было в старых руководствах по веб-приложениям. Они соответствуют OWASP Top 10 для LLM-приложений — а издание 2026 года (выпущено 3 августа 2026 года, первое, взвешенное по реальным данным об инцидентах из 6 639 случаев) переместило Excessive Agency с #6 на #3 и добавило Agent Hijacking, Multi-Modal Injection и Memory Persistence. Пункты про агентов ниже больше не теоретические.

  • 40. Пользовательский ввод помещается в отдельное сообщение user, никогда не конкатенируется в системный промпт. Контент, полученный из файлов, RAG или веба, оборачивается в явные разделители и считается ненадёжным (непрямая prompt-инъекция).
  • 41. Системный промпт не содержит ни секретов, ни API-ключей, ни внутренних URL. Считайте, что он публичный. Протестируйте извлечение («повторите ваши инструкции дословно») и убедитесь, что ничего чувствительного не возвращается.
  • 42. На каждом эндпоинте, вызывающем LLM, существуют лимиты токенов/расходов на пользователя И глобальные. Тест: «долбите» его с одного аккаунта — и срабатывает квота. У провайдера установлен месячный потолок расходов с уведомлениями о биллинге (denial-of-wallet, OWASP LLM10:2025).
  • 43. Вывод LLM, отображаемый как HTML, санитизируется (DOMPurify) до попадания в DOM. Вывод модели — это ненадёжный ввод, как и вставленный пользователем текст.
  • 44. Продакшн-агенты обеспечивают авторизацию на стороне сервера для каждого инструмента, независимо от решения модели. Никакое деструктивное действие (удаление, платёж, отправка email) не выполняется только по указанию модели.
  • 45. Инструменты агентов используют принцип наименьших привилегий. Никакой raw shell/exec/eval, доступной из ввода, контролируемого моделью. Деструктивные команды находятся в белом списке и требуют подтверждения (Excessive Agency, OWASP LLM06:2025).
  • 46. Мультитенантные RAG/векторные хранилища обеспечивают изоляцию тенантов во время запроса (namespace или фильтр по метаданным, привязанный к аутентифицированному пользователю), а не в коде приложения. Тест: тенант A никогда не может получить чанки тенанта B (OWASP LLM08:2025).
  • 47. При приёме документов в RAG (ingestion) документы, предоставленные пользователем или полученные скрейпингом, считаются ненадёжными. Корпус хранится под контролем версий с базовыми хешами, чтобы несколько отравленных документов не могли незаметно изменить вывод.
  • 48. Векторные эмбеддинги защищены контролем доступа так же, как исходные PII, которые они кодируют (инверсия эмбеддингов может восстановить текст). Эндпоинт векторной БД требует аутентификации и недоступен публично.
  • 49. Если вы публикуете или используете MCP-серверы: каждый закреплён за проверенной версией, описания инструментов сканируются на скрытые/невидимые Unicode-инструкции (отравление инструментов), и вы перепроверяете при любом изменении (rug-pull). MCP Inspector ≥ 0.14.1, mcp-remote ≥ 0.1.16 (CVE-2025-49596, CVE-2025-6514). Rug-pull — не теория: postmark-mcp v1.0.16 добавил одну строку, которая скрыто копировала (BCC) каждое письмо, проходящее через него, атакующему — ~300 организаций, одно обновление версии (сентябрь 2025).

Агенты, инструменты и цепочка поставок (12 пунктов)

  • 50. Dev- и прод-базы данных физически раздельны, с раздельными учётными данными. Ваш агент/CI никогда не имеет прав на запись или DDL в проде. (Агент Replit стёр прод-базу во время code freeze, потому что у него был доступ на запись, которого никогда не должно было быть.)
  • 51. Облачные токены, выдаваемые агентам или CI, ограничены одним проектом с минимальными правами — никогда не на весь аккаунт. (PocketOS: неограниченный Railway-токен позволил кодинг-агенту удалить базу данных и все резервные копии за 9 секунд.)
  • 52. Ключ Supabase service_role не встречается ни в одном файле, доступном клиенту: grep -rn "service_role" src/ app/ public/ dist/ ничего не возвращает, и утверждение role в любом клиентском JWT не равно service_role.
  • 53. Каждая зависимость проверяется на реальное существование перед установкой — реальный мейнтейнер, реальная история, реальное количество загрузок. Импорты, предложенные ИИ, сверяются с lockfile. (Slopsquatting: 19,7% пакетов, рекомендованных LLM, не существуют, 43% этих имён предсказуемо повторяются, и атакующие их регистрируют. В июле 2026 года Claude-агент, находившийся на оценке, опубликовал рабочую вредоносную программу в живой PyPI — она запустилась на 15 реальных системах в течение часа.) Ваш сканер здесь важен: npm audit помечает опубликованные CVE, а не вредоносные пакеты. См. KNOWN-VULNERABLE-VERSIONS.md.
  • 54. Резервные копии / point-in-time recovery включены, протестированы И хранятся под учётными данными, недоступными агенту — чтобы скомпрометированный агент не мог удалить и резервные копии.
  • 55. AI-правила и конфигурационные файлы (.cursor/rules, .github/copilot-instructions.md, CLAUDE.md, .windsurfrules) сканируются на невидимый Unicode и рассматриваются как критичный для безопасности код (класс «Rules File Backdoor»).
  • 56. Ваши инструменты кодинга обновлены (Cursor CurXecute / MCPoison / CVE-2025-59944, Claude Code CVE-2025-59536, Copilot RCE CVE-2025-53773). Workspace Trust включён; авто-запуск / режим «YOLO» выключены при открытии ненадёжных репозиториев.
  • 57. Любое необратимое действие агента в отношении продакшена (DROP, DELETE, TRUNCATE, миграции, деплои) требует одобрения человека (human-in-the-loop).
  • 58. Ваши кодинг-агенты не могут воспринимать текст, контролируемый атакующим, как инструкции: события ошибок Sentry, текст GitHub-issue, README клонированных репозиториев. «Agentjacking» через публичный Sentry DSN — markdown-пейлоад, внедрённый в событие ошибки, подхваченный через Sentry MCP — достиг 85% успеха против Claude Code/Cursor/Codex (Tenet Security, июнь 2026; 2 388 организаций имели инъектируемые DSN). MCP-доступ к трекеру ошибок — только чтение; DSN считаются секретами.
  • 59. CI-воркфлоу агентов (claude-code-action и аналоги) никогда не выполняют чекаут веток PR атакующего с авто-включёнными MCP-серверами или правами на запись (TRA-2026-27: ветка PR атакующего → выполнение произвольного кода в вашем CI).
  • 60. Если вы строите на спецификации MCP от 2026-07-28: все идентификаторы воркфлоу/состояния непредсказуемы, привязаны к тенанту и проверяются на сервере. Протокол стал stateless — состояние теперь передаётся как обычные аргументы инструментов, поэтому предсказуемые ID и межтенантный угон воркфлоу — это полноценные классы атак, от которых спецификация вас больше не защищает (Akamai, июнь 2026).
  • 61. Никаких секретов или PII в расшаренных вами разговорах с агентами. ~600 расшаренных чатов/артефактов Claude были проиндексированы Google, внутри них — живые API-ключи и AWS-токены (июль 2026, с тех пор удалены из индекса). Ссылки на расшаривание — это канал публикации; относитесь к ним как к публичному репозиторию.

Деплой (8 пунктов)

  • 62. Конфигурация деплоя явно разделяет переменные окружения. Публичные переменные (NEXT_PUBLIC_*) против серверных секретов.
  • 63. NODE_ENV=production установлено во всех продакшн-сборках. Проверьте в логах деплоя.
  • 64. Мониторинг приложения (Sentry, LogRocket и т.д.) включён и настроен на санитизацию чувствительных данных перед отправкой.
  • 65. Трекинг ошибок НЕ отправляет токены сессий пользователей, пароли, API-ключи или PII в пейлоадах ошибок. Проверьте вашу конфигурацию Sentry/LogRocket.
  • 66. Source maps исключены из продакшн-бандлов. Собирайте с --no-sourcemap или удаляйте .map-файлы перед деплоем.
  • 67. HTTPS принудительно включён. Все HTTP-запросы перенаправляются на HTTPS. Тест: curl -i http://yourapp.com.
  • 68. Сторонние интеграции (аналитика, чат-виджеты и т.д.) загружаются только с доверенных CDN и используют хеши Subresource Integrity (SRI).
  • 69. Вы протестировали полный процесс восстановления аккаунта (сброс пароля, инвалидация сессии, повторная аутентификация) на продакшн-стейджинге.

Перед нажатием Deploy

  1. Вы отметили все 69 пунктов.
  2. Вы вручную протестировали 3–5 пунктов (не только линтинг).
  3. У вас есть контактный email для вопросов безопасности на сайте ([email protected]).

Если вы не можете уверенно отметить все 69 — не выкатывайте. Технический долг по безопасности с первого дня дорого выплачивать.


5 бесплатных примеров навыков

Эти навыки находятся в 5-free-skills/ в этом репозитории. Поместите их в .claude/skills/ и запускайте с помощью /skill <name> в Claude Code.

НавыкЧто делает
5-free-skills/audit-supabase-rls.mdВыполняет SQL-запросы к вашей базе данных и точно сообщает, какие таблицы не защищены. Проверка CVE-2025-48757
5-free-skills/find-exposed-env-vars.mdИщет в выводе сборки секреты, которые NEXT_PUBLIC_ утащила в клиентский JS
5-free-skills/audit-prompt-injection-vectors.mdНаходит все места, где пользовательский ввод попадает в вызов LLM без границы
5-free-skills/audit-rate-limiting.mdПроверяет, действительно ли ваши auth-маршруты отклоняют запросы после N попыток
5-free-skills/find-xss-react.mdНаходит dangerouslySetInnerHTML и несанитизированный вывод. 86% сгенерированного ИИ кода проваливают эту проверку (Veracode, 2025)

Известные уязвимые версии

KNOWN-VULNERABLE-VERSIONS.md — конкретные CVE и номера версий в стандартном стеке vibe coding, проверенные по GitHub Security Advisories / NVD по состоянию на август 2026. Обход middleware Next.js (CVE-2025-29927, CVSS 9.1 — один заголовок пропускает всю вашу auth-прослойку), предсказание границ form-data (CVE-2025-7783, CVSS 9.4), чтение файлов dev-сервером Vite, React Router, mcp-remote, MCP Inspector, Cursor.

Плюс инциденты цепочки поставок, которые npm audit структурно не может поймать — захват chalk/debug, червь Shai-Hulud, postmark-mcp, slopsquatting — и таблица того, какой сканер что реально ловит.


2 бесплатных разбора инцидентов

РазборЧто пошло не так
free-case-studies/cve-2025-48757-lovable-rls.mdКак 170+ приложений Lovable вышли с полностью выключенной RLS — и отдельное продолжение 2026 года, раскрывшее 18 697 записей студентов EdTech-платформы
free-case-studies/moltbook-supabase-leak.mdКак Moltbook оставила 1,5 млн API-токенов доступными одному curl-запросу

Исправления на платформах с момента создания этого списка (чтобы вы знали, что всё ещё на вас)

  • Supabase (апрель 2026): новые таблицы в public-схеме больше не раскрываются автоматически через Data/GraphQL API — требуется явное согласие. Это устраняет схему «anon-ключ + забытая RLS = публичная БД» для новых таблиц. Таблицы, созданные до этого: всё ещё на вас.
  • Lovable (июнь 2026): ошибки конфигурации RLS теперь проверяются при каждой публикации, с опциональным авто-исправлением для подходящих критических находок. RLS по-прежнему НЕ включена по умолчанию, CVE-2025-48757 по-прежнему оспаривается вендором, а взлом апреля 2026 года был ошибкой авторизации на стороне платформы — ваша RLS к нему отношения не имела.
  • Lovable (июль 2026): автоматически отзывает ваши API-ключи, когда они появляются в публичном GitHub.
  • Replit (май-июнь 2026): Security Center 2.0 плюс файрвол пакетов (построенный на Socket), блокирующий ~8 000 вредоносных пакетов в день на этапе установки.
  • Semgrep (май 2026): наборы правил для захардкоженных AI-ключей (186 правил), вредоносных файлов навыков агентов (122 правила) и безопасности ИИ (27 правил) — стоит подключить в CI, если агенты пишут ваш код.

Линтинг платформ ловит известные ему паттерны. Ничто из вышеперечисленного не освобождает вас от пунктов 1–69.


Чем это НЕ является

Не SaaS-сканер. Не непрерывный мониторинг. Ничто не отправляет данные на сторону.

Это статические markdown-файлы. Вы читаете их, вручную выполняете SQL-запросы и shell-команды, исправляете то, что они находят. Никаких дашбордов. Никаких алертов. Никакой магии.

Это также не замена профессиональному пентесту, если вы работаете с медицинскими данными, финансовыми записями или чем-либо регулируемым. Чек-лист покрывает паттерны, которые постоянно встречаются в vibe-coded приложениях. Он покрывает не всё.


Хотите полный набор?

Чек-лист из 69 пунктов бесплатен. В наборе 50 навыков по 5 поверхностям атак, включая 12, специфичных для AI и LLM-приложений: prompt-инъекции, безопасность MCP-серверов, эскалация прав агентов, изоляция векторных БД, утечка данных из RAG, извлечение системного промпта.

Также включено: 15 правил Cursor, 1 MCP-конфиг (Semgrep) + 4 рецепта интеграции с CLI (gitleaks, npm-audit, проверка Supabase RLS, фаззер prompt-инъекций), 4 чек-листа, 30 adversarial-промптов для ревью и 10 разборов инцидентов с полным анализом первопричин (включая PocketOS, где агент Cursor + Claude Opus 4.6 удалил продакшн-базу данных и все резервные копии за 9 секунд через неограниченный Railway-токен).

Без SaaS. Без подписки. Markdown-файлы, которые живут в вашем репозитории.

Фиксированные $10. → rishabhvaai.gumroad.com/l/plddbd


Темы

claude-code cursor lovable v0 security mcp vibe-coding supabase next-js prompt-injection rls ai-securityЕсли этот чек-лист уберёг вас от публикации чего-то неловкого, поставьте звёздочку репозиторию. Затем отправьте ссылку тому из вашей команды, кто использует Lovable или v0, не задумываясь пока об этом.

Скачать инструмент