WARGAME/PicoCTF
picoCTF2019 - WhitePages
daydreamtalker
2024. 4. 27. 10:36
Problem
Explanation
다운 받은 파일은 whitepages.txt 파일이다. txt파일이라 손쉽게 열어보니 깡통파일이다.
만능 HxD툴을 사용해서 열어보니 알 수 없는 글들이 잔득 이다….
그래도 해석을 해보려고 보니 E2 80 83과 공백인 20이 반복되는 듯 하다…
E2 80 83을 0으로 두고 공백을 1로 계산해보면 무언가 나올 것 같다.
일단 코드를 짜야한다고 생각은 했었는데 코딩이 쥐약이라 이 부분은 구글링을 통해 해결했다……
대충 코드를 해석한다면, whitepages.txt를 가져와서 \xe2\x80\x83 를 \x30 로 바꾸고 \x20 를 \x31 로 바꿔 바이너리로 만드는 코드이다.
import os
import base64
import binascii
file = "whitepages.txt"
with open(file, 'rb') as f:
bstring = f.read()
bstring = bstring.replace(b'\\xe2\\x80\\x83',b'\\x30').replace(b'\\x20',b'\\x31')
print(bstring)
코드를 돌려서 나온 결과이다. 바이너리 숫자가 나오는데 이걸 그대로 binary to ASCII로 convert 하면 flag을 얻을 수 있을 것 같다.
flag을 획득했다.
flag: picoCTF{not_all_spaces_are_created_equal_c54f27cd05c2189f8147cc6f5deb2e56
2023/May/03 solved.