windows 11 환경에서 풀이를 진행하였습니다.
인코딩, 디코딩을 이야기하며 암호문임을 암시합니다.
문제 파일을 확인해보면 빨강과 검정이 픽셀단위로 이루어져 있습니다.
책의 풀이를 확인해보면 2가지로 이루어진 특성으로
0과 1로 이루어진 바이너리 값임을 추측합니다.
(그걸 어떻게 아니..)
파이썬의 pillow 라이브러리를 활용해 이미지를 로드해 분석할 수 있습니다.
from PIL import Image
pic = Image.open('color.png')
data = pic.load()
red = (255,0,0)
binary_lines = []
width, height = pic.size
for y in range(height):
binary_line = []
for x in range(width):
pixel = data[x,y]
if pixel == red:
binary_line.append('1')
else:
binary_line.append('0')
binary_lines.append(binary_line)
ascii_text = ''
for line in binary_lines:
ascii_text += ''.join([chr(int(''.join(line),2))])
print(ascii_text)
실행 결과로 나오는 값이 플래그 입니다.
'write-up(forensic) > ctf-d' 카테고리의 다른 글
[ctf-d] 계속 주시해라! write-up (0) | 2023.02.03 |
---|---|
[ctf-d] 내 친구는 이것이 특별한... write-up (0) | 2023.02.03 |
[ctf-d] Three Thieves Threw Trumpets Through Trees write-up (0) | 2023.02.02 |
[ctf-d] Find Key(moon) write-up (0) | 2023.02.02 |
[ctf-d] 플래그를 찾아라! write-up (0) | 2023.02.02 |