본문 바로가기
pico CTF

[pico CTF] Transformation

by skyepodium 2023. 4. 2.

1. 개요

16bit, 8bit 이해 문제

 

2. 분석

코드를 보면, 앞글자를 8 bit 뒤록 밀고, 뒷글자를 붙여서 16bit 문자열을 생성합니다.

''.join([chr((ord(flag[i]) << 8) + ord(flag[i + 1])) for i in range(0, len(flag), 2)])
# 灩捯䍔䙻ㄶ形楴獟楮獴㌴摟潦弸強㕤㐸㤸扽

 

결과물을 하나씩 순회하면서 앞글자는 8비트 앞으로 당기고, 뒷글자는 0xff(255)와 &연산으로 알아냅니다.

res = "灩捯䍔䙻ㄶ形楴獟楮獴㌴摟潦弸強㕤㐸㤸扽"
flag = ''

for i in range(0, len(res)):
    num = ord(res[i])
    flag += chr(num >> 8) + chr(num & 0xff)

print(flag)
# picoCTF{16_bits_inst34d_of_8_75d4898b}

'pico CTF' 카테고리의 다른 글

[picoCTF] caas  (0) 2023.04.28
[picoCTF] X marks the spot  (0) 2023.04.28
[pico CTF] First Find  (0) 2022.08.15
[pico CTF] Big Zip  (0) 2022.08.15
[pico CTF] WhitePages  (0) 2022.08.15