# security-and-owasp

Правило помогает GitHub Copilot находить небезопасные паттерны в веб-приложениях и предлагать исправления. Пригодится при работе с SQL-запросами, пользовательским вводом и файловыми путями.

- правило · `type=rule` · GitHub Copilot · ★ 40418
- Автор: github · официальный репозиторий GitHub
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/github/awesome-copilot/tree/HEAD/instructions/security-and-owasp.instructions.md
- Обновлён: 2026-10-23
- HTML: https://affpapa.org/nevibecode/rules/security-and-owasp

## Что делает

Правило применяется ко всем файлам проекта и описывает уязвимости с уровнями серьёзности, способами обнаружения, ссылками на OWASP 2025 и примерами исправлений. Среди разобранных проблем — SQL- и NoSQL-инъекции, выполнение команд с пользовательским вводом, XSS, SSRF и обход путей к файлам.

Для каждой уязвимости приведены признаки, по которым её можно распознать, и варианты защиты. Например, вместо SQL-запроса со склеенными строками предлагается параметризованный запрос, а для HTML — очистка через DOMPurify или вывод обычного текста. В рекомендациях по выполнению команд отдельно учитываются тайм-аут и ограничение размера вывода.

Добавьте файл правила в `.github/instructions/security-and-owasp.instructions.md`. Примеры в описанной части ориентированы на TypeScript и Node.js; для проверки решений в другом стеке пригодность конкретных примеров стоит оценить отдельно.

## Установка

### GitHub Copilot (родная платформа)

**Вручную: положить файлы**
- Файл: `.github/instructions/security-and-owasp.instructions.md` — Поле applyTo задаёт, к каким файлам применять

### Claude Code

**Вручную: положить файлы**
- Файл: `.claude/rules/security-and-owasp.md` — Поле paths во frontmatter ограничивает файлы: applyTo из источника → paths

### Codex

**AGENTS.md**
- Codex читает AGENTS.md: вставьте текст правила туда

### Cursor

**Вручную: положить файлы**
- Файл: `.cursor/rules/security-and-owasp.mdc` — Во frontmatter: description, globs, alwaysApply. applyTo из источника → globs, иначе правило само не подключится

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/rules/security-and-owasp.md`

### Cline

**Вручную: положить файлы**
- Файл: `.clinerules/security-and-owasp.md`

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/github/awesome-copilot/tree/HEAD/instructions/security-and-owasp.instructions.md

## Когда брать
- найти SQL-инъекцию в запросе к базе
- проверить обработку пользовательского HTML на XSS
- заметить передачу пользовательского ввода в команду оболочки
- защитить загрузку URL от SSRF
- проверить файловый путь на обход каталога

## Примеры запросов агенту
- Проверь этот обработчик на SQL-инъекции и предложи исправление по правилу безопасности.
- Найди в компоненте места, где пользовательский HTML может привести к XSS.
- Проверь чтение файла по параметру запроса на обход каталога.

Из того же набора: [github/awesome-copilot](https://affpapa.org/nevibecode/by/github/awesome-copilot.md) — 861 карточка

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
