Ку, киберрекруты. Сегодня будет разбор таска с платформы Codeby в разделе Реверс-инжиниринг. Таск является очень простым, поэтому вопросов возникнуть недолжно. Этот таск хорош тем, что дает первоначальные навыки писать кейгены.
Кейген - небольшая программа, которая генерирует: криптографический ключ для шифрования данных, псевдоподлинные CD-ключи или серийные/регистрационные/активационные номера для регистрации/активирования ПО. Однако, в нашем случае немного другой генератор. Это больше дешифратор.
Дано два файла -
flag.enc и
program.txt. Перейдем к реверсу.
Реверс
program.txt является кодом написанном на языке Python в виде псевдоассемблерных инструкций. Бегло просмотрев код, можно увидеть такие инструкции:
Код:
16 LOAD_CONST3 ('ZHEkjgfhdiIR')
18 STORE_FAST2 (key)
....
....
48 BINARY_XOR
Тут в принципе все ясно. Открывается файл, ксорится каждый символ со строкой...