ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   Задания/Квесты/CTF/Конкурсы (https://forum.antichat.xyz/forumdisplay.php?f=112)
-   -   Файлы PYC (writeup) (https://forum.antichat.xyz/showthread.php?t=1641896)

yetiraki 15.05.2023 20:25

Привет.
Идем дальше.

А вот это вот интересно. На мой взгляд, что ни ghidra, ни ida тут не помощник. Нужно что-то иное.
hexeditor показал, что внутри есть Enter Flag, Wrong Flag и прочее, значит там есть какой-то код, скорее всего питоновский.

Ищем декомпилятор.
Есть uncompyle6 и decompyle3, но там какие-то проблемы с версиями питона. Есть еще pycdc.

git clone GitHub - zrax/pycdc: C++ python bytecode disassembler and decompiler
cd pycdc
cmake CMakeLists.txt
make
./pycdc task.cpython-38.pyc

Выводится код, который pycdc декомпилировал. Копипастим его в свой питоновский скрипт. Удаляем ненужное, добавляем нужное.

Python:


Код:

rnd
=
b'\\;\xfe\xf5E\xff]\xe3\xc3i\xa0\x07\xacO\x97\xb9k\x8f'
enc
=
b'!|\x90\xc4.\xa0n\x88\xf7\x07\xf3|\xf5\r\xd2\xfd$\xcc'
enc
=
enc
[
:
:
-
1
]
rnd
=
rnd
[
:
:
-
1
]
flag
=
""
for
i
in
range
(
len
(
enc
)
)
:
flag
+=
chr
(
enc
[
i
]
^
rnd
[
i
]
)
print
(
flag
)

Получили флаг.


Время: 03:25