سوال داده شده به صورت زیر است:
You need to authenticate with the guard to gain access to the
loading bay! Enter the root password from the vault application to
retrieve the passkey! This class file is the executable for the vault application.
جواب:
در این سوال یک فایل .Class داده شده است و بیان شده که این برنامه قرار
است از ورودی یک پسورد بگیرد و یک کلید را به عنوان خروجی بدهد و از شرکت کننده خواسته شده است که این کلید
را بیابد
راه حل: یک راه این است که به کمک برخی ابزارهای موجود کد
جاوای متناظر با این فایل را به دست بیاوریم به عنوان مثال میتوانید به
این آدرس رفته و برنامهی jad را دانلود کنید.
آنگاه فایل Authenticator.class را در کنار آن کپی کنید و با اجرای دستور زیر در خط فرمان خروجی که فایلی به نام Authenticator.jad میباشد را به دست آورید:
./jad Authenticator.class
محتوای درون آن به این صورت است:// Decompiled by Jad v1.5.8e. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/kpdus/jad.html
// Decompiler options: packimports(3)
// Source File Name: Authenticator.java
import java.io.Console;
import java.io.PrintStream;
class Authenticator
{
public Authenticator()
{
}
public static void main(String args[])
{
key = new char[10];
key[0] = 'j';
key[1] = 'f';
key[2] = 'U';
key[3] = 'D';
key[4] = 'Y';
key[5] = 'z';
key[6] = 'E';
key[7] = 'J';
key[8] = 'G';
key[9] = 'S';
Console console = System.console();
for(String s = ""; !s.equals("ThisIsth3mag1calString2731"); s = console.readLine("Enter password:", new Object[0]));
for(int i = 0; i < key.length; i++)
System.out.print(key[i]);
System.out.println("");
}
public static char key[];
}
کلید عبارت jfUDYzEJGS میباشد