Чему вы научитесь
- Пользоваться современными инструментами реверс-инженера
- Определять цель и задачи исследования
- Делать первичный обзор программы без исходников
- Строить и проверять исследовательские гипотезы
- Вникать в суть задачи за рамками бинарного кода, читать программу "между строк"
О курсе
Что такое ReversingHero?
ReversingHero — это уникальный обучающий набор для изучения обратного проектирования, упакованный в один исполняемый файл. Программа состоит из 15 уровней, сложность которых постепенно возрастает. ReversingHero удивительно многогранен - в его уровнях использованы самые разнообразные техники. Таким образом, помимо удовлетворения технического любопытства, изучение данной программы развивает насмотренность студентов на различные варианты компоновки кода и данных, методики взаимодействия с операционной системой, различные алгоритмы и структуры данных.
Данный мини-курс является демо-версией; в нем представлен лишь дополнительный бонусный урок 😃 Тем не менее, даже один только этот урок позволяет познакомиться с важными задачами, которые реверс-инженеры решают каждый день.
💥У курса есть телеграм-канал! 💥
В нём вы можете задать все технические и организационные вопросы; я постараюсь как можно скорее на них ответить :)
Благодарности
Курс не увидел бы свет без моральной поддержки ребят из сообществ "Танец роботов" и "Inverted Byte". Я с большим душевным теплом вспоминаю встречи с этими людьми - уникальными специалистами и замечательными друзьями. Пусть свет знаний озаряет ваш путь, а счастье умножается в ваших домах!
+
= ❤️
Для кого этот курс
Начальные требования
Необходимым минимумом является знакомство с командной строкой Linux и основами языка программирования Python3, в также с языком ассемблера для платформы amd64.
По каждому пункту существуют замечательные курсы на Stepik:
- Курс для начинающих серии "Поколение Python"
- Курс "Основы Linux"
- Введение в архитектуру ЭВМ. Элементы операционных систем
Один из лучших курсов по языку ассемблера и архитектуре ЭВМ, который мне посчастливилось изучать, был прочитан и записан на видео в 2021 году в МГУ. Курс провёл Вартан Андроникович Падарян из Института системного программирования Российской академии наук (ИСП РАН). Горячо рекомендую всем посмотреть эти лекции - они не только полезные, их по-настоящему приятно смотреть. Курс лекций доступен по ссылке.
Наши преподаватели
Как проходит обучение
Курс разбит на модули - каждому уровню программы соответствует отдельный модуль, также выделяются введение и заключение.
Во введении вы немного познакомитесь с образовательной платформой и подготовите окружение для работы.
Модуль каждого уровня содержит теоретическую и практическую части. В теоретической части я предлагаю разбор соответствующей задачи, предлагая вам повторить весь путь исследования. Практическая часть содержит задания, направленные на более глубокое понимание задачи и/или на контроль того, в какой точке исследования вы находитесь в данный момент. Кроме того, некоторые практические задания предложат вам выполнить следующую часть исследования самостоятельно (в таком случае, скорее всего 🙃, соответствующий разбор будет проведен в ближайшем к такому заданию теоретическом шаге).
Программа курса
Что вы получаете
- Опыт самостоятельного исследования непростой задачи уровня топовых CTF
- Возможность создать проактивное, дружелюбное и заряженное комьюнити уникальных технических экспертов