日記帳

CTFのWriteupや雑記など

Internetwache CTF 2016 : File Checker

How to solve

Decompile it and understand the flow of given program.
(Ghidra was not correctly decompiling it around function arguments, so I have made a quick fixes by reading some assembly code.)
Solver Script:

checkers = [0x12ee, 0x12e0, 0x12bc, 0x12f1, 0x12ee, 0x12eb, 0x12f2, 0x12d8, 0x12f4, 0x12ef, 0x12d2, 0x12f4, 0x12ec, 0x12d6, 0x12ba]
flag = []

for data in checkers:
    flag.append(chr(0x1337 - data))

print('Flag: ' + ''.join(flag))

Flag

IW{FILE_CHeCKa}