BF Session Audit
Аудитор безопасности сессий и файлов cookie (OWASP A07:2021 — ошибки идентификации и аутентификации). Сканирует исходный код Express/Koa/Fastify, Flask/Django/FastAPI, Go net/http, Spring Boot и Rails на наличие 10 уязвимостей управления сессиями — отсутствующие флаги HttpOnly/Secure/SameSite для файлов cookie, токен сессии в URL, фиксация сессии (нет регенерации после входа), отсутствие защиты CSRF, данные сессии в localStorage, отсутствие тайм-аута сессии, слабое создание идентификатора сессии и слишком широкий диапазон домена cookie. Ноль внешних зависимостей. Включен CI fail-gate.
машинный переводПоказать оригиналСкрыть оригинал«Session and cookie security auditor (OWASP A07:2021 — Identification a…»
Session and cookie security auditor (OWASP A07:2021 — Identification and Authentication Failures). Scans Express/Koa/Fastify, Flask/Django/FastAPI, Go net/http, Spring Boot, and Rails source code for 10 session management weaknesses — missing HttpOnly/Secure/SameSite cookie flags, session token in URL, session fixation (no regenerate after login), missing CSRF protection, session data in localStorage, missing session timeout, weak session ID generation, and overly broad cookie domain scope. Zero external dependencies. CI fail-gate included.
Аудитор безопасности сессий и файлов cookie (OWASP A07:2021 — ошибки идентификации и аутентификации).
Как процесс F 26/100 · Не запустится — Скилл ссылается на файлы, которых нет в архиве: ?:token|session_id|auth|session|access_token, ?:token|session|auth
Как улучшить
- Скажите в description, КОГДА применять скилл («используй, когда…», примеры запросов): это главный сигнал для агента.
- Тело SKILL.md длиннее 5 000 токенов: вынесите справочные детали в references/ и подключайте по необходимости.
- В тексте есть ссылки на отсутствующие файлы: добавьте файлы или уберите ссылки.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 0
✓ Критических и высоких находок нет
Просканировано файлов: 2. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
name-formatname должен быть в kebab-case (строчные буквы, цифры, дефисы) - предупреждение
description-no-whendescription не говорит, КОГДА применять скилл (нет "use when / используй когда") - предупреждение
body-longтело SKILL.md ≈ 7556 токенов (рекомендуется < 5000); вынесите детали в references/ - предупреждение
missing-refссылка на отсутствующий файл: ?:token|session_id|auth|session|access_token - предупреждение
missing-refссылка на отсутствующий файл: ?:token|session|auth - заметка
frontmatter-keyнеизвестное поле фронтматтера "homepage"
Процессный рейтинг: все десять параметров 26/100
- 0Инструменты и файлы. Не хватает 2 файла(ов): ?:token|session_id|auth|session|access_token, ?:token|session|auth
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Ошибки и развилки. Линейный процесс без обработки сбоев
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 20Когда включается. Не сказано, при каком запросе скилл включается
- 30Повторный запуск. Изменяющих операций: 3, без проверки текущего состояния
- 40Согласованность. Имя во frontmatter (Session Audit) не совпадает с папкой (phy-session-audit)
- 70Стоимость исполнения. Тело инструкции 7556 токенов
- 100Шаги. Шагов: 10
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Формат ответа не описан: модель каждый раз решает сама
- +2Инструкции на одном языке
- +3Длина description 546 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 20 заголовков
- +3Пошаговые инструкции: 10 пунктов
- +4Есть примеры (4 блоков кода)
- +1Лицензия указана
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 48.