CB exploiting-prototype-pollution-in-javascript
Обнаруживает и использует уязвимости JavaScript prototype pollution в клиентских и серверных (Node.js) приложениях для достижения XSS, RCE или обхода аутентификации путем внедрения свойств в Object.prototype. Используйте при оценке JavaScript/Node.js приложения на предмет prototype pollution, особенно там, где функция слияния, клонирования или расширения принимает ключи, контролируемые пользователем.
машинный переводПоказать оригиналСкрыть оригинал«Detects and exploits JavaScript prototype pollution vulnerabilities in…»
Detects and exploits JavaScript prototype pollution vulnerabilities in client-side and server-side (Node.js) applications to achieve XSS, RCE, or authentication bypass through property injection into Object.prototype. Use when assessing a JavaScript/Node.js application for prototype pollution, especially where a merge, clone, or extend function accepts user-controlled keys.
Обнаруживает и использует уязвимости JavaScript prototype pollution в клиентских и серверных (Node.js) приложениях для достижения XSS, RCE или обхода…
Как процесс B 70/100 · Почти готов — слабые места: когда включается, ошибки и развилки, отчётность по ходу
Как улучшить
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 3
✓ Критических и высоких находок нет
Средние и низкие: 3
-
низкая Рискованное назначение
intent-offensive-securityreferences/api-reference.md:39Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)### Privilege Escalation
-
низкая Рискованное назначение
intent-offensive-securitySKILL.md:216Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)3. **Admin Privilege Escalation** — Pollute isAdmin or role properties to bypass authorization checks in Node.js applications
-
низкая Рискованное назначение
intent-offensive-securitySKILL.md:232Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)| 2 | POST /api/profile __proto__ | isAdmin property | Auth middleware | Privilege Escalation |
Просканировано файлов: 4. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- заметка
frontmatter-keyнеизвестное поле фронтматтера "domain" - заметка
frontmatter-keyнеизвестное поле фронтматтера "subdomain" - заметка
frontmatter-keyнеизвестное поле фронтматтера "nist_csf" - заметка
frontmatter-keyнеизвестное поле фронтматтера "mitre_attack"
Процессный рейтинг: все десять параметров 70/100
- 0Ошибки и развилки. Линейный процесс без обработки сбоев
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 20Когда включается. Не сказано, при каком запросе скилл включается
- 60Результат и критерий готовности. Формат результата описан, критерия завершения нет
- 70Входы и предусловия. Входные данные и предусловия перечислены
- 100Инструменты и файлы. Внешние инструменты не нужны
- 100Шаги. Шагов: 16
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 2142 токенов
- 100Повторный запуск. Изменяющих операций нет
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- -41 справочных файлов, но SKILL.md на них не ссылается: модель их не откроет
- -31 из 1 скриптов не упомянуты в SKILL.md
- +2Инструкции на одном языке
- +3Длина description 376 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 14 заголовков
- +3Пошаговые инструкции: 16 пунктов
- +3Формат ответа описан явно
- +4Есть примеры (7 блоков кода)
- +1Лицензия указана
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 78.