SKILLEMALL.ai

CC hunt-xss

Навык поиска уязвимостей XSS.

машинный переводПоказать оригиналСкрыть оригинал«Hunting skill for xss vulnerabilities.…»

Hunting skill for xss vulnerabilities.

sickn33/agentic-awesome-skills Agent Skills автор: sickn33 MIT 2 файла тело ≈ 5 384 токенов Открыть источникgithub.com↗ проанализирован 5 дн назад

Навык поиска уязвимостей XSS.

Как процесс C 55/100 · Есть пробелы — слабые места: результат и критерий готовности, когда включается, повторный запуск

ПроцедураБезопасностьтип и темы размечены автоматически по тексту скилла
JSON
Технический рейтинг
C
81/100
безопасность, качество, тесты
Безопасность 60%
92
Качество 40%
65
Прогон на моделях
не было
Процессный рейтинг
C
55/100
Есть пробелы
Результат и критерий готовности вес 14
0
Когда включается вес 12
0
Повторный запуск вес 4
30
три самых слабых из десяти параметров · все десять
Это копия скилла из другого каталога, в рейтинге считается основная: hunt-xss (sickn33/agentic-awesome-skills)

Как улучшить

  1. Тело SKILL.md длиннее 5 000 токенов: вынесите справочные детали в references/ и подключайте по необходимости.
Для прогона на моделях — необязательно
  • Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
  • spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.

Находки guard · 8

✓ Критических и высоких находок нет

Средние и низкие: 8
  • низкая Рискованное назначение intent-offensive-security references/details.md:54
    Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)
    - **Impact:** Privilege escalation from low-priv user to admin via stored XSS — attacker promotes themselves on the privileged user's behalf.
  • низкая Рискованное назначение intent-offensive-security references/details.md:55
    Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение) (определение детектора / чёрного списка)
    - **Real shape:** GitLab/Jira/Confluence markdown-XSS-to-admin-priv-esc class; common payout pattern is High (privilege escalation severity bump over standalone stored XSS).
    детектор
  • низкая Рискованное назначение intent-offensive-security references/details.md:59
    Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)
    When you confirm XSS at A, immediately ask: what state-changing endpoint or token store does this JS now have access to? *Where does the payload run, and who sees it?* No payout multiplier is establis
  • низкая Рискованное назначение intent-offensive-security SKILL.md:49
    Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)
    - **Payment/financial flows** (`paypal.com`, checkout pages, currency converters) — XSS here enables credential harvesting and financial fraud at scale
  • низкая Рискованное назначение intent-offensive-security SKILL.md:137
    Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)
    2. **Classify by type** — Determine if each reflection is Reflected (URL param → response), Stored (database → later rendering), or DOM-based (JS reads URL/storage → DOM sink). Each requires different
  • низкая Опасные команды cmd-eval-dynamic SKILL.md:308
    Динамическое выполнение кода из декодированного/недоверенного ввода (документация security-скилла)
    <svg onload=eval(atob('YWxlcnQoMSk='))> <!-- security-allowlist: documented payload technique reference, do not execute outside authorized scope -->
    security-скилл
  • низкая Рискованное назначение intent-offensive-security SKILL.md:355
    Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение) (в кавычках — упоминание, а не команда)
    An attacker discovered that a major payment platform's sign-in page reflected user-controlled input and was cached by the CDN layer. By sending a crafted request that poisoned the cache, the attacker 
    в кавычках

Ещё 1 совпадений отнесены к цитатам в документации скилла по безопасности и не считаются находками.

Просканировано файлов: 2. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.

По спецификации Agent Skills

  • предупреждение description-short description короче 40 символов: модели не хватит сигнала для срабатывания
  • предупреждение body-long тело SKILL.md ≈ 5384 токенов (рекомендуется < 5000); вынесите детали в references/
  • заметка frontmatter-key неизвестное поле фронтматтера "risk"
  • заметка frontmatter-key неизвестное поле фронтматтера "source"
  • заметка frontmatter-key неизвестное поле фронтматтера "source_repo"
  • заметка frontmatter-key неизвестное поле фронтматтера "source_type"
  • заметка frontmatter-key неизвестное поле фронтматтера "date_added"
  • заметка frontmatter-key неизвестное поле фронтматтера "license_source"
  • заметка frontmatter-key неизвестное поле фронтматтера "sources"
  • заметка frontmatter-key неизвестное поле фронтматтера "report_count"
  • заметка edit-residue в тексте есть пометки об устаревшем (строки 278, 316): проверьте, не остались ли старые правила рядом с новыми — полная проверка читает текст на противоречия

Процессный рейтинг: все десять параметров 55/100

  • 0Результат и критерий готовности. Не сказано, что считать результатом
  • 0Когда включается. Не сказано, при каком запросе скилл включается
  • 30Повторный запуск. Изменяющих операций: 6, без проверки текущего состояния
  • 60Инструменты и файлы. Используются инструменты (web), но во frontmatter они не объявлены
  • 60Ошибки и развилки. Развилок: 2
  • 70Входы и предусловия. Входные данные и предусловия перечислены
  • 70Стоимость исполнения. Тело инструкции 5384 токенов
  • 100Шаги. Шагов: 67
  • 100Согласованность. Имя и обязательные поля на месте
  • 100Отчётность по ходу. Скилл сообщает о ходе работы
  • medium Правила безопасности и запреты внутри скилла: их место в системном промпте, здесь они не защищают
  • low Разделов верхнего уровня: 14. Похоже на несколько доменов в одном скилле
  • low Ответ описан самодельной разметкой (19 тегов): типизированный вызов надёжнее

Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.

Сигналы качества

  • +5В description нет примеров фраз, по которым скилл должен срабатывать
  • +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
  • +3Длина description 38: рекомендуется 120–800 символов
  • +3Формат ответа не описан: модель каждый раз решает сама
  • +2Инструкции на одном языке
  • +4Структура: 16 заголовков
  • +3Пошаговые инструкции: 67 пунктов
  • +4Есть примеры (21 блоков кода)
  • +4Справочные файлы упоминаются в инструкциях (1 из 1)
  • +1Лицензия указана

База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 65.