SKILLEMALL.ai

BC hunt-xss

Навык поиска XSS-уязвимостей. Основан на 174 общедоступных отчетах об ошибках. Используйте при поиске XSS на любом целевом объекте. Для внедрения разметки, которая отражает необработанный HTML, но НЕ выполняет JavaScript (без выполнения `<script>`/обработчика событий), см. hunt-html-injection — эскалируйте сюда, как только станет возможно выполнение скрипта.

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

Hunting skill for xss vulnerabilities. Built from 174 public bug bounty reports. Use when hunting xss on any target. For markup injection that reflects raw HTML but does NOT execute JavaScript (no `<script>`/event-handler execution), see hunt-html-injection — escalate here once script execution is possible.

elementalsouls/Claude-BugHunter Agent Skills автор: elementalsouls 1 файл тело ≈ 7 257 токенов Открыть источникgithub.com проанализирован 3 ч назад

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

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

ПроцедураРазработкаДанные и аналитикаБезопасностьтип и темы размечены автоматически по тексту скилла
JSON
Технический рейтинг
B
85/100
безопасность, качество, тесты
Безопасность 60%
93
Качество 40%
72
Прогон на моделях
не было
Процессный рейтинг
C
50/100
Есть пробелы
Результат и критерий готовности вес 14
0
Входы и предусловия вес 11
0
Когда включается вес 12
20
три самых слабых из десяти параметров · все десять

Как улучшить

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

Находки guard · 7

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

Средние и низкие: 7
  • низкая Рискованное назначение intent-offensive-security SKILL.md:3
    Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)
    description: Hunting skill for xss vulnerabilities. Built from 174 public bug bounty reports. Use when hunting xss on any target. For markup injection that reflects raw HTML but does NOT execute JavaS
  • низкая Рискованное назначение intent-offensive-security SKILL.md:50
    Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)
    - **Payment/financial flows** (`paypal.com`, checkout pages, currency converters) — XSS here enables credential harvesting and financial fraud at scale
  • низкая Рискованное назначение intent-offensive-security SKILL.md:151
    Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)
    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:322
    Динамическое выполнение кода из декодированного/недоверенного ввода (документация security-скилла)
    <svg onload=eval(atob('YWxlcnQoMSk='))>
    security-скилл
  • низкая Рискованное назначение intent-offensive-security SKILL.md:369
    Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение) (в кавычках — упоминание, а не команда)
    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 
    в кавычках
  • низкая Рискованное назначение intent-offensive-security SKILL.md:428
    Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)
    - **Impact:** Privilege escalation from low-priv user to admin via stored XSS — attacker promotes themselves on the privileged user's behalf.

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

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

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

  • предупреждение body-long тело SKILL.md ≈ 7257 токенов (рекомендуется < 5000); вынесите детали в references/
  • заметка frontmatter-key неизвестное поле фронтматтера "sources"
  • заметка frontmatter-key неизвестное поле фронтматтера "report_count"
  • заметка edit-residue в тексте есть пометки об устаревшем (строки 303, 341): проверьте, не остались ли старые правила рядом с новыми — полная проверка читает текст на противоречия

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

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

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

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

  • +5В description нет примеров фраз, по которым скилл должен срабатывать
  • +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
  • +3Формат ответа не описан: модель каждый раз решает сама
  • +1Лицензия не указана
  • +2Инструкции на одном языке
  • +3Длина description 308 символов: достаточно сигнала, не съедает бюджет
  • +4Структура: 22 заголовков
  • +3Пошаговые инструкции: 113 пунктов
  • +4Есть примеры (23 блоков кода)

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