agencies

CTF XOR 문제 만들기 본문

Ⅲ. 정보보안

CTF XOR 문제 만들기

agencies 2024. 11. 25. 10:41
msg = "in the flag.txt"
key = "?????"
flag = []

for i in range(len(msg)):
    t = ord(msg[i]) ^ ord(key[i%len(key)])
    flag.append(chr(t))

with open("flag.txt","w") as f:
    f.write("".join(flag))

flag.txt
0.00MB

 

 

이것은 문제 파일입니다.

msg 에는 flag.txt파일 안에 있는 문자를 읽어옵니다.

key에는 xor할 문자 5개가 들어갑니다.

 

플래그는 mobsy{ 로 시작하기 때문에

xor을 진행할 때 범위를 30 ~ 130 으로 진행합니다 : 키 값이 하나일 경우만... 진행

key를 mobsy로 설정하고 xor을 시도해봅시다.

 

with open("flag.txt","r") as f:
    msg=f.read()



key = "mobsy"
flag = []

for i in range(len(msg)):
    t = ord(msg[i]) ^ ord(key[i%len(key)])
    flag.append(chr(t))

print("".join(flag))