Size: a a a

Ассемблер

2020 September 29

RG

R G in Ассемблер
Rusty Shackleford
раньше как-то люди обходились без отладочных символов
значит сами решали какая метка по какому адресу будет, а может быть и вовсе символьных меток не было. Тогда можно обойтись, согласен, если сам решаешь что по каким адресам будет заранее
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮b... in Ассемблер
Rusty Shackleford
раньше как-то люди обходились без отладочных символов
раньше отладку на бумажке делали
источник

A

Aleksandr in Ассемблер
@Saenro я кручу твой ctf и зашел в ступор. я понял все алгоритмы, я переписал их на си чтобы в этом убедиться, но не могу понять как пройти обратный путь от хеша до флага
источник

ST

Saenro T in Ассемблер
Aleksandr
@Saenro я кручу твой ctf и зашел в ступор. я понял все алгоритмы, я переписал их на си чтобы в этом убедиться, но не могу понять как пройти обратный путь от хеша до флага
Восстановить флаг опираясь только на хеш, мероприятие весьма сомнительное. Хеш годится разве что для проверки флага на предмет истинности. Сам флаг скрыт в области данных. Но и хеш на эту область данных там тоже есть😉
источник

A

Aleksandr in Ассемблер
погоди, нет. у тебя берется жестко забитый флаг и из него считается хеш, сверяется с контрольным
источник

A

Aleksandr in Ассемблер
или я затупил
источник

ST

Saenro T in Ассемблер
Как я уже сказал, выкрутить флаг из хеша — чистой воды мазохизм) Алгоритм зашифрования, которым зашифрован флаг там присутствует, как и сам зашифрованный флаг. Так же там есть хеш зашифрованного флага (с ним уже можно что-то найти😉). Если строку "CC{" продолжить правильной последовательностью оставшейся части флага, он должен правильно зашифраваться, после чего с него снимается хеш, который в свою очередь, должен совпасть с имеющимся хешем, тогда прога предполагает что флаг правильный.
источник

A

Aleksandr in Ассемблер
Хм, я не думал что среди данных может быть зашифрованный флаг
источник

ST

Saenro T in Ассемблер
Aleksandr
Хм, я не думал что среди данных может быть зашифрованный флаг
Хеш предполагает бесконечное количество разных флагов. Но меня устроит лишь один) Поэтому пришлось увеличить разрядность хеша за счёт дополнительного алгоритма, плюс добавил фильтр в самом начале. Ну а чтобы не мучаться брутфорсить, как и во всех ctf что я встречал, истинный флаг уже заложен в исследуемом файле.
источник

ST

Saenro T in Ассемблер
Возможно и есть ctf, в которых флаг отсутствует, но есть его хеш и предполагается что флаг нужно выкрутить из хеша. Но в таком случае флаг должен быть коротеньким и при этом не длиннее хеша. Но тут уже нужен только брутфорс.
источник

ST

Saenro T in Ассемблер
Aleksandr
Хм, я не думал что среди данных может быть зашифрованный флаг
Там ещё будут подводные камни😉
источник

A

Aleksandr in Ассемблер
ну, я нашел шесть байт которые при хешировании вроде бы флагоподобны
источник

ST

Saenro T in Ассемблер
Aleksandr
ну, я нашел шесть байт которые при хешировании вроде бы флагоподобны
Это та версия что из последних скидывал? С xmm?
источник

A

Aleksandr in Ассемблер
да
источник

ST

Saenro T in Ассемблер
Пропатчи ими строчку где в данных CC{ и запусти прогу, а скрин мессаджбокса кинь в личку.
источник

A

Aleksandr in Ассемблер
а не, не шесть. закончу - кину
источник

ST

Saenro T in Ассемблер
Aleksandr
а не, не шесть. закончу - кину
Поздравляю!)
В этом чате ты уже второй кто сложил пазл)
источник

A

Aleksandr in Ассемблер
с подсказкой
источник

ST

Saenro T in Ассемблер
Рано или поздно, всё равно бы разобрался.
источник

d

diss4 in Ассемблер
Всем привет, прошу помощи:
mul eax, ebx

Результат умножение помещается в регистровую пару EDX:EAX. Как теперь из этой регистровой пары мне взять результат для дальнейших арифметических операций, весь гугл перерыл...
источник