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