Когда мы говорим о red-team , в голове сразу всплывают кадры из художественных фильмов: зловещий терминал, зелёные буквы и довольный хакер , который за пять секунд «выносит» защищённый дата-центр. В реальности всё немного иначе: меньше спецэффектов, больше рутины и глубокой инженерии. И лучший способ прокачаться здесь — делать маленькие, но регулярные сайд-проекты. Благо, целый список идей уже собран за нас в репозитории kurogai/100-redteam-projects (порядка 2,6 тыс. звёзд и сотни форков — сообщество одобряет!) . Давайте разложим его по полочкам, чтобы было понятно, с чего начать и как не перегореть.
Что это за репозиторий и почему вокруг него шумиха
Автор оформил почти сотню идей от TCP-чата до собственного эксплойт-фреймворка, разбив их на пять уровней сложности. Никакой воды: только список челленджей и галочки «выполнено/нет». Лаконично, но безжалостно — смотришь на уровень 5 и понимаешь, сколько ещё предстоит учиться.
- Level 1 — базовые сетевые и криптографические игрушки;
- Level 2 — сканеры, брут-форсы и первые OSINT-боты;
- Level 3 — сеть начинает «болеть»: ARP-spoofing , ботнеты , рансом и co.;
- Level 4 — анализ пакетов, самодельный фаервол и даже собственный троян;
- Level 5 — пост-эксплуатация, руткиты и «свой Metasploit» — добро пожаловать в глубокий космос.
Отдельным пунктом автор кивает на «MITRE ATT&CK Sibling Repo» — там те же сто, но уже с привязкой к тактикам и техникам из ATT&CK-матрицы . Если захочется формализовать знания, знайте, где искать.
Разбираем уровни: примеры, комментарии, подколы
Level 1: «Привет, мир» с оттенком хака
Вроде бы пишем самый обычный TCP chat server
, но кураж ощущается сразу: на следующем шаге автор предлагает «как Netcat, только своим кодом» и шепчет: «А давай-ка прикрутим Caesar Cipher». Отличный старт, чтобы подружиться с сокетами и повторить школьную криптографию.
- Сервер/клиент на TCP или UDP;
- ROT13-шифровалка (спойлер: придётся гуглить, зачем она вообще нужна);
- Удалённое выполнение команд — сразу ощущаешь себя оператором трояна.
Level 2: сканируй, бруть и не останавливайся
Переходим к практическому пентесту : простой порт-сканер, а потом — OS fingerprint через TTL, словно маленький Nmap. Добавляем директори-брут-форсер и SSH-bruteforce — получите свою первую боль от CAPTCHA и блокировок.
Level 3: сеть начинает сопротивляться
Здесь лайтовый DIY заканчивается: ARP-poisoning, захват скриншотов с пострадавших машин и мини-ботнет. Проекты явно для тех, кто готов читать RFC и документацию WinAPI по ночам.
Level 4: крипто-чарты и мини-фаервол
Инструментарий сильно взрослеет — появляется собственный Hexdump-tool, DNS-&Subdomain-ENUM, генерация payload-ов под Bash и PowerShell. Тут же — «Привет, ransomware!» и радостный забег по Windows Registry.
Level 5: «Темнота сгущается»
Последний блок — это драйверы, руткиты и эксплойты для блютуза. Если прошли сюда без слез — смело добавляйте строчку «Reverse Engineering Enthusiast» в LinkedIn, вы её заслужили.
Как не сломаться и дойти до конца
- Выберите язык. Python? Go? Rust? База нужна одна, а личная боль — уникальна.
- Ведите учёт. Ставьте галочки в своём форке или Trello — дофамин никто не отменял.
- По-честному измеряйте время. Уровень 1 — 1–2 дня на таск, уровень 5 — иногда месяц. Планируйте от бэклога к реальным дедлайнам.
- Документируйте. Блоги, гисты, MD-файлы — чужие глаза помогут поймать бредовую идею до релиза.
- Не бойтесь бросать. Проект не взлетел — окей, берите следующий. «Done > Perfect».
Инструменты, которые пригодятся по ходу марафона
- Nmap — чтобы сравнивать свой сканер со взрослыми;
- Wireshark — для анализа пакетов на уровне Hexdump;
- Metasploit Framework — вдохновение для пункта
[100] Your own Metasploit module
; - ATT&CK-матрица — чтобы понимать, куда ваш эксплойт попадает в большой таксономии;
- CyberChef — на случай, если лень писать очередной Caesar Cipher с нуля.
Подведём итог
Список 100 Red Team Projects — это не шаблон «Как стать хакером за 30 дней». Скорее, это дорожная карта, где на каждом повороте вы сами решаете: свернуть, тормознуть или проскочить на жёлтый. Берите IDE, ставьте таймер Pomodoro и позвольте себе ошибаться — при условии, что каждая ошибка фиксится pull-request'ом в ваш же репозиторий. И да, не забывайте выключать микрофон в конференциях — вдруг у вас там loud reverse shell?
Увидимся на следующем челлендже! Если вдруг застрянете, приходите в комментарии — обсудим, как правильно уговорить firewall пропустить ваш ping-пакет.