From 7455aadb28d2f0251f843c5a041cd4356a62b65c Mon Sep 17 00:00:00 2001 From: Dmitry Gusev Date: Sun, 24 May 2026 17:04:39 +0300 Subject: [PATCH] =?UTF-8?q?docs(security):=20SECURITY.md=20=D1=81=20=D0=BE?= =?UTF-8?q?=D0=BF=D0=B8=D1=81=D0=B0=D0=BD=D0=B8=D0=B5=D0=BC=20Layer=20A+B+?= =?UTF-8?q?C=20stack?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Описывает все автоматические проверки: Trivy, npm audit (A), Nuclei (B), Hadolint+GitLeaks+Semgrep (C). Email для приватных репортов: admin@hhivp.com. Co-Authored-By: Claude Opus 4.7 --- SECURITY.md | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 SECURITY.md diff --git a/SECURITY.md b/SECURITY.md new file mode 100644 index 0000000..558daae --- /dev/null +++ b/SECURITY.md @@ -0,0 +1,45 @@ +# Security Policy + +## Supported versions + +Только текущая версия `main` — site deployed continuously, отдельных release-веток нет. + +## Reporting a vulnerability + +Email: **admin@hhivp.com** (PGP опционально по запросу). + +Просим **не публиковать** баг до подтверждения исправления (≤14 дней). + +## Security stack (automated) + +Этот репозиторий покрыт многоуровневой автоматической проверкой: + +### Layer A — на каждый push в `main` (deploy CI) + +- **Trivy** — сканирование Docker image на HIGH/CRITICAL CVE в OS-пакетах и npm-deps (warning-only, `--ignore-unfixed`). +- **npm audit** — проверка зависимостей на известные CVE в `Dockerfile` после `npm ci` (warning-only, `--audit-level=high --omit=dev`). + +### Layer B — еженедельно (Sun 04:00 UTC, cron) + +- **Nuclei** — DAST (Dynamic Application Security Testing) живого сайта. Шаблоны: exposures, misconfig, headers, CVE. Severity: HIGH+CRITICAL. +- Нотификация в Telegram при находках. + +### Layer C — на каждый push в `main` + на MR/PR (`.gitea/workflows/security.yml`) + +- **Hadolint** — bad practices в `Dockerfile`. +- **GitLeaks** — поиск секретов в git-истории (`fetch-depth: 0`). +- **Semgrep** — SAST (Static Application Security Testing) с конфигами `p/javascript`, `p/react`, `p/typescript`, `p/security-audit`. + +Все три инструмента **warning-only** — не блокируют deploy, но finding'и видны в логах job'а. + +### Дополнительно + +- **152-ФЗ consent-gated analytics** — Я.Метрика и Google Analytics загружаются только после явного согласия пользователя в баннере cookies. +- **HTTPS-only** — Let's Encrypt cert, HSTS включён. +- **Security headers** — `X-Frame-Options`, `X-Content-Type-Options`, `Referrer-Policy`, `Permissions-Policy`, `Content-Security-Policy`. +- **Rate limiting** — на `/api/contact` (5 req/min per IP) + Cloudflare Turnstile widget. + +## Contact + +- Email: admin@hhivp.com +- Site: https://hhivp.com/