Similar presentations:
Reverse Engineering
1.
Reverseengineering
2.
Reverse Engineering (Обратная разработка) - метод исследования устройств илипрограммного обеспечения с целью понять принцип его работы или обнаружить
недокументированные возможности. В информационной безопасности она занимает
значительную роль, благодаря ей специалисты в области ИБ могут исследовать
вредоносные приложения, разбираться как они работают для последующего, например,
составления сигнатур в базы антивирусов и защиты других пользователей от
предстоящей цифровой угрозы.
3.
4.
5.
РегистрыВосемь регистров - EAX (аккумулятор), EBX (база),
ECX (счетчик), EDX (данные), ESP (указатель на
вершину стек), EBP (указатель на базу стека), ESI
(указатель на источник данных ) и EDI(указатель
на назначение данных).
6.
Стековые операции:•push value; помещает значение в стек (ESP уменьшается на 4, размер одной «единицы» стека).
•pop register; помещает значение в регистр (ESP увеличивается на 4).
Передача данных
•mov destination, source; копирует значение из/в регистр.
•mov destination, [expression]; копирует значение из памяти по адресу, получаемому из ‘регистрового
выражения’ (одиночный регистр или арифметическое выражение, содержащее один или больше
регистров) в регистр.
Поток выполнения
•jmp destination; переходит к команде по адресу (устанавливает EIP (указатель инструкций)).
•jz/je destination; переходит к команде по адресу, если установлен ZF (нулевой флаг).
•jnz/jne destination; переходит к команде по адресу, если ZF не установлен.
Операции
•сmp operand1, operand2; сравнивает 2 операнда и устанавливает ZF, если они равны.
•add operand1, operand2; операнд1 += операнд2.
•sub operand1, operand2; операнд1 -= операнд2.
Переходы функций
•call function; вызывает функцию (помещает текущее значение EIP в стек, затем переходит в функцию).
•retn; возврат в вызываемую функцию (извлекает из стека предыдущее значение EIP).
7.
IDAДисасемблер
Отладчик