Безопасность стартапа перед запуском продаж: что проверить до того, как к вам придут первые клиенты
Практический гайд для CTO, Tech Lead и AppSec — от утечек секретов и уязвимых зависимостей до 152-ФЗ и готовности к B2B-сделкам
Введение: почему большинство стартапов делают это в обратном порядке
Большинство команд, которые строят продукт, думают о безопасности примерно так: «сначала выпустим MVP, потом разберёмся». Это понятная логика — ресурсы ограничены, фокус нужен на продукте и первых продажах. Но именно в момент перехода от разработки к реальным клиентам возникает окно уязвимости, которое уже стоило многим компаниям гибели.
Ранний стартап — идеальная мишень для атаки. Ценные данные есть (пользователи, платёжная информация, внутренняя разработка), а защита нулевая: нет dedicated security-инженера, контроль изменений слабый, в репозитории захардкожены ключи от prod-окружения, CI/CD-пайплайн никто не настраивал с позиции безопасности. При этом первый же enterprise-клиент задаст вопрос: «Пришлите ваш security questionnaire». Если у вас нет готовых ответов — сделки не будет.
Эта статья — структурированный операционный гид для CTO, Tech Lead и AppSec-специалиста: что проверить и зафиксировать до первых продаж, чтобы не превратить первый реальный инцидент в последний рабочий день компании.
Часть 1. Почему атака приходит раньше, чем вы думаете
Стартапы в прицеле: цифры, которые стоит знать
Распространённое заблуждение: «мы маленькие, нас не интересно атаковать». Реальность противоположная. Согласно Verizon 2024 Data Breach Investigations Report, 46% всех кибербрешей затрагивают компании с менее чем 1 000 сотрудников [1]. Средняя стоимость инцидента для малого бизнеса — от $120 000 до $1,24 миллиона, в зависимости от масштаба [7]. При этом около 60% таких компаний закрываются в течение шести месяцев после серьёзной атаки [8].
Цифры не для паники — они для приоритизации. Суть в другом: атаки на стартапы автоматизированы. Сканеры ищут открытые порты, захардкоженные секреты, уязвимые зависимости и неправильно настроенные облака — без разбора, большая у вас компания или нет. Если вы существуете в интернете, вы уже в поле зрения.
Вектор №1: ваши секреты уже могут быть публичными
В 2024 году GitHub зафиксировал более 39 миллионов утечек API-ключей, токенов и учётных данных — рост на 25% по сравнению с предыдущим годом [2]. Это не только public-репозитории: приватные репозитории тоже компрометируются — через случайное переключение видимости, через CI/CD-переменные, через файлы в истории коммитов.
Исследователи Wiz, изучая репозитории компаний из списка Forbes AI 50, нашли реальные секреты у большинства из них, включая стартапы с крупными раундами. В одном из кейсов API-ключи ElevenLabs оказались в открытом доступе в plaintext — исследователи прямо связали это с практикой vibe coding, при которой AI-ассистент генерирует код быстро, но без контроля того, что именно попадает в репозиторий [9].
Критично: скомпрометированный секрет — это не просто «ещё один пароль». По данным GitHub, злоумышленники используют «low risk» секреты для lateral movement к более высокоценным активам [10]. Один токен с read-доступом к репозиторию открывает путь к prod-базе данных, к списку клиентов, к инфраструктурным ключам.
Вектор №2: ваши зависимости — это чужой код, которому вы доверяете слепо
OWASP Top 10:2025 добавил новую категорию A03:2025 — Software Supply Chain Failures, расширив предыдущую «Vulnerable and Outdated Components» до более широкого понятия: компрометация внутри или поперёк всей экосистемы зависимостей, систем сборки и дистрибуции [5]. Это не случайно.
В 2025 году атаки на npm, PyPI и Docker Hub резко выросли [3]. Механика типичной атаки: злоумышленник использует typosquatting (пакет с именем, похожим на популярный), dependency confusion (пакет с тем же именем, что у внутреннего, но опубликованный в публичном реестре) или компрометирует аккаунт мейнтейнера через фишинг. Результат — вредоносный код попадает в prod-сборку через команду npm install или pip install.
Реальный пример декабря 2024 года: популярная библиотека Ultralytics (около 80 миллионов загрузок в месяц) была скомпрометирована через GitHub Actions — злоумышленники украли токен публикации PyPI и внедрили криптомайнер в четыре версии пакета [11]. Тысячи разработчиков установили малвару стандартной командой установки.
Для стартапа, который ускорил разработку с помощью AI и добавляет новые зависимости несколько раз в неделю, этот вектор особенно актуален: AI-ассистент может предложить реально несуществующий пакет («package hallucination»), который окажется занят злоумышленником, или порекомендовать устаревшую версию с известной уязвимостью.
Вектор №3: ошибки конфигурации
A02:2025 в OWASP Top 10 — Security Misconfiguration — поднялась с пятого на второе место [12]. Данные подтверждают: в 2024 году количество инцидентов, связанных с неправильной конфигурацией, снова выросло. Среди типичных ошибок: слишком широкий CORS, открытые S3 bucket, публичные Kubernetes dashboard, дефолтные пароли на dev-окружении, отладочные эндпоинты, доступные в prod.
Часть 2. Пять блоков безопасности перед запуском продаж
Блок 1: Секреты и управление учётными данными
Первое, что нужно сделать — провести полный аудит того, где у вас хранятся секреты. Типичная картина в стартапе:
- API-ключи в
.envфайлах, которые иногда попадают в репозиторий; - захардкоженные credentials в коде (особенно в migration-скриптах, internal tools, тестовых фикстурах);
- секреты в переменных окружения CI/CD, которые логируются или доступны через pull request от форков;
- реальные prod-ключи, которые разработчики используют локально «для удобства».
Что делать до запуска:
Внедрить vault-решение (HashiCorp Vault, AWS Secrets Manager, GCP Secret Manager, Doppler) для централизованного хранения секретов. Провести git log и git grep по всей истории репозитория — секрет, который однажды был в коммите, остаётся доступным даже после удаления файла, пока вы не перепишете историю или не ротируете ключ. Подключить GitGuardian или аналог для мониторинга публичных и приватных репозиториев. Включить GitHub Secret Scanning push protection — по умолчанию это блокирует утечку «нескольких секретов в минуту» [10]. Настроить ротацию ключей и убедиться, что у каждого ключа минимальные необходимые права.
Операционный вывод: перед релизом запустите trufflehog или gitleaks по всей истории репозитория. Если нашли — ротируйте немедленно, не просто удаляйте из кода.
Блок 2: Управление зависимостями и supply chain
Каждая новая зависимость — это код, который вы не писали и за который несёте ответственность перед своими пользователями. Это касается не только прямых зависимостей, но и транзитивных: npm-дерево в среднем проекте содержит сотни пакетов.
Минимальный baseline до запуска:
Запустить SCA (Software Composition Analysis) — Snyk, Dependabot, Socket.dev или OWASP Dependency-Check — и закрыть все уязвимости уровня Critical и High в зависимостях. Сгенерировать SBOM (Software Bill of Materials) — это список всех компонент вашего продукта с версиями. SBOM нужен не только для безопасности: enterprise-клиенты всё чаще требуют его при due diligence [13]. Зафиксировать версии через lock-файлы (package-lock.json, Pipfile.lock, go.sum) и не игнорировать их при ревью. Установить политику: новые зависимости проходят проверку до merge, а не после.
Отдельный риск — package hallucinations в AI-кодинге. Если разработчики используют Copilot или другие LLM-ассистенты, существует вероятность, что модель предложит несуществующий пакет с реалистичным названием. Такое имя может быть зарезервировано злоумышленником с вредоносным кодом. Каждый новый пакет должен верифицироваться: проверить репозиторий, дату публикации, количество загрузок, историю мейнтейнеров.
Блок 3: Безопасность кода и конфигурации (SAST + CI/CD gate)
Перед запуском продаж CI/CD должен стать security gate, а не просто конвейером доставки кода.
Практический minimum:
Добавить SAST (статический анализ кода) в pipeline — Semgrep (бесплатный для open source), CodeQL (бесплатен для GitHub), SonarQube или Checkmarx в зависимости от стека. Настроить OWASP ZAP или аналог для динамического тестирования на staging-окружении. Проверить конфигурацию облака — AWS Security Hub, GCP Security Command Center или tfsec/checkov для Terraform. Audit CI/CD-файлы (.github/workflows, Jenkinsfile, .gitlab-ci.yml) — это критическая поверхность атаки: скомпрометированный workflow может дать злоумышленнику полный доступ к prod-окружению [14]. В 2025 году атака GhostAction через GitHub Actions привела к краже 3 300+ секретов из более 570 репозиториев [11].
Отдельное внимание нужно уделить конфигурационным файлам, миграциям баз данных и internal tools — они читаются хуже всего при code review, но часто содержат самые чувствительные данные: hardcoded credentials, отладочные настройки, слишком широкие разрешения.
Операционный вывод: настройте правило — PR не может быть merged при наличии Critical-уязвимостей из SAST. Это не бюрократия, а минимальная контрольная точка.
Блок 4: Аутентификация, авторизация и управление доступом
A01:2025 в OWASP Top 10 — Broken Access Control — удерживает первое место, в среднем присутствуя в 3,73% протестированных приложений [12]. Для SaaS-продукта это критично: логические уязвимости в авторизации позволяют одному клиенту получить доступ к данным другого (BOLA — Broken Object Level Authorization).
Что проверить до запуска:
Multi-factor authentication (MFA) обязательна для всех внутренних инструментов (GitHub, AWS, GCP, Vercel, Cloudflare, CRM). Принцип least privilege — каждая роль получает минимально необходимые права, никаких «дам admin, чтобы точно работало». RBAC (role-based access control) в продукте: проверить, что пользователь tenant A не может получить данные tenant B через изменение ID в URL или API-запросе. Управление сессиями: ограниченное время жизни токенов, возможность инвалидации. Для API — проверка авторизации на каждом эндпоинте, не только на уровне аутентификации.
По данным исследований, самые распространённые SaaS-брешы в 2024–2025 году эксплуатировали именно BOLA — когда API возвращает данные любого customer ID без проверки прав на конкретный объект [1].
Блок 5: Compliance и регуляторные требования
Этот блок часто откладывают на потом, но именно он блокирует первые серьёзные сделки.
Для российского рынка — 152-ФЗ:
С 30 мая 2025 года в России действуют значительно ужесточённые требования к операторам персональных данных [15]. Ключевые изменения:
Штрафы за утечку больше не символические: повторная утечка данных — от 1 до 3% от годовой выручки компании [4]. За неуведомление Роскомнадзора об утечке — до 1–3 млн рублей [16]. Уведомление при утечке обязательно в течение 24 часов, уведомление пострадавших — в течение 10 дней [17]. С декабря 2024 года действует уголовная ответственность по ст. 272.1 УК РФ за незаконный сбор, хранение и использование персональных данных — до 10 лет лишения свободы при отягчающих обстоятельствах [16].
При этом, по данным опроса специалистов более 120 российских организаций, 70% из них не соответствуют требованиям закона, причём 31% не имеют ресурсов или не знают, с чего начать [18].
Минимальный набор для стартапа, работающего с персональными данными: зарегистрироваться в реестре операторов Роскомнадзора; разработать политику обработки персональных данных и форму согласия; определить перечень обрабатываемых данных, основания обработки и сроки хранения; разработать процедуру реагирования на утечку.
Для международного рынка:
GDPR применяется с момента первого email европейского пользователя в вашей базе [19]. Ключевые требования: правовые основания для обработки, право на удаление, уведомление об утечке в течение 72 часов, Records of Processing Activities (RoPA).
SOC 2 Type 1 / Type 2 — де-факто входной билет для B2B-сделок на западном рынке. Type 1 — снимок состояния безопасности на момент аудита. Type 2 — подтверждение, что вы следовали этим процедурам в течение наблюдательного периода (обычно 3–12 месяцев) [20]. Большинство enterprise-клиентов будут запрашивать именно Type 2.
Часть 3. Пентест — до, а не после
Почему стартапы откладывают пентест
Типичные аргументы: дорого, пока нечего ломать, пройдём после Series A. Но пентест до первых enterprise-сделок — это инвестиция, а не расход. По данным Trava Security, compliance-фреймворки SOC 2, ISO 27001, PCI DSS и GDPR либо требуют, либо настоятельно рекомендуют проведение пентеста, делая его критическим элементом готовности к продажам [6].
На практике: когда к вам приходит первый крупный клиент с security questionnaire, у вас будет неделя на ответ. Если у вас нет отчёта о пентесте и плана исправлений — сделки не будет.
Минимальный первый пентест
Определить scope: какие API, поддомены и облачные активы в периметре. Подготовить тестовые аккаунты с разными ролями (Admin, User, Read-Only). Убедиться, что тестирование сочетает автоматические сканеры и ручную проверку логических уязвимостей — сканеры не находят BOLA и бизнес-логические баги. Требовать приоритизированный отчёт с планом исправлений, не просто сырой PDF из Nessus [20].
После получения отчёта: закрыть Critical и High до релиза. Medium — дорожная карта на первые 30–60 дней после запуска.
Часть 4. Безопасность CI/CD и контроль изменений
CI/CD-пайплайн — это сердце вашего процесса доставки кода, и одновременно одна из наиболее привлекательных точек входа для атаки. Breaches через CI/CD дают злоумышленнику доступ к prod-окружению, секретам, базам данных.
Практические шаги:
Минимальные права для CI/CD-токенов: токен деплоя не должен иметь права читать prod-секреты, не нужные для деплоя. Изолировать окружения: dev, staging, prod — отдельные учётные данные, отдельные сети, где возможно. Сканировать Docker-образы перед push в реестр. Аудитировать третьесторонние GitHub Actions: использовать конкретные commit hash вместо тегов типа @v3 — тег может быть переписан. Логировать все действия в pipeline и настроить алерты на аномальную активность [21].
Отдельный тезис: AI-ассистированная разработка ускоряет темп изменений, но не ускоряет их проверку. Pull request, написанный за 5 минут с помощью Copilot, содержит столько же потенциальных рисков, что и написанный за два часа вручную — просто их сложнее заметить в быстром ревью. Новая зависимость, конфиг с широким CORS, migration-скрипт с прямым SQL — всё это приезжает в одном PR, который дочитывают не до конца. Именно для этого нужен дополнительный слой контроля до merge и до релиза.
Инструменты вроде HighVibe решают именно эту задачу: анализируют конкретное изменение и связанный контекст — новые зависимости, конфигурационные файлы, migration-скрипты — и дают короткий понятный сигнал: что в этом PR действительно критично и блокирует релиз. Не ещё один длинный SAST-отчёт, а ответ на вопрос «можно ли безопасно принять это изменение прямо сейчас».
Часть 5. Управление инцидентами: минимальный план
54% IT-команд не готовы к отработке кибератаки [22]. Для стартапа «план реагирования на инциденты» звучит как enterprise-бюрократия, но на практике это два-три документа не длиннее двух страниц каждый.
Что должно быть в минимальном плане:
Контакты и роли: кто принимает решение при инциденте, кто звонит юристу, кто уведомляет клиентов. Процедура изоляции: как отключить скомпрометированный компонент, не положив весь продукт. Процедура уведомления: внутренние каналы, обязательные уведомления регулятора (Роскомнадзор — 24 часа, GDPR — 72 часа). Контакты для расследования: форензика, юридическая поддержка. Пост-мортем: после каждого инцидента — письменный разбор причин и изменений в процессах.
SANS Institute предоставляет бесплатные шаблоны политик, которые стартап может адаптировать под себя [23].
Часть 6. Типичные ошибки и как их избежать
«Безопасность потом»
Наиболее распространённая ошибка. Проблема в том, что security debt накапливается нелинейно: каждая фича, добавленная без учёта безопасности, создаёт несколько новых векторов. Переписать авторизацию в зрелом продукте с реальными клиентами — это месяцы работы и высокий риск регрессий. Заложить её правильно до первых пользователей — несколько дней.
«Мы проверили один раз»
Пентест — не разовое мероприятие. Каждый значительный релиз, каждое изменение архитектуры, каждое новое подключение third-party — это изменение threat model. Минимальный цикл: пентест перед первыми B2B-продажами, затем ежегодно + при значительных изменениях архитектуры.
«Debug-настройки только для тестов»
Одна из самых дорогих ошибок: verbose error messages в prod, открытые health-эндпоинты с версиями компонент, debug-режим фреймворка, включённый «временно». OWASP A02:2025 Security Misconfiguration — не теоретическая угроза [12].
«Lock-файлы в .gitignore»
Lock-файлы (package-lock.json, Pipfile.lock) — это не мусор, а гарантия воспроизводимости сборки. Их отсутствие в репозитории означает, что каждый npm install потенциально подтянет новую версию зависимости, которая может быть скомпрометирована [24].
«Один аккаунт для всего»
Shared credentials для CI/CD, общий AWS-аккаунт для dev и prod, admin-права всем разработчикам «для удобства» — это не экономия времени, а расширение радиуса взрыва при любом инциденте.
Часть 7. Дорожная карта: что делать и в каком порядке
За 4–6 недель до запуска продаж
- Провести аудит секретов: запустить gitleaks/trufflehog по истории репозитория, внедрить vault-решение, ротировать все найденные ключи.
- Запустить SCA: Snyk или Dependabot, закрыть Critical/High уязвимости в зависимостях, сгенерировать SBOM.
- Добавить SAST в CI/CD: настроить блокирующий gate на Critical-уязвимости перед merge.
- Пройти базовый пентест: минимум web application и API, включая ручную проверку логики авторизации.
- Внедрить MFA: на всех внутренних инструментах без исключений.
- Проверить конфигурацию облака: tfsec/checkov для IaC, или нативные инструменты AWS/GCP/Azure.
За 1–2 недели до запуска
- Убедиться, что нет критических находок из пентеста, которые не закрыты.
- Проверить права доступа: принцип least privilege для CI/CD-токенов, production-окружения, внешних интеграций.
- Написать минимальный incident response план (2 страницы, не больше).
- Для РФ: подать уведомление в Роскомнадзор, если обрабатываете персональные данные граждан РФ.
После запуска (первые 90 дней)
- Подготовить security questionnaire: стандартные вопросы о шифровании, аутентификации, incident response, backup.
- Начать подготовку к SOC 2 Type 2 (если целевой рынок — B2B на западе).
- Настроить мониторинг: SIEM или хотя бы централизованный logging с алертами на аномалии.
- Провести повторный пентест после значительных изменений архитектуры.
Заключение: безопасность как конкурентное преимущество
Стартап, который пришёл к первому enterprise-клиенту с пентест-отчётом, SBOM, задокументированным incident response планом и SOC 2 в работе — это уже не просто «безопасный» стартап. Это стартап, который умеет строить процессы. Именно это сигнализирует зрелость команды больше, чем любые метрики роста.
Инвестиция в базовый security baseline до запуска продаж — это, по разным оценкам, несколько недель работы и $500–2 000 в месяц на инструменты. Цена инцидента после запуска — от сотен тысяч долларов до закрытия компании.
Правило простое: сначала убедитесь, что ваш продукт работает безопасно, потом продавайте его как безопасный.
Источники
[1] Network Right — «Cybersecurity for Startups: A Stage-by-Stage Security Framework» — https://www.networkright.com/services/cybersecurity-for-startups
[2] GBHackers — «Massive GitHub Leak: 39M API Keys & Credentials Exposed» — https://gbhackers.com/massive-github-leak/
[3] WebProNews — «2025 Supply Chain Attacks Surge on NPM, PyPI, Docker Hub» — https://www.webpronews.com/2025-supply-chain-attacks-surge-on-npm-pypi-docker-hub/
[4] qugo.ru — «Изменения закона о персональных данных в 2025 году» — https://qugo.ru/blog/izmeneniya-zakona-o-personalnyh-dannyh-v-2025-godu
[5] Medium / XCyber — «OWASP Top 10: 2025 — The Latest in Web Application Security Risks» — https://medium.com/@mdtareksec/owasp-top-10-2025-the-latest-in-web-application-security-risks-10faecad744a
[6] Trava Security — «Penetration Testing and Compliance Best Practices for SaaS Startups» — https://travasecurity.com/learn-with-trava/blog/penetration-testing-for-saas-compliance/
[7] BigID — «Impactful Big or Small: A Cost Comparison of Data Breaches» — https://bigid.com/blog/a-cost-comparison-of-data-breaches/
[8] CMIT Solutions — «Average Cost of a Data Breach in 2024» — https://cmitsolutions.com/blog/cost-of-a-data-breach/
[9] IT Pro — «GitHub is awash with leaked AI company secrets» — https://www.itpro.com/security/github-is-awash-with-leaked-ai-company-secrets-api-keys-tokens-and-credentials-were-all-found-out-in-the-open
[10] GitHub Blog — «GitHub found 39M secret leaks in 2024. Here's what we're doing to help» — https://github.blog/security/application-security/next-evolution-github-advanced-security/
[11] bernat.tech — «Defense in Depth: A Practical Guide to Python Supply Chain Security» — https://bernat.tech/posts/securing-python-supply-chain/
[12] OWASP — «Top 10:2025 Introduction» — https://owasp.org/Top10/2025/0x00_2025-Introduction/
[13] MOSS — «CI/CD Pipeline Security Best Practices» — https://moss.sh/deployment/ci-cd-pipeline-security-best-practices/
[14] Tripwire — «CI/CD Security: Advanced Best Practices to Secure Your Pipelines» — https://www.tripwire.com/state-of-security/cicd-security-advanced-best-practices-secure-your-pipelines
[15] КонсультантПлюс — «Персональные данные: новые штрафы с 30 мая 2025 года» — https://www.consultant.ru/legalnews/28492/
[16] b-152.ru — «Закон о персональных данных: что изменилось в 2025–2026 годах» — https://b-152.ru/zakon-o-personalnyh-dannyh-2025
[17] Stakhanovets — «152-ФЗ о защите персональных данных: требования и штрафы в 2026 году» — https://stakhanovets.ru/blog/152-fz-o-zashhite-personalnyh-dannyh-trebovaniya-i-shtrafy-v-2026-godu/
[18] ComNews — «Подавляющее большинство российских компаний не соблюдает закон "О персональных данных"» — https://www.comnews.ru/content/242381/2025-11-18/2025-w47/1008/podavlyayuschee-bolshinstvo-rossiyskikh-kompaniy-ne-soblyudaet-zakon-o-personalnyh-dannykh
[19] PolicyOwn — «Startup Compliance Checklist 2026» — https://policyown.com/blog/startup-compliance-checklist-2026
[20] Peiko — «The Ultimate SaaS Pre-Launch Security Checklist» — https://peiko.space/blog/article/saas-security-checklist-before-launch
[21] CrowdStrike — «10 CI/CD Security Best Practices for Your Pipeline» — https://www.crowdstrike.com/en-us/cybersecurity-101/cloud-security/ci-cd-security-best-practices/
[22] Jit — «CI/CD Security: 12 Tips for Continuous Security» — https://www.jit.io/resources/devsecops/ci-cd-security-tips
[23] Network Right — «Minimum Viable Security Program for Pre-Seed Startups» — https://www.networkright.com/services/cybersecurity-for-startups
[24] LinuxSecurity — «Supply Chain Attacks Impact NPM, PyPI, Docker Hub — 2025» — https://linuxsecurity.com/features/supply-chain-attacks-npm-pypi-docker