Dreamhack/Dreamhack Wargame (Challenge)

[5] IT 비전공자 [dreamhack] Reversing Basic Challenge #0 문제 풀기

imaginefuture-1 2024. 9. 23. 09:09

일단 네번째 문제에서 패스하고.. 바로 다음 문제로 간다

https://mokpo.tistory.com/255

엔지니어링이란 완성품과 이를 구성하는 부품들의 기능과 설계를 고안하고, 제작하는 과정을 말합니다. 이와 대비되는 리버스 엔지니어링(Reverse Engineering)은 용어의 ‘리버스’가 의미하듯, 위 과정을 거꾸로 하는 행위를 말합니다. 완성된 제품을 해체하고 분석하여 구조와 기능, 디자인을 파악합니다. 책에 따라 이를 ‘역공학’이라고 지칭하기도 하지만, 이 강의에서는 보다 널리 사용되는 ‘리버스 엔지니어링' 또는 ‘리버싱’이라는 단어를 사용하겠습니다.

드림핵 리버스 엔지니어링이란

문제 파일을 다운로드 후 chall0.exe 파일은 눌러봤다

응?

블로그 글을 보니 x64dbg로 open 해야한다..

https://choimungu.tistory.com/54

  • 직접 일일이 한 줄씩 찾아보기
  • printf()를 중간에 넣어 오류 발생 예상
  • 디버거 사용

아하 오류 찾을려고 이걸로 들어가는 구나

파일 다운로드 후 실행해 보았다

하하 뭔지 하나도 모르겠다 근데 일단 있어보임 ㅋ 굿 ㅋ


문제는 correct 문자열을 출력시키는 flag 값만 찾으면 되기 때문에

아래와 같이 문자열 참조 찾기 기능을 통해 "correct"를 검색해주도록 한다.

출처: https://mokpo.tistory.com/255 [MSS:티스토리]

찾았다

test eax,eax를 통해 참 거짓을 판단하는 것으로 보아

바로위 함수 chall0.8FF64087100 에서 정답 문자열을 확인하는 것 같다.

출처: https://mokpo.tistory.com/255 [MSS:티스토리]

나는 이거인 것 같았다

chall0.7FF7213D1000

더블클릭하고 들어가니 "Compar3_the_str1ng"이 뜬다

입력해봤다

correct가 안뜨고 그대로 cmd 창이 사라진다...

하...

또 왜그러니 ㅠㅜ

문제를 다시 봤다

아 포맷을 지켜주세요!

DH{Compar3_the_str1ng}

는 또 안된다

또 사라졌다..내 cmd창 어디가...계속 ㅠㅜ

하...쉽지않다 역시..

 

 ++++++

 

조교수님한테 도움을 요청했지만 결국 cmd창 프로그램 문제인거 봐서 드림핵쪽으로 문의를 드려봐야겠다..

커뮤니티에 답글이 달렸다

 

바로 시도​

하하하핳하ㅏ 컴퓨터 너 이자식!!!!!!!!!!!!!!!!하하하하 문제 해결 완료!!!!

 

근데...이게 왜 되는거지..? 

 

한번만 더 알려주세요 지나가는 선인이시여...