Курсы и материалы для начала
- Курс Ugra CTF — русскоязычный курс команды [team Team]: теория, примеры и задачи по стеганографии, форензике, криптографии, OSINT, вебу и реверсу. Материалы опубликованы в 2020 году.
- Курс Хакердома — основы компьютерной безопасности для начинающих с минимальным опытом программирования. Ссылки на учебные проекты собраны на сайте команды, а объявления — в канале курса.
- CTF101 / CTF Handbook — англоязычный справочник по основным категориям: вебу, криптографии, форензике, реверсу и бинарной эксплуатации.
- CyLab Security Academy — бесплатная учебная CTF-платформа Carnegie Mellon University. Подходит для первых задач и самостоятельных тренировок. Сюда переехала учебная платформа picoCTF.org.
- OverTheWire — учебные игры по Linux и компьютерной безопасности. Bandit знакомит с командной строкой, Natas — с веб-безопасностью, Leviathan — с реверсом.
Лекции на русском
- SPbCTF на YouTube — записи учебных сезонов и разборы задач по вебу, реверсу, криптографии, форензике и pwn.
- Кафедра 42 НИЯУ МИФИ — видеолекции кафедры криптологии и кибербезопасности.
- Введение в CTF от BulbaHackers — плейлист вводных занятий по компьютерной безопасности.
- Анализ безопасности веб-проектов — русскоязычный курс на Stepik по аудиту безопасности веб-приложений.
К записям занятий SPbCTF есть отдельные страницы с задачами — они перечислены ниже.
Практика по категориям
| Направление | Ресурс | Что внутри |
|---|---|---|
| Web | PortSwigger Web Security Academy | Бесплатные материалы и интерактивные лаборатории по веб-уязвимостям. На английском |
| Web | SPbCTF Web Kids | Задачи и ссылки на занятия русскоязычного учебного сезона |
| Web | Google XSS Game | Учебная игра по поиску и эксплуатации XSS |
| Web | SQL-челлендж Александра Берсенёва | Десять уровней по SQL-инъекциям. Старый учебный стенд на MySQL 5 |
| Crypto | CryptoHack | Бесплатные курсы и интерактивные задачи по современной криптографии. На английском |
| Crypto | SPbCTF Crypto Kids | Криптографические задачи и материалы учебного сезона |
| Pwn и системные основы | pwn.college | Бесплатная практическая платформа Arizona State University с последовательными учебными модулями. На английском |
| Pwn | ROP Emporium | Задачи по return-oriented programming: от ret2win до построения более сложных ROP-цепочек |
| Pwn | SPbCTF Pwn | Задачи по бинарной эксплуатации и записи занятий |
| Reverse | SPbCTF Reverse Kids | Учебные задачи по обратной разработке и ссылки на разборы |
| Forensics | SPbCTF Forensics Kids | Задачи и материалы по компьютерной форензике |
У площадок разные правила публикации решений. Например, pwn.college просит не выкладывать готовые решения учебных задач: их используют для оценки студентов.
Площадки для самостоятельных тренировок
- DUCKERZ — платформа с CTF-задачами по нескольким категориям, достижениями и рейтингом участников.
- Тренировки Хакердома — сборник задач от команды Хакердом.
- Root-Me — тренировочная площадка с заданиями по компьютерной безопасности. При открытии может потребоваться проверка антибот-защиты.
- Hack The Box — платформа с практическими лабораториями и заданиями по пентесту. Условия доступа зависят от выбранного продукта и тарифа.
- VulnHub — библиотека уязвимых виртуальных машин для локальных лабораторий. В каталоге есть старые образы, которым может потребоваться совместимое окружение.
- edu — площадка с типовыми задачами по сетям, пентесту, криптографии, форензике, реверсу, pwn и вебу. Участник запускает стенд, пробует решить задачу, а затем читает разбор. Так можно разобраться в ходе решения перед переходом к соревновательным заданиям.
Уязвимые виртуальные машины предназначены для изолированной учебной сети. Доступность страницы каталога не гарантирует, что каждый образ запускается на текущей версии гипервизора.
Справочники и шпаргалки
- ItSecWiki — русскоязычная вики со шпаргалками, приёмами решения задач и ссылками на райтапы. Рабочий адрес использует HTTP.
- CTF Wiki — справочник по CTF-категориям и техникам решения задач. Английский раздел переведён не полностью; значительная часть материалов — на китайском.
- OWASP Web Security Testing Guide — руководство по тестированию безопасности веб-приложений.
- OWASP Cheat Sheet Series — шпаргалки по безопасности приложений: от аутентификации до обработки пользовательского ввода.
- Security Cheatsheets — подборка шпаргалок по инструментам и темам информационной безопасности.
- Официальный каталог Kali Linux — описания пакетов, справка по командам и примеры использования инструментов.
Команды и примеры в старых шпаргалках могут зависеть от версии инструмента. Актуальный синтаксис указан в документации самого проекта.
Инструменты для решения задач
| Инструмент | Для чего нужен |
|---|---|
| CyberChef | Преобразование данных в браузере: кодировки, распаковка, хеши и цепочки операций |
| Pwntools | Написание эксплойтов на Python, работа с процессами, сетевыми соединениями и бинарными данными |
| Ghidra | Обратная разработка и анализ программ |
| Kaitai Struct | Описание бинарных форматов и генерация парсеров |
| PINCE | Обратная разработка и исследование программ в Linux |
| SecLists | Словари имён пользователей, паролей, URL и других данных для тестирования безопасности |
| RequestBin / Pipedream | Приём и просмотр HTTP-запросов и вебхуков на отдельном адресе |
| ctf-tools | Подборка инструментов и скриптов их установки для CTF |
Наборы вроде ctf-tools и SecLists экономят время на поиске, но не заменяют документацию отдельных утилит. Совместимость установочных скриптов зависит от окружения.
Инструменты для Attack/Defense
| Задача | Инструмент | Что автоматизирует |
|---|---|---|
| Работа с эксплойтами и флагами | S4DFarm | Ферма команды C4T BuT S4D на базе DestructiveFarm |
| Работа с эксплойтами и флагами | DestructiveFarm | Запуск эксплойтов через клиентов и централизованная сдача флагов |
| Распределённый запуск | Neo | Раздача эксплойтов рабочим машинам и распределение целей. Для работы использует совместимую внешнюю ферму |
| Анализ трафика | Packmate | Перехват живого трафика и разбор PCAP, поиск по содержимому потоков |
| Фильтрация трафика | ctf_proxy | Обработка TCP- и HTTP-трафика пользовательскими Python-фильтрами |
Другие реализации ферм: exploit_farm Александра Берсенёва и ctf-exploit-farm Андрея Гейна.
Перед соревнованием ферме нужна настройка под протокол сдачи флагов, а фильтрам — проверка на легитимном трафике. У основного репозитория Packmate последний показанный при проверке коммит датирован 31 июля 2023 года; совместимость с текущим окружением нужно проверять отдельно.
Платформы для организаторов
| Формат | Платформа | Назначение |
|---|---|---|
| Jeopardy / Task-Based | CTFd | Платформа для соревнований с отдельными заданиями |
| Jeopardy / Task-Based | yatb | Платформа для Task-Based CTF от команды kks |
| Attack/Defense | ForcAD | Проверяющая система для A/D-соревнований |
| Attack/Defense | HackerDom checksystem | Проверяющая система для A/D от Хакердома |
Доступный репозиторий не означает готовую инфраструктуру турнира. Выбор платформы требует проверки развёртывания, правил начисления очков и интеграции с заданиями или чекерами.
Соревнования, райтапы и новости
- CTFtime — календарь соревнований, результаты, рейтинги команд и ссылки на райтапы.
- CTF News — анонсы соревнований и новости CTF-сообщества на русском.
- SecurityLab — новости и статьи по информационной безопасности за пределами CTF.
Предложить ресурс или сообщить о неработающей ссылке можно через форму обратной связи.