Description
This challenge is of easy difficulty. A message is hidden in this very interesting text about the Indonesian language. Good luck!
Question: How to retrieve the hidden message?
Resolution
This challenge used a steganography technique based on zero-width characters. These characters are often used to hide information in text without being visible to the human eye. Here is how we solved the challenge:
By carefully analyzing the given text file, we noticed the presence of zero-width characters such as the Zero Width Non-Joiner (U+200C) and the Zero Width Joiner (U+200D). These characters are invisible but can encode binary information. We extracted these characters to convert them into a usable binary sequence.
Reading zero-width characters in the text
target_chars = [‘\u200c’, ‘\u200d’] zero_width_chars = ”.join([char for char in text if char in target_chars])
Mapping the characters to their binary equivalent
zero_width_to_binary = { ‘\u200c’: ‘0’, ‘\u200d’: ‘1’ }
Converting characters into a binary string
We convert zero width characters to binary strings.
Converting to readable text
After decoding the binary sequence, we obtained the hidden message which was:
flag{Z3R0_W1D7H_S73G4N0GR4PHY}
This type of steganography is very effective for hiding messages in ordinary text because zero-width characters are undetectable without a specialized analysis tool.
Flag was flag{Z3R0_W1D7H_S73G4N0GR4PHY}.