Реверс-инжиниринг исполняемого файла

Аннотация

Целью третьей лабораторной работы является получение навыков использования дизассемблера и утилит анализа объектных файлов.

Ход работы

  1. Перейдите в каталог для файлов лабораторных работ по курсу "Архитектура современных ЭВМ".
  2. Создайте каталог для файлов данной лабораторной работы.
  3. Распакуйте приложенный архив с программой bomb.
  4. Запустите программу bomb. Программа ожидает ввода четырехразрядного пин-кода, выполняет ряд преобразований и затем сравнивает результат с целевым значением. Если обнаружено совпадение, бомба считается обезвреженной, в противном случае бомба считается взорванной.
  5. Используя отладчик gdb и инструменты пакета binutils, выполните анализ исполняемого кода программы и идентифицируйте цепочку преобразований и целевое значение.
  6. Напишите программу на языке C, перебирающую все возможные значения пин-кода и моделирующую цепочку преобразований. С помощью программы определите все верные варианты пин-кода.