vbsec — проверка безопасности кода, написанного ИИ

vbsec

Скилл для Claude Code и Codex, который находит в коде от ИИ типовые уязвимости и для каждой показывает исправление

  • 314 ★ репозитория
  • Последний коммит
  • MIT
Скилл

Расширенный доступ

Почему такой уровень

  • Скилл читает весь репозиторий и пишет отчеты, в которых цитируются уязвимые места и пути атаки
  • По отдельному флагу скилл переписывает исходные файлы или обращается в сеть к OSV.dev
Все причины и проверки

tanviet12/vbsec

Установка

Работает в

В терминале, через SkillFoxx CLI

npx skillfoxx add skills/vbsec

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • Скилл читает весь репозиторий и пишет отчеты, в которых цитируются уязвимые места и пути атаки
  • По отдельному флагу скилл переписывает исходные файлы или обращается в сеть к OSV.dev

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

vbsec сканирует код, который написал ИИ, и составляет отчет о 21 типе уязвимостей, от SQL-инъекций и XSS до гонок при списании баланса. Скилл прослеживает, откуда пришли данные, и делит источники на четыре уровня доверия: от «прислал посторонний», как формы и заголовки, до «создала система», как константы. В отчет попадает только то, что дошло от постороннего до опасного вызова без очистки. На каждую находку отчет дает причину опасности, пошаговый сценарий атаки, текущий код и исправленный. Для Go, PHP, Python, .NET, TypeScript и JavaScript есть отдельные правила с учетом популярных фреймворков, например Django и Laravel. Проверить можно весь репозиторий, отдельный коммит или pull request, а также изменения за последние N дней.

Для кого. Для разработчиков, которые выпускают код, написанный ИИ, и хотят проверить его до коммита без глубоких знаний в безопасности.

Подходит, если

  • Перед каждым коммитом нужно проверить незакоммиченные изменения
  • Агент написал авторизацию с JWT или поиск с запросом к базе, и хочется убедиться, что в нем нет очевидной дыры
  • Нужен отчет файлом для того, кто будет исправлять: он сохраняется в `vbsec-reports/` и заканчивается блоком JSON для CI/CD
  • Проверяется чужой pull request: область `pr id <номер>` берет разницу из GitHub через `gh`
  • Код лежит в обычной папке без git, например результат генерации: скилл сканирует и ее

Не подходит, если

  • Нужен формальный аудит или пентест: скилл ищет типовые ошибки и не заменяет проверку специалиста
  • Основной язык проекта вне списка Go, PHP, TypeScript, Python и .NET: глубокие правила есть только для них
  • Нужен детерминированный результат: вывод ИИ может отличаться от запуска к запуску
  • Требуется статический анализатор с гарантиями для CI: для этого подойдут отдельные сканеры с фиксированными правилами

Пример запроса к агенту

/vbs-scan-security uncommitted lang=en — проверь мои незакоммиченные изменения и покажи, как исправить каждую находку.

Ограничения

Результат зависит от модели и может меняться между запусками. На восьми учебных приложениях с заложенными ошибками автор нашел 54 из 55 без ложных срабатываний, на вашем коде числа будут другими. Отчет по умолчанию пишется на вьетнамском. Для области `pr id` нужен GitHub CLI. Необязательный флаг `--sca` обращается к сети за данными OSV.dev, флаг `--auto-fix` меняет исходные файлы и требует git-репозитория. В Codex и Antigravity проверка идет последовательно и на крупных репозиториях заметно медленнее, чем в Claude Code с параллельными субагентами.

Как отключить. Удалите символическую ссылку `~/.claude/skills/vbs-scan-security` и при желании папку `~/vbsec`, затем перезапустите агента. Созданные отчеты лежат в `vbsec-reports/` в сканированных проектах: добавьте этот путь в `.gitignore` или удалите папку.

Частые вопросы

Как поставить vbsec в Claude Code?

Выполните `git clone https://github.com/tanviet12/vbsec ~/vbsec` и `~/vbsec/scripts/install.sh`. Скрипт поставит скилл для каждого найденного агента. Для обновления зайдите в `~/vbsec` и сделайте `git pull`.

Какие уязвимости ищет vbsec?

21 типовую, от секретов в коде и SQL-инъекций до гонок и уязвимых зависимостей. Полный список с примерами лежит в справочнике правил в папке docs.

Как запустить проверку только изменений?

Команда `/vbs-scan-security uncommitted` проверит незакоммиченное, область staged возьмет индексированные файлы, а `commit id <sha>` — конкретный коммит. В Codex вызов выглядит как `$vbs-scan-security`.

Почему меньше ложных срабатываний, чем у шаблонных сканеров?

Скилл читает окружающий код и определяет, откуда пришло значение. Запрос с константой остается без пометки, запрос с вводом из поисковой строки попадает в отчет.

На каком языке отчет?

По умолчанию на вьетнамском. Добавьте `lang=en` или `--en` для английского. Блок JSON в конце отчета всегда на английском, его читают CI/CD.

Обсуждение

Вопросов и отзывов пока нет.

Скиллы

VibeSec

VibeSec-Skill

Скилл безопасной разработки: агент смотрит на код глазами багхантера и предотвращает типовые уязвимости веб-приложений

СкиллМинимальный доступ1,4 тыс.Звезды репозитория
Российский стек

Скилл аудита безопасности для Claude Code: OWASP Top 10 плюс ГОСТ Р 56939, приказ ФСТЭК №21 и ФЗ-152, параллельные сабагенты и матрица соответствия

