Основы кибербезопасности
Кибербезопасность — это не отдельная профессия «для избранных», а часть работы каждого, кто пишет код или администрирует системы. Большинство утечек и взломов начинается не с гениального хакера, а с обычной ошибки: пароля в открытом виде, непроверенного ввода, забытого ключа в репозитории. Этот курс учит замечать такие места и закрывать их.
Учебник рассчитан на начинающих разработчиков и ИТ-специалистов. Мы идём от базовых понятий (что защищаем и от кого, триада CIA, угроза против уязвимости) через аутентификацию и пароли, веб-уязвимости из OWASP Top 10, прикладную криптографию и сетевую безопасность — к привычкам безопасной разработки. Везде акцент защитный: мы объясняем, КАК защититься и ПОЧЕМУ угроза работает на уровне принципа, без рецептов атак на чужие системы.
Курс практичен: многие примеры на Python (хэширование, токены, HMAC, проверка ввода) можно запустить прямо в браузере кнопкой «Запустить» и увидеть реальный результат. В конце каждого урока — мини-квиз для самопроверки. Пройдя курс, вы будете понимать главные классы угроз и уверенно применять базовые меры защиты в своём коде и инфраструктуре.
Курс «Основы кибербезопасности» состоит из 6 разделов и 25 уроков: Введение в кибербезопасность, Аутентификация и пароли, Веб-уязвимости (OWASP), Криптография для разработчика, Сети и инфраструктура и Безопасная разработка и практика. Уроки идут по порядку — от основ к более сложным темам, в каждом есть объяснение с примерами, а в конце — вопросы для самопроверки. К урокам привязаны задачи с автоматической проверкой: прочитали тему — сразу закрепили её кодом.
Программа курса
1 Введение в кибербезопасность
- Что такое кибербезопасность и зачем она нужна
Кибербезопасность простыми словами: защита данных и систем, почему это касается каждого разработчика и сколько стоят ошибки на проде.
- Триада CIA: конфиденциальность, целостность, доступность
Три кита информационной безопасности: конфиденциальность, целостность и доступность. Что значит каждый и как они конфликтуют.
- Угроза, уязвимость, риск, эксплойт: словарь
Ключевые понятия безопасности: чем угроза отличается от уязвимости, что такое риск и эксплойт, и как они связаны между собой.
- Модель угроз и культура безопасности
Что такое моделирование угроз, метод STRIDE и как формируется культура безопасности в команде — мышление «по умолчанию защищённо».
- Что такое кибербезопасность и зачем она нужна
2 Аутентификация и пароли
- Как правильно хранить пароли: хэш и соль
Почему пароли нельзя хранить в открытом виде и через простой MD5/SHA, что такое соль и зачем нужны медленные хэши bcrypt и argon2.
- Многофакторная аутентификация (MFA/2FA)
Что такое многофакторная аутентификация, три фактора (знание, владение, биометрия), как работают TOTP-коды и почему SMS слабее приложения.
- Менеджеры паролей и гигиена аккаунтов
Зачем нужен менеджер паролей, почему уникальный пароль на каждый сайт критичен и как защититься от credential stuffing и подбора.
- Сессии, cookie, токены и OAuth
Как сервер помнит вошедшего пользователя: сессии и cookie, токены и JWT, флаги безопасности cookie и зачем нужен OAuth.
- Как правильно хранить пароли: хэш и соль
3 Веб-уязвимости (OWASP)
- OWASP Top 10: карта главных веб-уязвимостей
Что такое OWASP Top 10, какие категории уязвимостей в него входят и почему этот список — отправная точка для защиты веб-приложений.
- SQL-инъекции: как возникают и как защититься
Почему склейка SQL-запросов из строк опасна, как возникает SQL-инъекция и почему параметризованные запросы полностью её закрывают.
- XSS: межсайтовый скриптинг и экранирование вывода
Что такое XSS, как чужой ввод превращается в исполняемый скрипт на странице и почему экранирование вывода и CSP закрывают эту угрозу.
- CSRF и защита токенами
Что такое CSRF, как чужой сайт заставляет браузер действовать от вашего имени и как CSRF-токены и SameSite-cookie закрывают эту атаку.
- Небезопасная конфигурация и утечки данных
Как настройки по умолчанию, подробные ошибки и открытые панели приводят к утечкам, и как принцип минимальной поверхности атаки это закрывает.
- OWASP Top 10: карта главных веб-уязвимостей
4 Криптография для разработчика
- Симметричное и асимметричное шифрование
Разница между симметричным и асимметричным шифрованием на пальцах: один общий ключ против пары открытый/закрытый и как их сочетают.
- Хэш-функции: целостность, а не шифрование
Чем хэширование отличается от шифрования, какие свойства делают хэш надёжным и где его применяют: пароли, целостность, подписи.
- Цифровые подписи и сертификаты
Как асимметричные ключи дают цифровую подпись, что подтверждает сертификат и зачем нужны удостоверяющие центры.
- Кодирование — это не шифрование (base64)
Почему base64 и подобное кодирование не защищают данные, чем кодирование отличается от шифрования и где это путают на практике.
- Симметричное и асимметричное шифрование
5 Сети и инфраструктура
- Как HTTPS защищает трафик
Чем HTTPS отличается от HTTP, что даёт TLS, как происходит рукопожатие и зачем нужен сертификат сайта.
- Сетевые угрозы: MITM, перехват, DDoS
Обзор типичных сетевых угроз для защиты: атака посредника, перехват открытого трафика и отказ в обслуживании — и как от них защищаться.
- Firewall, наименьшие привилегии и сегментация
Как firewall ограничивает доступ к сервисам, что такое наименьшие привилегии и сегментация сети и почему это ключевые барьеры обороны.
- Безопасность API и хранение секретов
Как защитить API через аутентификацию, валидацию и rate limiting и почему секреты нельзя коммитить в репозиторий.
- Как HTTPS защищает трафик
6 Безопасная разработка и практика
- Валидация и санитизация ввода
Чем валидация отличается от санитизации, почему проверять ввод нужно на сервере и как принцип allowlist делает защиту надёжной.
- Зависимости и supply chain
Почему сторонние библиотеки — частый источник уязвимостей, что такое supply chain атаки и как держать зависимости под контролем.
- Логирование и реагирование на инциденты
Зачем нужны логи для безопасности, что логировать и чего не логировать никогда, и как устроено реагирование на инцидент.
- Социальная инженерия, фишинг и чек-лист
Как распознать фишинг и социальную инженерию, почему человек — частая мишень и итоговый чек-лист безопасной разработки.
- Валидация и санитизация ввода