Корпоративная безопасность¶
Документ для CISO, руководителей ИБ и архитекторов безопасности
Содержание¶
Резюме¶
CodeGraph — платформа статического анализа кода на базе Code Property Graph (CPG), разработанная с учётом требований корпоративной безопасности. Платформа обеспечивает полный контроль над данными, интеграцию с корпоративной инфраструктурой безопасности и соответствие требованиям российского законодательства.
Ключевые преимущества безопасности¶
| Возможность |
Описание |
| Локальное развёртывание |
Код никогда не покидает вашу инфраструктуру |
| Интеграция с GigaChat + Yandex AI Studio |
Российские LLM (Qwen3-235B, YandexGPT) — передаются только запросы, не код |
| RBAC |
4 роли, 21 разрешение, гранулярный контроль доступа |
| DLP |
25+ паттернов обнаружения конфиденциальных данных |
| SIEM |
Интеграция с Syslog, ArcSight (CEF), QRadar (LEEF) |
| Vault |
HashiCorp Vault для управления секретами |
1. Резиденция данных и суверенитет¶
Принципы обработки данных¶
┌─────────────────────────────────────────────────────────────────┐
│ ПЕРИМЕТР ОРГАНИЗАЦИИ │
│ │
│ [Исходный код] ──► [CPG-анализ] ──► [DuckDB хранилище] │
│ │ │
│ Код остаётся │
│ внутри периметра │
│ │ │
│ [Пользователь] ──► [RAG-запрос] ──► [DLP-сканер] ──┐ │
│ │ │
└──────────────────────────────────────────────────────│──────────┘
│
Только NL-запросы ──────►│
(без исходного кода) │
▼
[GigaChat / Yandex AI Studio API]
Гарантии безопасности данных¶
| Аспект |
Реализация |
| Хранение кода |
Только локально (DuckDB, файловая система) |
| Передача данных |
Исходный код никогда не отправляется во внешние системы |
| LLM-интеграция |
GigaChat/Yandex AI Studio получает только текстовые запросы пользователей |
| Air-gapped режим |
Поддержка полностью изолированных сред с локальными LLM |
Соответствие требованиям¶
- 152-ФЗ — Обработка персональных данных граждан РФ на территории России
- ГОСТ Р 57580 — Защита информации в финансовых организациях
- Требования ФСТЭК — Возможность размещения в сертифицированной инфраструктуре
2. Контроль доступа и аутентификация¶
Иерархия ролей RBAC¶
┌─────────────┐
│ ADMIN │ ← Полный доступ (admin:all)
│ (4 уровень) │
└──────┬──────┘
│
┌──────▼──────┐
│ REVIEWER │ ← Код-ревью + возможности Analyst
│ (3 уровень) │ (GitHub/GitLab интеграция)
└──────┬──────┘
│
┌──────▼──────┐
│ ANALYST │ ← Выполнение запросов + сессии
│ (2 уровень) │ (API-ключи, экспорт)
└──────┬──────┘
│
┌──────▼──────┐
│ VIEWER │ ← Только чтение
│ (1 уровень) │ (сценарии, история, статистика)
└─────────────┘
Матрица разрешений (21 разрешение)¶
| Категория |
Разрешения |
VIEWER |
ANALYST |
REVIEWER |
ADMIN |
| Сценарии |
scenarios:read |
✓ |
✓ |
✓ |
✓ |
|
scenarios:execute |
|
✓ |
✓ |
✓ |
| Запросы |
query:execute |
|
✓ |
✓ |
✓ |
|
query:validate |
|
✓ |
✓ |
✓ |
| Ревью |
review:execute |
|
|
✓ |
✓ |
|
review:github |
|
|
✓ |
✓ |
|
review:gitlab |
|
|
✓ |
✓ |
| Сессии |
sessions:read |
✓ |
✓ |
✓ |
✓ |
|
sessions:write |
|
✓ |
✓ |
✓ |
|
sessions:delete |
|
✓ |
✓ |
✓ |
| История |
history:read |
✓ |
✓ |
✓ |
✓ |
|
history:export |
|
✓ |
✓ |
✓ |
| Пользователи |
users:read |
|
|
|
✓ |
|
users:write |
|
|
|
✓ |
|
users:delete |
|
|
|
✓ |
| API-ключи |
api_keys:read |
|
✓ |
✓ |
✓ |
|
api_keys:write |
|
✓ |
✓ |
✓ |
|
api_keys:delete |
|
|
|
✓ |
| Метрики |
stats:read |
✓ |
✓ |
✓ |
✓ |
|
metrics:read |
|
|
|
✓ |
| Админ |
admin:all |
|
|
|
✓ |
Методы аутентификации¶
| Метод |
Описание |
Статус |
| JWT Bearer |
Access-токены (30 мин) + Refresh-токены (7 дней) |
✅ Реализовано |
| API-ключи |
SHA-256 хеширование, срок действия, отзыв |
✅ Реализовано |
| OAuth2/OIDC |
GitHub, GitLab, Google, Keycloak |
✅ Готово к интеграции |
| LDAP/AD |
Синхронизация групп, SSO |
✅ Готово к интеграции |
3. Предотвращение утечки данных (DLP)¶
Архитектура DLP-сканирования¶
┌──────────────────────────────────────────────────────────────┐
│ ЗАПРОС ПОЛЬЗОВАТЕЛЯ │
└──────────────────────────┬───────────────────────────────────┘
│
▼
┌──────────────────────────────────────────────────────────────┐
│ PRE-REQUEST СКАНИРОВАНИЕ │
│ ┌────────────────────────────────────────────────────────┐ │
│ │ Паттерны: API-ключи, пароли, токены, PII, пути │ │
│ └────────────────────────────────────────────────────────┘ │
│ │ │
│ ┌──────────────┼──────────────┐ │
│ ▼ ▼ ▼ │
│ [BLOCK] [MASK] [WARN/LOG] │
│ Отклонить Маскировать Отправить │
│ запрос данные с логом │
└──────────────────────────────────────────────────────────────┘
│
▼
[GigaChat/Yandex API]
│
▼
┌──────────────────────────────────────────────────────────────┐
│ POST-RESPONSE СКАНИРОВАНИЕ │
│ ┌────────────────────────────────────────────────────────┐ │
│ │ Маскирование конфиденциальных данных в ответе LLM │ │
│ └────────────────────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────────────┘
Категории обнаружения (25+ паттернов)¶
| Категория |
Критичность |
Примеры паттернов |
| Учётные данные |
HIGH |
AWS ключи (AKIA...), GitHub токены (ghp_...), пароли, JWT, приватные ключи RSA/EC |
| Персональные данные |
MEDIUM |
Email, телефоны (RU/US), номера паспортов РФ, СНИЛС, ИНН, банковские карты |
| Исходный код |
LOW |
Строки подключения к БД, внутренние пути Unix/Windows |
Действия DLP¶
| Действие |
Приоритет |
Описание |
BLOCK |
4 (макс.) |
Полная блокировка запроса |
MASK |
3 |
Замена конфиденциальных данных на [REDACTED] |
WARN |
2 |
Предупреждение + отправка события в SIEM |
LOG_ONLY |
1 |
Только логирование для аудита |
4. Интеграция с SIEM¶
| Формат |
Совместимые системы |
Описание |
| Syslog (RFC 5424) |
Splunk, Graylog, rsyslog |
Стандартный формат Unix |
| CEF |
ArcSight, Splunk |
Common Event Format |
| LEEF |
IBM QRadar |
Log Event Extended Format |
Типы событий безопасности¶
EVENT_TYPE SEVERITY ОПИСАНИЕ
────────────────────────────────────────────────────────────
LLM_REQUEST INFO Запрос к LLM-провайдеру
LLM_RESPONSE INFO Ответ от LLM
LLM_ERROR ERROR Ошибка LLM-взаимодействия
DLP_BLOCK CRITICAL Запрос заблокирован DLP
DLP_MASK WARNING Данные маскированы
DLP_WARN WARNING Предупреждение DLP
AUTH_SUCCESS INFO Успешная аутентификация
AUTH_FAILURE WARNING Неудачная попытка входа
VAULT_ACCESS INFO Доступ к секретам Vault
VAULT_ROTATE INFO Ротация секретов
RATE_LIMIT WARNING Превышение лимита запросов
SECURITY_ALERT CRITICAL Критическое событие ИБ
Архитектура доставки¶
- Буферизация: до 10,000 событий в очереди
- Retry: Экспоненциальная задержка при сбоях
- Failover: Продолжение работы при недоступности SIEM
5. Управление секретами¶
Интеграция с HashiCorp Vault¶
| Метод аутентификации |
Сценарий использования |
| Token |
Разработка, тестирование |
| AppRole |
CI/CD пайплайны, сервисы |
| Kubernetes |
K8s кластеры с ServiceAccount |
Управляемые секреты¶
- LLM-провайдеры: GigaChat, Yandex AI Studio (Qwen3-235B, YandexGPT), OpenAI
- База данных: PostgreSQL, DuckDB credentials
- Интеграции: GitHub/GitLab токены, SIEM credentials
Безопасность¶
- KV v2 Secret Engine с версионированием
- TTL-кэширование с автоматической ротацией
- Fallback на переменные окружения при недоступности Vault
Контакты¶
По вопросам безопасности и интеграции:
- Email: security@codegraph.ru
Версия: 1.0 | Декабрь 2025