Challenge: HuntMe1
Author: N!L
Type: Reverse Engineering / Basic Forensics
File: HuntMe1 (Linux ELF)
Flag: nexus{h1dd3n_1n_7h3_f0r357_4t_n1gh7}
Running the binary prints story text but doesn’t ask for input and never outputs a flag.
The flag is stored as a plaintext constant in the binary’s read-only data section (.rodata) under the symbol hidden_payload.
file HuntMe1
Example output:
HuntMe1: ELF 64-bit LSB pie executable, x86-64, dynamically linked, ... , not stripped
Key points:
./HuntMe1
The program prints atmospheric “forest at night” text and exits.
This matches the challenge hint: “Nothing reacts. Nothing responds. Yet something is there.”
A fast way to find hidden plaintext is strings.
strings -n 4 HuntMe1 | grep 'nexus{'
Output:
nexus{h1dd3n_1n_7h3_f0r357_4t_n1gh7}
At this point, the flag is already recovered.
.rodataBecause the binary is not stripped, we can check symbols:
nm -C HuntMe1 | grep -i hidden
Output:
0000000000002020 R hidden_payload
R indicates a read-only symbol (typically .rodata)0x2020) is where the payload startsDump .rodata to verify:
objdump -s -j .rodata HuntMe1 | less
You’ll see the ASCII for the flag in the dump around that address.
nexus{h1dd3n_1n_7h3_f0r357_4t_n1gh7}