CTF-APPLE SAFEBOX V1 SOLUTION. Melakukan simpel brute-force.

 Link : http://ctf-apple.herokuapp.com/CTF_1/

===================================


import random

import string

import time


def get_random_string(length):

    # Random string with the combination of lower and upper case

    letters = string.ascii_letters

    result_str = ''.join(random.choice(letters) for i in range(length))

    return result_str


get_random_string(11)



# substr($code, 0,1) == substr($code, 2,1) && ord(substr($code, 2,1)) == 119

# Huruf pada ke-3 dan ke-5 memiliki nilai dalam bentuk char : 119

# chr(119) = w

# Huruf ke-3 dan ke-5 ialah w


# $c = substr($code, 9,1);

# substr($code, 7,1) == "g" && ord($c) == 99

# char(99) = c

# Huruf ke - 8 ialah : g dan huruf ke - 10 : c 


# for($i = 0; $i < strlen($code); ++$i){

# Untuk setiap huruf di dalam string, eksekusi kode berikut


# $b = ord($code[$i]);

# Assign variable b dengan nilai dari integernya huruf di code saat ini


# if ($i % 2 == 0) {

# $a += $b;

# Jika hasil dari i % 2 ialah 0

# nilai a = a + b


# } else {

# $a -= $b;

# Selain itu nilai a = a - b


# Kunci akhir ada pada kode ini

# $a == (ord('f')+100)

# ord('f') = 102

# Nilai a seharusnya ialah 202




while True:

key = get_random_string(11)

lkey = list(key)

# print(key)

lkey[2] = "w";

lkey[4] = "w";

lkey[7] = "g";

lkey[9] = "c";

a = 0

for x in range(len(lkey)):

b = ord(lkey[x])

if (x % 2 == 0 ):

a += b

else:

a -= b

 

if a == 202:

  key = "".join(lkey)

  print(key)

 

time.sleep(0.00001)


Comments

Popular Posts