저번 문제의 충격에서 빠져나와 3번 문제를 풀어보도록 하겠습니다.
문제
풀이
이번 문제를 보고 제가 제일 먼저 해 본 행동은 구글링입니다.
뭔가 나오길래 쳐봤더니 아니였습니다.
어쩔수 없이 올리디버거를 이용해 보도록 하겠습니다.
제대로 된 분석을 시작하기 전에 실행은 시켜봐야죠
입력창이 뜨고 문자열을 입력하니 실패 했다고 하네요 이제 실행도 시켰으니 분석을 해보겠습니다.
여태까지는(여태라고 해봤자 1번 문제만이였지만)직접 실행 시켜보면서 했지만 이번에는 다른 방법을 쓰겠습니다.
올리디버거의 기능중 하나를 이용하는건데 바로 ALL referenced text strings 기능을 이용하는겁니다.
사용법은 마우스 오른쪽 클릭 -> Search for -> ALL referenced text strings 클릭
이게 무슨 역할을 하는거냐면 해당 프로그램이 실행될 때 참조하는 모든 문자열을 볼 수있는 카테고리를 보여줍니다.
천천히 내려가면서 아까 실행시켰을때 나오는 문장을 찾아 봅시다.
맨밑에 있었습니다. 근데 저번 문제의 답과 비슷한 문자열이 있네요. 혹시나 하는 기대를 했지만 이번 문제는"비주얼베이직에서 스트링 비교함수 이름은?" 이였기 때문에 저건 아닌것 같군요. 저기서 더블 클릭을 하면 저 문자열이 있는 위치로 갈 수 있습니다.
유니코드를 넣고 밑에 함수를 호출하네요.
어?
STR = 스트링 , Cmp = 비교
혹시 vbaStrCmp 저게 우리가 찾는 답은 아닐까요?
야호!! 이번 문제는 저번 문제보다 좋았습니다. 점점 흥미를 느껴 가는 중입니다.
내가 생각하는 문제가 의미하는것 : 올리디버거의 활용
'리버싱에 관하여 > ctf' 카테고리의 다른 글
pico CTF sidechannel writeup[side channel attack에 관하여] (0) | 2023.06.04 |
---|---|
CodeEngn<Basic RCE L05> (0) | 2020.09.08 |
Codeengn<Basic RCE L04> (0) | 2020.09.07 |
CodeEngn <Basic RCE L02> (0) | 2020.09.06 |
CodeEngn <Basic RCE L01> (0) | 2020.09.06 |