반응형
WolvCTF 2023 yowhatsthepassword Writeup
Description
hey I lost the password :(
먼저 문제를 풀기 위해 main.py 코드부터 확인해보자.
# I'm thinking of a number from 0 to 2^32 - 1
# Can you guess it?
import random
def generate(seed):
random.seed(seed)
c = 0
while c != ord('}'):
c = random.randint(97, 126)
print(chr(c), end='')
print()
secret = 'ly9ppw=='
import base64
s = int(input("password? >>> "))
if int(base64.b64decode(secret).hex(), 16) == s:
generate(s)
else:
print('nope')
위 코드에서 패스워드를 맞추면 된다. 바로 익스플로잇 코드를 작성했다.
import base64
secret = 'ly9ppw=='
decoded_secret = base64.b64decode(secret)
hex_secret = decoded_secret.hex()
int_secret = int(hex_secret, 16)
print(int_secret)
password는 2536466855이 나온다. 이후 원래 프로그램에서 password를 입력하면 flag가 출력된다.
wctf{ywtp}
728x90
'Reversing' 카테고리의 다른 글
BucketCTF 2023 Apps Writeup (0) | 2023.04.10 |
---|---|
wolvctf2023 baby-re Writeup (0) | 2023.03.20 |
b01lers CTF padlock Writeup (0) | 2023.03.20 |
KnightCTF 2023 Rev - Help Jimmy Writeup (0) | 2023.01.27 |
Knight CTF 2022 Reversing Droid Flag Wrteup (0) | 2023.01.22 |