Модуль 1: Многопоточность и горутины
Разбираемся с тем, почему параллельное выполнение кода в Go — это не только скорость, но и огромный риск безопасности.
- 1. Горутины и общая памятьPro
- 2. Концепция состояния гонкиPro
- 3. Проверка знанийPro
Глубокое погружение в многопоточные уязвимости в Go-приложениях. Вы научитесь находить и эксплуатировать гонки данных (Race Conditions), использовать TOCTOU для обхода лимитов, выполнять double-spend на уровне БД и внедрять надежную защиту с мьютексами, транзакциями и Go Race Detector.
Разбираемся с тем, почему параллельное выполнение кода в Go — это не только скорость, но и огромный риск безопасности.
Изучаем классическую атаку TOCTOU: как успеть потратить деньги дважды за одну миллисекунду. Защита мьютексами и атомарными операциями.
Уходим глубже — гонки на уровне базы данных. SELECT FOR UPDATE, уровни изоляции транзакций и double-spend атаки.
Учимся использовать встроенные инструменты Go для автоматического поиска гонок данных — флаг -race и интеграция в CI/CD.
Синтез всех типов Race Conditions, сравнительные таблицы, реальные CVE и чек-лист безопасности многопоточного Go-кода.