-
NCSC CTF 2019 [Reversing]Warmup write upCTF write_up/NCSC CTF 2019. 2. 8. 23:43
bin파일은 ELF 파일로 되어 있기 때문에 IDA 프로그램으로 바이너리를 분석해 보도록 하겠습니다.
↑main() 함수
FLAG 를 입력 하는데 입력한 문자열을 8번째 줄에 의해서 Hex로 변환해 줍니다.
그리고 func()로 들어가게 되는데
↑func() 함수
12번줄 에서 재귀함수를 사용하고, 13번 줄에서 입력한 값의 Hex값을 역순으로 바꿔 주는 역할을 합니다.
그리고 나서 main()함수의 10번째 줄의 d71297374333f597374333f597374333b7374756e6962757365637 와 test를 비교해서 참이 되어야 합니다.
D71297374333f597374333f597374333b7374756e6962757365637 -> 7365637572696e6574737b333473795f333473795f33347379217d 로 역순을 해주고 -> 2개씩 끊어서 Hex형태로 만들어준뒤 73 65 63 75 72 69 6e 65 74 73 7b 33 34 73 79 5f 33 34 73 79 5f 33 34 73 79 21 7d -> hex를 다시 문자열로 변환해 줍니다. -> securinets{34sy_34sy_34sy!} 가 됩니다.
이를 파이썬 코드로 짜보면 다음과 같습니다.
1
2
3
4
5
n1 = 'd71297374333f597374333f597374333b7374756e6962757365637'[::-1]
n2 = ''
for i in xrange(len(n1)/2):
n2 += chr(int(n1[i*2:i*2+2], 16))
print n2
Flag : securinets{34sy_34sy_34sy!}
'CTF write_up > NCSC CTF' 카테고리의 다른 글
NCSC CTF 2019 [Reversing]2factorauth write up (0) 2019.02.09 NCSC CTF 2019 [Crypto]crypto1 write up (0) 2019.02.08 NCSC CTF 2019 [Crypto]Hmm.. write up (0) 2019.02.08 NCSC CTF 2019 [Misc]Baby Hacker write up (0) 2019.02.08 NCSC CTF 2019 [Misc]LOST FLAG write up (0) 2019.02.08