N00bCTF You Decode it? Write-up

CTF 중점 스터디

2020. 1. 24. 16:53

code.txt 파일을 다운로드한다.

code.txt 파일의 내용을 보면 python 코드가 존재한다. 이 코드를 보면 flag에 어떤 숫자 shift를 더한 값을 99와 xor하면은 list_ 배열에 있는 숫자와 동일한 숫자가 나온다는 것을 알 수 있다.
따라서 이를 역으로 계산하면 기존 flag를 알 수 있다. 그런데 이때 shift값을 정확히 모른다. 그렇지만 문제의 Hint를 통해 0에서 950 사이에 값이라는 것은 알 수 있기에 Brute Forcing을 사용한다.

역으로 계산하는 것이기 때문에 99와 xor을 먼저 한 뒤에, shift를 빼주어야 한다. 이때, shift의 값이 작을 때는 문자로 변환할 수 없기 때문에 try-except 구문을 사용하여 예외처리를 해주어야 한다.

python 코드를 실행시켜보면 중간에 'v3ry_funny_crypt0!!'라는 flag같이 생긴 것을 볼 수 있다.
따라서, flag로 NOObCTF{v3ry_funny_crypt0!!}를 제출한다.

Written by choi_jiung

'CTF 중점 스터디' 카테고리의 다른 글

riceteacatpanda BTS-Crazed Wirte up  (0) 2020.01.27
Wargame.kr_PHP? C?_Write up  (0) 2020.01.26
pwnable.kr passcode write up  (0) 2020.01.15
pwnable.kr flag write up  (0) 2020.01.14
wargame.kr_img recovery_Write up  (0) 2020.01.13