- Added comprehensive course structure with 11 modules - Included theoretical content, practical examples, and tasks - Multi-language code examples (Java, Rust, Node.js, Python) - Detailed analysis of architectural approaches and trade-offs - Complete caching strategies documentation - Architecture examples from real-world systems (Twitter, Netflix, Uber) - Structured navigation and learning path - Ready for educational use
135 lines
6.0 KiB
Markdown
135 lines
6.0 KiB
Markdown
# Модуль 6: Безопасность
|
|
|
|
## Навигация
|
|
- [🏠 Главная страница курса](../../README.md)
|
|
|
|
---
|
|
|
|
## Описание модуля
|
|
|
|
Модуль посвящен комплексному изучению безопасности в современной разработке программного обеспечения. Студенты изучат принципы безопасности, методы защиты от уязвимостей, шифрование данных, управление ключами, обфускацию кода и соответствие требованиям безопасности.
|
|
|
|
## Содержание модуля
|
|
|
|
### 1. [Основы безопасности](sections/01-security-basics.md)
|
|
- Принципы безопасности (CIA Triad)
|
|
- Defense in Depth
|
|
- Least Privilege
|
|
- Угрозы безопасности (OWASP Top 10)
|
|
- Методы устранения уязвимостей
|
|
|
|
### 2. [Уязвимости и межсервисное взаимодействие](sections/02-vulnerabilities-inter-service.md)
|
|
- Типы уязвимостей в микросервисной архитектуре
|
|
- TVM (Token Validation Middleware)
|
|
- Mutual TLS (mTLS)
|
|
- Service Mesh Security
|
|
- API Gateway Security
|
|
- Security Headers
|
|
- Rate Limiting
|
|
- Audit Logging
|
|
|
|
### 3. [Шифрование и управление ключами](sections/03-encryption-key-management.md)
|
|
- Симметричное шифрование (AES)
|
|
- Асимметричное шифрование (RSA)
|
|
- Хеширование (BCrypt, PBKDF2)
|
|
- Управление ключами
|
|
- Key Rotation
|
|
- Hardware Security Module (HSM)
|
|
- Key Vault Integration
|
|
|
|
### 4. [Обфускация и защита кода](sections/04-code-obfuscation-protection.md)
|
|
- Обфускация кода
|
|
- Минификация
|
|
- Защита от реверс-инжиниринга
|
|
- Source Maps и их безопасность
|
|
- Защита конфигурационных файлов
|
|
- Защита от анализа трафика
|
|
|
|
### 5. [Security by Design](sections/05-security-by-design.md)
|
|
- Принципы Security by Design
|
|
- Моделирование угроз (STRIDE)
|
|
- Zero Trust Architecture
|
|
- Microsegmentation
|
|
- Аутентификация и авторизация
|
|
- Безопасность API
|
|
- Безопасность данных
|
|
- Соответствие требованиям (GDPR, PCI DSS, SOX)
|
|
|
|
## Ключевые компетенции
|
|
|
|
По завершении модуля студенты будут уметь:
|
|
|
|
1. **Анализировать угрозы безопасности**
|
|
- Выявлять уязвимости в коде
|
|
- Применять STRIDE модель для анализа угроз
|
|
- Оценивать риски безопасности
|
|
|
|
2. **Реализовывать защитные механизмы**
|
|
- Настраивать аутентификацию и авторизацию
|
|
- Внедрять шифрование данных
|
|
- Конфигурировать безопасность API
|
|
|
|
3. **Управлять ключами шифрования**
|
|
- Реализовывать ротацию ключей
|
|
- Интегрироваться с HSM и Key Vault
|
|
- Обеспечивать безопасное хранение ключей
|
|
|
|
4. **Защищать исходный код**
|
|
- Применять обфускацию и минификацию
|
|
- Настраивать защиту от реверс-инжиниринга
|
|
- Управлять Source Maps
|
|
|
|
5. **Обеспечивать соответствие требованиям**
|
|
- Реализовывать GDPR compliance
|
|
- Настраивать PCI DSS для платежей
|
|
- Внедрять SOX controls
|
|
|
|
## Практические задания
|
|
|
|
### Задание 1: Security Implementation
|
|
1. Реализуйте аутентификацию с JWT
|
|
2. Настройте авторизацию с RBAC
|
|
3. Добавьте валидацию входных данных
|
|
|
|
### Задание 2: Data Protection
|
|
1. Реализуйте шифрование данных
|
|
2. Настройте маскирование данных
|
|
3. Добавьте аудит доступа к данным
|
|
|
|
### Задание 3: Compliance
|
|
1. Реализуйте GDPR compliance
|
|
2. Настройте PCI DSS для платежей
|
|
3. Добавьте SOX controls
|
|
|
|
## Дополнительные ресурсы
|
|
|
|
### Стандарты и фреймворки
|
|
- **OWASP** — Open Web Application Security Project
|
|
- **NIST** — National Institute of Standards and Technology
|
|
- **ISO 27001** — Information Security Management
|
|
- **SOC 2** — Service Organization Control
|
|
|
|
### Инструменты
|
|
- **Security Scanning**: OWASP ZAP, Burp Suite, Nessus
|
|
- **Code Analysis**: SonarQube, Checkmarx, Veracode
|
|
- **Secrets Management**: HashiCorp Vault, AWS Secrets Manager
|
|
- **Identity Management**: Keycloak, Auth0, Okta
|
|
|
|
## Контрольные вопросы
|
|
|
|
1. Что такое CIA Triad и как он применяется?
|
|
2. Какие принципы Security by Design вы знаете?
|
|
3. Как работает OAuth 2.0 и OpenID Connect?
|
|
4. Какие типы шифрования существуют?
|
|
5. Как обеспечить безопасность API?
|
|
6. Что такое GDPR и как его соблюдать?
|
|
7. Какие требования PCI DSS вы знаете?
|
|
8. Как реализовать Zero Trust Architecture?
|
|
|
|
## Критерии оценки
|
|
|
|
- **Теоретические знания** (30%) — понимание принципов безопасности
|
|
- **Практические навыки** (40%) — реализация защитных механизмов
|
|
- **Анализ безопасности** (20%) — выявление и устранение уязвимостей
|
|
- **Соответствие стандартам** (10%) — соблюдение требований безопасности
|