ИИ-инструменты и скрипты
Проверка безопасности Nuxt и Vue
Проверьте приложения Nuxt и Vue до развёртывания: секреты в runtimeConfig.public, NUXT_PUBLIC_ или app.config, секреты, записанные прямо в nuxt.config, XSS через v-html, открытые перенаправления, клиентские карты исходного кода, CORS с учётными данными и раскрытые токены.
Что вы получите: 1 файл · 45.11 KB · ZIP
Варианты покупкиОписание товара
Один openaiApiKey в runtimeConfig.public, заполняемый во время выполнения из NUXT_PUBLIC_OPENAI_API_KEY, отправляет ваш ключ каждому посетителю в данных страницы. Один v-html="route.query.q" на странице поиска позволяет любому отправить ссылку, которая выполнит скрипты от имени вашего сайта. Этот навык находит эти и ещё восемь ошибок Nuxt и Vue до развёртывания и объясняет, как исправить каждую из них.
Ваш агент запускает сканер для nuxt.config, app.config, файлов .env (включая .env.example), всех компонентов и страниц .vue, а также связанных composables, плагинов, промежуточных обработчиков маршрутов, хранилищ и серверных маршрутов. Сканер знает, какие ключи runtimeConfig публичны, отслеживает значения из URL (useRoute, $route, to.query в промежуточных обработчиках, getQuery на сервере) и из useFetch, useAsyncData и $fetch через содержащие их переменные и псевдонимы v-for, пропускает комментарии и распознаёт стандартные исправления в коде (DOMPurify.sanitize, httpOnly: true, проверку startsWith('/'), которая также отклоняет // и обратные косые черты, проверку источника или списка разрешений). Публичные ключи и настройки, такие как apiBase, конфигурация Firebase и VueFire, публикуемые ключи Stripe, токены Mapbox pk. и поисковые ключи Algolia, не отмечаются, а стандартный стартовый проект Nuxt проходит проверку без замечаний. Сканер никогда не запускает Nuxt или ваше приложение. Он возвращает BLOCK, REVIEW или NOT FLAGGED с указанием файла, строки, причины и более безопасного подхода. Секреты никогда не выводятся.
Что проверяется
BLOCK (исправить до публикации)
N01: секреты, отправляемые в браузер (ключи runtimeConfig.public с именами или значениями секретов, переменные NUXT_PUBLIC_, app.config, секретные ключи в компонентах)
N02: секреты, записанные прямо в nuxt.config (runtimeConfig или параметры модулей, URL баз данных с паролем)
N03: v-html или innerHTML с данными query, params или hash из маршрута без очистки
N04: перенаправления на URL из входных значений (navigateTo с external: true, window.location, window.open, sendRedirect с getQuery) без проверки, отклоняющей // и сторонние сайты
REVIEW (проверить до выпуска)
N11: клиентские карты исходного кода (sourcemap true, sourcemap.client true или vite.build.sourcemap при включённых клиентских картах)
N12: CORS, разрешающий передачу учётных данных с любого источника (правила маршрутов, параметры handleCors, копирование заголовка Origin в ответ)
N13: вызовы API по незащищённому http:// к публичным хостам ($fetch, useFetch, baseURL, apiBase, прокси routeRules)
N14: токены, доступные скриптам (localStorage, useCookie или setCookie без httpOnly, document.cookie)
N15: чтение приватных секретов runtimeConfig в компонентах, страницах или composables
N16: v-html с данными API, результатом обработки Markdown или значением, источник которого сканер не видит
Что входит в комплект
Сканер (Python 3.9+, только стандартная библиотека)
Руководство по правилам с объяснением причин и более безопасным подходом для каждого правила
Небезопасный и безопасный примеры проекта Nuxt (nuxt.config.ts, .env.example, страницы, компонент, composable и серверные маршруты), а также настоящий отчёт сканера по небезопасному примеру
Ограничения
Каждый файл анализируется отдельно: значения, передаваемые через props или хранилища, проверки во вспомогательных функциях из других файлов, настройки из слоёв или модулей Nuxt и собранная папка .output не отслеживаются. Модуль nuxt-security, заголовки Content Security Policy и уязвимости зависимостей не проверяются. NOT FLAGGED не является гарантией безопасности.
Содержимое
Один ZIP-архив с 31 файлом: SKILL.md, сканер в scripts/ (6 файлов Python), references/rules.md (каждое правило с объяснением причин и более безопасным подходом) и examples/ (22 файла примеров и report.md, настоящий результат работы сканера на небезопасном примере).
Как использовать: Это навык для агента: папка с файлом SKILL.md и скриптами Python, которые может запускать ИИ-агент для программирования, например Claude Code, Cursor или Codex CLI. Распакуйте архив в папку навыков вашего агента (для Claude Code: ~/.claude/skills/), затем попросите агента проверить проект. Скрипты также можно запускать отдельно с Python 3.9 или новее, без установки дополнительных пакетов. Они только читают ваши файлы: не подключаются к сети и ничего никуда не отправляют.
Что вы получите
1 файл · 45.11 KB
- nuxt-vue-safety-check-1.0.0.zipZIP · 45.11 KB
ИИ-инструменты и скрипты
Проверка безопасности Nuxt и Vue
Проверьте приложения Nuxt и Vue до развёртывания: секреты в runtimeConfig.public, NUXT_PUBLIC_ или app.config, секреты, записанные прямо в nuxt.config, XSS через v-html, открытые перенаправления, клиентские карты исходного кода, CORS с учётными данными и раскрытые токены.
Включено в Getly ProПолучить Pro
Теги
Частые вопросы
Доступ открывается сразу?
Да. Это цифровой товар - скачать его можно сразу после оплаты, прямо из своей библиотеки.
Можно ли использовать в коммерческих проектах?
Да. Коммерческое использование разрешено: в своём бизнесе и в том, что вы продаёте. Перепродавать и распространять сам файл нельзя.
Какие условия возврата?
Запросить возврат можно в течение 30 дней. Если что-то не так, оформите заявку в своём заказе - её рассмотрит команда Getly.
Какие форматы и размеры файлов я получу?
Вы скачаете 1 файл - ZIP - всего 45.11 KB.
Обновления бесплатны?
Да - когда продавец выпускает новую версию, вы можете бесплатно скачать актуальные файлы из своей библиотеки. Последние изменения смотрите в истории версий.
Цена
$5.00



