엔지니어링이란 완성품과 이를 구성하는 부품들의 기능과 설계를 고안하고, 제작하는 과정을 말합니다. 이와 대비되는 리버스 엔지니어링(Reverse Engineering)은 용어의 ‘리버스’가 의미하듯, 위 과정을 거꾸로 하는 행위를 말합니다. 완성된 제품을 해체하고 분석하여 구조와 기능, 디자인을 파악합니다. 책에 따라 이를 ‘역공학’이라고 지칭하기도 하지만, 이 강의에서는 보다 널리 사용되는 ‘리버스 엔지니어링' 또는 ‘리버싱’이라는 단어를 사용하겠습니다.
드림핵 리버스 엔지니어링이란
문제 파일을 다운로드 후 chall0.exe 파일은 눌러봤다
응?
- 직접 일일이 한 줄씩 찾아보기
- 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창 프로그램 문제인거 봐서 드림핵쪽으로 문의를 드려봐야겠다..
바로 시도
근데...이게 왜 되는거지..?
'Dreamhack > Dreamhack Wargame (Challenge)' 카테고리의 다른 글
[7] IT 비전공자 [dreamhack] Carve Party 문제 풀기 (1) | 2024.09.23 |
---|---|
[6] IT 비전공자 [dreamhack] rev-basic-1 문제 풀기 (0) | 2024.09.23 |
[4] IT 비전공자 [dreamhack] command-injection-1 문제 풀기 (0) | 2024.09.23 |
[3] IT 비전공자 [dreamhack] file-download-1 문제 풀기 (0) | 2024.09.23 |
[2] IT 비전공자 [dreamhack] devtools-sources 문제 풀기 (0) | 2024.09.23 |