Skip to content

Repository files navigation

TheReturnOfTheInts

A reverse engineering crackme written in C, designed as a HackTheBox-style challenge.

Description

A password-protected binary that validates your input and returns a flag if correct. Sounds simple. It isn't.

Challenge

Reverse engineer the binary to find the correct password. The flag will be printed in HTB{...} format upon success.

Building

make all

Dependencies: OpenSSL (libssl-dev)

# Ubuntu/Debian
sudo apt install libssl-dev

Concepts Covered

  • Anti-debugging techniques (ptrace)
  • Multi-threaded execution and race condition analysis
  • MD5 hashing
  • Byte-level XOR obfuscation
  • Loop-based value obfuscation
  • Function pointer obfuscation
  • Red herring analysis

Hints

Hint 1 The program detects debuggers. How does it do that, and can it be bypassed?
Hint 2 The password is assembled across multiple threads. What does each thread actually contribute?
Hint 3 Not everything that looks random is random. Trace the math.
Hint 4 The password is never stored as plaintext. What is it compared against?

Recommended Tools

  • GDB with pwndbg
  • Ghidra or IDA
  • Python for scripting
  • ltrace / strace

Author

Andromeda1957github.com/Andromeda1957

HTB: andromeda1957 — Prodigy rank, 186 machines rooted

See also: Reversing-Challenges for more RE practice material.

About

Reversing challenge for HTB

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages