Киберколизей CODEBY 04-2024. Writeup PWN #3

Киберколизей CODEBY 04-2024. Writeup PWN #3

Михаил

Полезная информации по ИБ и разборы задачек CTF.

Киберколизей CODEBY 04-2024. Writeup PWN #1

Киберколизей CODEBY 04-2024. Writeup PWN #2


При запуске видим, что нам предлагают ввести название категории таска, вводим "PWN", программа отвечает "No !!" и закрывается.

Открываем файл в IDA, смотрим декомпилированный код:

Для получения флага нам необходимо поместить значение 1347898913 в переменную secret

Посмотрим, где располагается `secret` в памяти (дважды ЛКМ в IDA).

Видим, что она располагается недалеко от переменной str, в которую записывается введенный нами ответ. Посчитаем смещение между этими переменными:

0x4034-0x4020 = 0x14 = 20.

Так как для чтения нашего ввода используется небезопасная функция `scanf`, мы можем записать в str любое количество символов, для перезаписи значения переменной secret нам нужно ввести 24 байта (переменная secret типа int (4 байта в C)).

Переведем значение 1347898913 в hex (в IDA - навести мышку и нажать "H" на клавиатуре).

Составим строку, которая позволит нам получить флаг:

Чтобы записать в `secret` значение 0x50574E21 нам нужно передавать байты в обратном порядке, т.к. в памяти используется Little Endian формат.

Report Page