Contents

Bitguard Cybersecurity Hackthon

The Capture the Flag (CTF) event organized by Mercer | Mettl spanned two weeks and featured 20 challenges. I successfully solved 15 of these challenges, securing the 37th position in the competition. This CTF, designed for participants at a beginner-to-intermediate level, offered a fantastic opportunity to enhance my cybersecurity skills and explore new concepts.

Challenge 1: Introduction

This was a straightforward sanity challenge. The flag was directly visible in plaintext on the provided website.

FLAG: Flag{this_is_an_example_flag}

Challenge 2: Tic Tac Toe

The challenge involved a simple encryption script in JavaScript. By reversing the script, I decrypted the flag.

FLAG: Flag{XOX_XOX_XOX_is_easy}

Challenge 3: Connect 4

Similar to Challenge 2, this challenge required decrypting an encrypted string using the same method.

FLAG: Flag{CONNECT_MY_$_FORCE}

Challenge 4: Brute ME

Despite the name suggesting a brute-force approach, the flag was hidden in plain sight within the source code.

FLAG: Flag{Dolphin_is_not_the_password}

Challenge 5: Android

This was a new area for me, but after some research, I used a keytool command to extract the flag from the alias name in an APK file.

FLAG: flag{apk_is_mine}

Challenge 6: ICANN

The challenge hinted at DNS records. By inspecting the TXT record of the challenge’s domain using dnschecker.org, I found the flag.

FLAG: Flag{WHAT??_this_is_my_DNS}

Challenge 7: Google

Although I couldn’t solve this challenge, I suspect that modifying the User-Agent string to “Googlebot” would have worked.

Challenge 8: i-Robot

This challenge was centered around the robots.txt file. I navigated through the site’s directories and solved a CAPTCHA to retrieve the flag.

FLAG: Flag{You_are_a_Noble_HUMAN}

Challenge 9: BrainDuck

By using a BrainFck compiler from dcode.fr, I decoded the flag from a BrainFck script.

FLAG: Flag{Brain_Duck_WTF}

Challenge 10: URL

I noticed a “page=3” parameter in the URL. Changing it to “page=0” revealed the flag.

FLAG: Flag{ZERO_based_indexing}

Challenge 11: Country

I identified the country associated with a hash using VirusTotal and guessed the flag correctly.

FLAG: flag{india}

Challenge 12: Maybach Shenanigans

This steganography challenge involved extracting hidden data from a PNG file using stylesuxx.github.io/steganography/, which led to a base64-encoded URL and ultimately the flag.

FLAG: flag{b3tter_b3_r3ady}

Challenge 13: QR Code

I used an Imgur link provided in the challenge to retrieve an image containing a QR code. Scanning the code using zxing.org revealed the flag.

FLAG: Flag{aGVsbG8gd29ybGQ=}

Challenge 16: Dr. Strange

This challenge required exploiting a PHP command injection vulnerability in the date command. By carefully crafting a payload, I managed to read the flag file.

FLAG: flag{1ts_t1me_t0_ge4r_up}

Challenge 17: Tor

I explored the TOR network and identified a relay’s fingerprint to obtain the flag.

FLAG: flag{94.130.89.176:9030}

Challenge 19: S3

Using AWS CLI, I enumerated an S3 bucket and discovered the flag in a text file.

FLAG: Flag{S3S3S3S3S3S3S3S3S3S--Symmetry--3S3S3S3S3S3S3S3S3S3S3S3}