Light mode Light mode Dark mode Dark mode

Anti-rev

Oliver Kovacs

openECSC 2024 - Round 2

Category: rev

Description #

Good luck finding the secret word for my super secure program!

Attachments: anti-rev

Solution #

import angr

project = angr.Project("anti-rev", auto_load_libs=True)
simgr = project.factory.simulation_manager(p.factory.full_init_state())
simgr.explore(find=0x401def, avoid=0x401df8)
print(simgr.found[0].posix.dumps(0))

Bonus #

Use angr to disassemble and find address to search for.

import angr

project = angr.Project("anti-rev", auto_load_libs=False)
cfg = project.analyses.CFG(normalize=True)
for node in sorted(cfg.model.nodes(), key=lambda n: n.addr):
    if not node.is_simprocedure:
        node.block.pp()