Реверс-инжиниринг

Мы выпускаем после наших курсов крутых специалистов по реверс-инжинирингу. Уникальное обучение для работы в сфере анализа машинного кода программ
IT: Для программистов и IT-специалистов / Инфраструктура
OTUS Онлайн-образование логоOTUS Онлайн-образование
Открытый набор
4 месяца
Онлайн
Зарегистрироваться

Что даст вам этот курс


Вы освоите на практике важнейшие приемы реверс-инжиниринга: статический и динамический анализ. Познакомитесь с низкоуровневым и системным программированием, подробно разберете аспекты внутреннего устройства Windows. Вам предстоит изучить и классифицировать вредоносное ПО на примерах реальных malwere, выловленных в сети.

ЧТО ТАКОЕ РЕВЕРС-ИНЖИНИРИНГ? Реверс-инжиниринг кода (обратная разработка кода) — это процесс анализа машинного кода программы, который ставит своей целью понять принцип работы, восстановить алгоритм, обнаружить недокументированные возможности программы, и т.п.

Основные методы реверс-инжиниринга — это статический или динамический анализ кода. При статическом анализе исследователь дизассемблирует код программы, используя специальное ПО, и далее анализирует ассемблерный код. При динамическом анализе исследователь запускает код в изолированной среде (песочнице) или отладчике и анализирует код в динамике.

Для кого этот курс?


  • Для системных программистов, разрабатывающих низкоуровневый софт. Вы поймете, как код работает изнутри после компиляции, и сможете повысить качество своих решений.

  • Для начинающих вирусных аналитиков и специалистов ИБ. Вы научитесь всем must have практикам реверс-инжиниринга и получите комплексное представление о вредоносном ПО.

Как проходит практика?


Студенты заранее получают стенды и разворачивают их у себя локально до начала занятия. Практику вы будете выполнять у себя на виртуальной машине во время вебинара под руководством преподавателя. На курсе вас ждет:
  • Практика по распаковке файлов

  • Практический разбор PE формата (таблица импорта, таблица экспорта, таблица релокаций)

  • Практический анализ шифровальщиков, банковских троянов, ботов.

  • Проектная работа, в рамках который вы напишите свою программу для лечения вредоносных программ

В данный курс входят темы, которые необходимы для продуктивной обратной разработки: ассемблер, PE формат защищённый режим и тд.
Если вы уже владеете этими приемами, возможно, вам больше подойдет курс «Reverse-инжиниринг. Продвинутый уровень», который больше сосредоточен на анализе вредоносного ПО.

Сравнение с Продвинутым курсом по Реверс-инжинирингу

Необходимые знания

  • Знание архитектуры ЭВМ на начальном уровне
  • Базовые знания внутреннего устройства Windows
  • Преимуществом будет опыт программирования на языке C/C++ (это необязательное условие)
  • Требования к "железу": процессор с тактовой частотой 2,0 ГГц или больше, от 8 ГБ ОЗУ, 100 ГБ свободного места на жестком диске

Процесс обучения

Трудозатраты: 4 академических часа на занятия в неделю и 2-4 академических часа на домашнюю работу раз в 2 недели.

Выпускной проект

Вместе с участниками группы по ходу курса мы «разревёрсим» несколько реальных вредоносных программ, определим их функционал и в качестве выпускного проекта напишем программу для лечения.

После обучения вы


  • получите материалы по всем пройденным занятиям (видеозаписи курса, дoполнительные материалы, финальный проект для добавления в портфолио)

  • научитесь читать ассемблерный код
  • научитесь работать в специализированном ПО для обратной разработки (IDA Pro, WinDBG, OllyDbg, Hiew)
  • освоите в теории и на практике основные приемы статического и динамического анализа кода
  • повысите свою ценность и конкурентоспособность как специалиста

  • получите сертификат об окончании курса


Дата выдачи сертификата: 28 января 2021 года
Программа
Модуль 1. Низкоуровневое программирование на ассемблер под x8086/x64
Модуль 2. Низкоуровневое программирование на ассемблер под MIPS
Модуль 3. Защищённый режим процессора
Модуль 4. Внутреннее устройство Windows
Модуль 5. Системное программирование
Модуль 6. Обратная разработка программ
Модуль 7. Проектная работа
Часто задаваемые вопросы
Можно ли начать обучение позже даты старта курса?
Да, можно. Доступ к материалам курса будет доступен в личном кабинете. Если вы будете сильно отставать от общей группы, то можно будет перевестись на следующий поток бесплатно.
Открытый набор
4 месяца
Онлайн
Зарегистрироваться