NORCPU hackme challenge или взлом программы для однокомандного процессора

Разного рода “ненормальное” программирование весьма популярно среди любителей поломать голову над разными задачками. Порой программу для очередной “ненормальной” среды программирования уже нереально написать вручную, а надо писать генератор, создающий код.

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

Итак, имеется модель некоторого виртуального процессора, выполняющего только одну логическую операцию - Стрелку Пирса.

На этом процессоре написана программа, на вход которой подается некоторый пароль. Если пароль неверный, то в ответ выдается строка “Wrong password!”. Если верный, то выдается определенное волшебное сообщение.

Задача: любым образом выяснить это волшебное сообщение. Как вариант, можно, например, угадать пароль, и программа сама выдаст секрет.

Логика написана таким образом, что разобравшись в алгоритме, можно без труда расшифровать волшебное сообщение.

В прошлом году я описал использованный подход во всех деталях.

Оригинальный подход, на котором основан мой эксперимент, был не совсем “чистым”, так как команда сложения был вынесена за логику процессора. В моей версии все до единой команды реализованы на самом процессоре. Для этого потребовалось немного изменить интерпретатор, добавив в него сдвиговый регистр.

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

Итак, прошу на взлом!

Удачи.

P.S. Для первого взломавшего - небольшой приз! Информация по ссылке.


Оригинальный пост | Disclaimer

Комментарии