СкиллМинимальный доступ1Звезды репозитория

Сканер безопасности для скиллов агентов: ищет промпт-инъекции, утечку данных и вредоносный код перед установкой

CLIРасширенный доступ2,7 тыс.Звезды репозитория
Выбор редакции

Скилл аудита безопасности кода от Cloudflare: агент проходит разведку, охоту по покрытию и независимую проверку находок и выдает структурированный отчет

СкиллРасширенный доступ52,8 тыс.Звезды репозитория

Скилл для аудита вайбкод-приложений: секреты, RLS в Supabase, авторизация, платежи, лимиты запросов, мобильные и ИИ-интеграции

СкиллМинимальный доступ1,2 тыс.Звезды репозитория

Набор скиллов и команд для авторизованного багбаунти и внешнего red team в Claude Code: методики, шаблоны цепочек и отчетов

ПлагинШирокий доступ5,3 тыс.Звезды репозитория

Сравнение с похожими

Записи с тем же главным запросом: чем они отличаются.

ЗаписьОфициальныйЗвезды репозиторияГлавное отличие
vbsec — проверка безопасности кода, написанного ИИ (эта запись)нет314
VibeSecнет1 379скилл безопасной разработки, который предотвращает типовые уязвимости при написании кода
security-auditнет52 818аудит безопасности от Cloudflare с разведкой, охотой по покрытию и независимой проверкой

Коротко о README

В репозитории три набора скиллов с одинаковыми правилами: для Claude Code, Codex и Antigravity. В папке docs лежат установка, справочник правил и примеры отчетов, в scripts — прогон учебных приложений и проверка его результатов.

Бейдж для README

Исходный SKILL.md

---
name: vbs-scan-security
description: Use when scanning code for security vulnerabilities. Use when user says "scan security", "kiểm tra bảo mật", "security audit", "review security", or invokes `/vbs-scan-security`. Auto-delegates to sub-agents for large scans (>20 main-language files OR >30 total OR >14 days). Outputs bilingual reports (vi/en). Optional `--auto-fix` (agentic patch + verify loop) and `--sca` (live CVE lookup via OSV.dev).
userInvocable: true
---

# vbsec — Security Scanner cho Vibe Coders

Quét lỗ hổng bảo mật cho code do AI sinh ra (vibe code). Bộ skill này check 21 lỗi bảo mật phổ biến nhất của vibe code, kế thừa kiến trúc SMALL/LARGE mode từ bộ rule production của SePay, tổng quát hóa cross-language (mặc định) + chuyên sâu cho Go/PHP (phase 1).

> Public repo: https://github.com/tanviet12/vbsec
> License: MIT (sẽ chốt khi public)

## Invocation

| Command | Scope | Mô tả |
|---|---|---|
| `/vbs-scan-security` | **Toàn repo** (default từ v0.3) | Mặc định — quét toàn bộ repo |
| `/vbs-scan-security all` | Toàn repo | Alias explicit của default |
| `/vbs-scan-security uncommitted` | Uncommitted changes | Quét staged + unstaged (cần explicit từ v0.3) |
| `/vbs-scan-security diff` | Uncommitted changes | Alias intuitive cho `uncommitted` |
| `/vbs-scan-security staged` | Staged files only | Pre-commit scan |
| `/vbs-scan-security commit within Xdays` | Recent commits | Quét commit X ngày gần đây |
| `/vbs-scan-security commit id <sha>` | Specific commit | Quét 1 commit |
| `/vbs-scan-security pr id <number>` | Pull request | Quét PR diff (cần `gh` CLI) |

**v0.3 change:** Default scope đổi từ `uncommitted` → `all`. Non-tech user lần đầu chạy không bị confused bởi report rỗng. Để giữ behavior cũ, dùng `uncommitted` hoặc `diff` explicit.

**Lựa chọn ngôn ngữ output (thêm vào bất kỳ scope nào):**
- `lang=vi` hoặc `--vi` → Tiếng Việt (mặc định)
- `lang=en` hoặc `--en` → English

**Cờ tùy chọn (v0.7+, mặc định TẮT — thêm vào bất kỳ scope nào):**

| Flag | Alias | Mô tả |
|---|---|---|
| `--sca` | `sca` | Tra cứu CVE **live** qua OSV.dev cho dependency (5 ecosystem: NuGet/Go/npm/Composer/PyPI). Xem [`references/dependency-scan.md`](references/dependency-scan.md). Cần network. |
| `--auto-fix` | `auto-fix` | Tự sinh patch (unified diff) cho finding CRITICAL/HIGH, verify bằng build command, revert nếu fail. Xem [`workflows/auto-fix.md`](workflows/auto-fix.md). **Ghi đè file nguồn** — cần git repo, khuyến nghị working tree sạch trước khi chạy. |
| `--run-tests` | — | Chỉ có tác dụng cùng `--auto-fix`: cho phép chạy test của project (`go test ./...`, `dotnet test`) để verify bản nâng version dependency. **Test có thể đụng hệ thống thật** (DB, dịch vụ trong `.env`) — chỉ bật khi test an toàn. Không bật → bump dependency chỉ là gợi ý patch. |

Ví dụ:
```
/vbs-scan-security pr id 42 lang=en
/vbs-scan-security staged --vi
/vbs-scan-security commit within 7days

Сообщить о проблеме

Foxx AIvbsec — проверка безопасности кода, написанного ИИ
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.