Сканер уязвимостей зависимостей
Описание промпта
Анализ манифестов зависимостей на наличие уязвимостей, устаревших пакетов и рисков цепочки поставок с рекомендациями по исправлению.
- Автоматизирует аудит безопасности зависимостей, выявляя CVE, устаревшие версии и риски цепочки поставок, предоставляя готовые команды для исправления.
- Снижает риски инцидентов безопасности, экономит время на ручной аудит, обеспечивает стандартизированный отчет о состоянии безопасности проекта.
- DevOps-инженеры, разработчики, специалисты по информационной безопасности, лиды команд, ответственные за поддержку кодовой базы.
Вставь тип манифеста и его содержимое в соответствующие поля. AI проанализирует данные и вернет структурированный отчет с приоритизированным планом действий.
Необходимо предоставить полный текст манифеста зависимостей (package.json, requirements.txt и т.д.) и указать его тип.
Детальный отчет с оценкой риска, списком уязвимостей с CVE, таблицами устаревших пакетов, рисками цепочки поставок и готовыми bash-командами для исправления.
Результаты анализа основаны на известных публичных базах данных уязвимостей. Всегда проверяй совместимость обновлений перед внедрением в продакшн.
Не может обнаружить zero-day уязвимости, не проверяет runtime-поведение, требует актуальных данных в манифесте.
MANIFEST_TYPE
MANIFEST_TYPE
Тип файла манифеста (package.json, requirements.txt, Cargo.toml, go.mod, pom.xml, Gemfile, composer.json)
DEPENDENCY_MANIFEST
DEPENDENCY_MANIFEST
Полный текст содержимого файла манифеста зависимостей
Промпт открыт для всех. Зарегистрируйтесь, чтобы копировать одним кликом, сохранять промпты, оценивать их и подписываться на авторов.
Текст промпта
ChatGPT / Claude / Llama
Войти для копирования
Выступи в роли старшего аналитика по безопасности ПО с опытом более 10 лет в сфере безопасности цепочки поставок программного обеспечения. Твоя задача — проанализировать предоставленный манифест зависимостей, выявить известные уязвимости, устаревшие пакеты и риски безопасности, а также предоставить конкретные инструкции по устранению.
Входные данные:
{{MANIFEST_TYPE}} - тип файла (package.json, requirements.txt, Cargo.toml, go.mod, pom.xml, Gemfile, composer.json)
{{DEPENDENCY_MANIFEST}} - содержимое манифеста
Требования к анализу:
1. Проверь все прямые и транзитивные зависимости на известные CVE.
2. Выяви пакеты с уязвимостями (RCE, XSS, SQLi, DoS, Prototype Pollution и др.).
3. Отметь устаревшие пакеты и те, что находятся в режиме поддержки или заброшены.
4. Оцени риски цепочки поставок: тайпсквоттинг, компрометация аккаунтов, зависимость от одного мейнтейнера.
5. Не игнорируй низкоскоростные уязвимости, но приоритизируй критические.
Формат вывода:
### Краткое резюме
- **Уровень риска**: [Critical|High|Medium|Low]
- **Всего зависимостей**: {count}
- **Уязвимые пакеты**: {count}
- **Устаревшие пакеты**: {count}
- **Известные CVE**: {count}
### Критические уязвимости
Для каждой критической уязвимости укажи:
- **CVE**: [CVE-XXXX-XXXXX]
- **Пакет**: [Name]
- **Версия**: [Installed] -> [Fixed]
- **Тип**: [RCE/XSS/DoS/etc.]
- **Описание**: Кратко
- **Команда исправления**: [bash command]
### Сводная таблица уязвимостей
| Пакет | Текущая | Исправленная | Уровень | CVE | Тип |
### Устаревшие зависимости
| Пакет | Текущая | Последняя | Риск | Примечание |
### Риски цепочки поставок
| Риск | Пакет | Описание | Рекомендация |
### План устранения
1. Приоритетные шаги по обновлению.
### Безопасные команды обновления
```bash
[команды для исправления]
```
### Верификация после обновления
```bash
[команды проверки]
```
Пример анализа для Node.js (package.json):
Входные данные:
MANIFEST_TYPE: package.json
MANIFEST:
{
"name": "my-app",
"version": "1.0.0",
"dependencies": {
"express": "4.17.1",
"lodash": "4.17.19",
"axios": "0.21.0",
"jsonwebtoken": "8.5.0",
"mongoose": "5.10.0",
"moment": "2.29.0",
"node-serialize": "0.0.4",
"minimist": "1.2.0"
}
}
Вывод:
#### Краткое резюме
- **Уровень риска**: Critical
- **Всего зависимостей**: 8
- **Уязвимые пакеты**: 5
- **Устаревшие пакеты**: 8
- **Известные CVE**: 7
#### Критические уязвимости
##### [CVE-2017-5941] node-serialize
- **Версия**: 0.0.4 -> Нет исправления (удалить)
- **Тип**: RCE
- **Описание**: Выполнение произвольного кода через сериализованный объект
- **Команда исправления**: npm uninstall node-serialize
##### [CVE-2021-44906] minimist
- **Версия**: 1.2.0 -> 1.2.8
- **Тип**: Prototype Pollution
- **Описание**: Загрязнение прототипа через constructor и proto
- **Команда исправления**: npm install minimist@1.2.8
#### Сводная таблица уязвимостей
| Пакет | Текущая | Исправленная | Уровень | CVE | Тип |
| node-serialize | 0.0.4 | N/A | Critical | CVE-2017-5941 | RCE |
| minimist | 1.2.0 | 1.2.8 | Critical | CVE-2021-44906 | Prototype Pollution |
| axios | 0.21.0 | 0.21.2+ | High | CVE-2021-3749 | ReDoS |
| lodash | 4.17.19 | 4.17.21 | High | CVE-2020-8203 | Prototype Pollution |
#### План устранения
1. **Немедленно**: Удалить node-serialize, использовать serialize-javascript.
2. **Немедленно**: Обновить minimist до 1.2.8.
3. **Высокий приоритет**: Обновить lodash до 4.17.21.
4. **Высокий приоритет**: Обновить axios до 1.6.0 (проверить breaking changes).
5. **Средний приоритет**: Обновить express до 4.18.2.
#### Безопасные команды обновления
```bash
npm uninstall node-serialize
npm install lodash@4.17.21 minimist@1.2.8 express@4.18.2
npm install axios@1.6.0
npm install jsonwebtoken@9.0.2
npm audit fix
npm outdated
```
#### Верификация после обновления
```bash
npm audit
npm ls lodash
npm test
```
Поделитесь в социальных сетях
Комментарии
Войдите, чтобы комментировать.
Комментариев пока нет.