Мастерская обратного проектирования для начинающих


Мастерская по обратному проектированию для абсолютных новичков проводится исследователем киберпреступности Офиром Харпазом. Он доступен бесплатно в Интернете.

Чем обычно люди занимаются в свободное время? Они смотрят фильмы, читают книгу, гуляют. Не Офир, она тратит свое время на обратную разработку двоичных файлов!

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

Таким образом, обратный инжиниринг в этом контексте считается выяснением того, что делает программа, путем изучения инструкций, которые программа «дает» процессору.

Онлайн-семинар состоит из 3 подготовительных заданий, охватывающих базовый теоретический материал, и 5 практических занятий, на которых вы разбираете двоичные файлы. Хотя концепции RE остаются неизменными для разных платформ, семинар посвящен архитектуре Windows, а также двоичному формату.

Конечно, RE предполагает знание ассемблера, поэтому самое первое задание перенаправляет на учебник по ассемблеру x86 от Университета Вирджинии. Ожидается, что вы пройдете его, но остановитесь на разделе «Соглашение о вызовах», который для того времени слишком сложен. существование. После этого вернитесь к курсу, где с полученными свежими знаниями вам предстоит решить 3 маленькие загадки, например:

1. Что такое foo в следующем примере? Сколько места занимает в памяти?

.data foo DW 1,1,2,3,5

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

Задание заканчивается установкой совершенного инструмента взломщика, отладчика OllyDbg, который мы будем использовать, чтобы получить быстрый обзор внутреннего устройства игры Minesweeper.

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

Последнее задание на этом этапе подготовки касается следующего:

32-битные и 64-битные системы

Установка IDA (дизассемблер и отладчик)

C Резюме (необязательно)

Здесь я хотел бы выделить успех Офира в использовании простого языка для передачи сложной темы, что делает ее доступной даже для простых смертных.

После подготовки мы можем погрузиться в сам семинар из 5 занятий.

Сессия №1 — Обзор x86 (Слайды)

Сессия # 2 — Краткое введение в IDA (слайды)

Сессия # 3 — Упражнения на игровой площадке Сеанс на игровой площадке состоит из 2 упражнений, то есть двух двоичных файлов, Password и Good_Luck, которые вы загружаете и пытаетесь понять с помощью дизассемблера IDA, чтобы узнать, что они делают и какие входные данные ожидают.

Сессия # 4 — Юля Более сложное упражнение, чем # 3

Сессия №5 — Взлом Minesweeper Последняя часть — это занятие с инструктором по взлому знаменитой игры Microsoft Minesweeper.

Если вы используете Windows 10, по умолчанию нет Minesweeper, но вы можете бесплатно скачать его из Магазина Windows.

На этом семинар завершен. Так что, если вы ищете быстрое, легкое, но исчерпывающее введение в двоичные файлы обратного проектирования, это семинар, на который стоит обратить внимание.

Хотя использование Ollydbg и IDA может показаться слишком старомодным, теперь, когда существуют такие инструменты, как Radare2 или GHIDRA от NSA, но наиболее важна теоретическая основа искусства реверса, которую предлагает этот семинар.


Добавить комментарий