Difficulty Rating:

Easy

Description

This vault uses some complicated arrays! I hope you can make sense of it, special agent. The source code for this vault is here:

Download: VaultDoor1.java

Enumeration

We encountered another Java file that claimed to hide the flag in a more complex manner.

vault-door-1

Upon inspecting the Java file using JD-GUI, a popular decompiler, we discovered a clever obfuscation technique. Each element within an array held a single character, and when these characters were sequentially concatenated, the hidden flag was revealed right before our eyes.

java_file

Extracting Flag

Below a python script that solve the challenge.

myPass = [None] * 32

myPass[0]  = 'd'
myPass[29] = 'f'
myPass[4]  = 'r'
myPass[2]  = '5'
myPass[23] = 'r'
myPass[3]  = 'c'
myPass[17] = '4'
myPass[1]  = '3'
myPass[7]  = 'b'
myPass[10] = '_'
myPass[5]  = '4'
myPass[9]  = '3'
myPass[11] = 't'
myPass[15] = 'c'
myPass[8]  = 'l'
myPass[12] = 'H'
myPass[20] = 'c'
myPass[14] = '_'
myPass[6]  = 'm'
myPass[24] = '5'
myPass[18] = 'r'
myPass[13] = '3'
myPass[19] = '4'
myPass[21] = 'T'
myPass[16] = 'H'
myPass[27] = '3'
myPass[30] = '3'
myPass[25] = '_'
myPass[22] = '3'
myPass[28] = 'e'
myPass[26] = '6'
myPass[31] = 'a'

print("" + ''.join(myPass))