본문 바로가기

관리하지않음/대학과제

bomb lab phase 1 설명

이전 포스팅 맥(macOS), 윈도우(Window10)에서 bomb lab 풀기

 

이전에 다운받은 bomb lab phase 1 풀어보겠습니다.

gdb 명령어를 통해 bomb 실행시키고 phase_1 break 걸어줍니다.

gdb bomb

break phase_1

phase_1 디스어셈블 해줍니다.

disas phase_1

터미널 화면

디스어셈블된 코드를 읽어보면

0x0000000000400e91 <+4>: mov    $0x402450,%esi

0x402450에 저장된걸 %esi로 mov합니다.

x/s 명령어로 그 안에 어떤게 저장되어 있는지 확인했습니다.

x/s 0x402450
// 출력 : The moon unit will be divided into two divisions.

 

땡잡았네요:D

phase_1 답을 찾은 것 같습니다.

 

답이 맞는지 확인하기 위해서 phase_1에 걸린 break를 풀고

bomb이 터지는걸 방지하기 위해 explode_bomb과 phase_2에 break를 겁니다.

cl phase_1

break explode_bomb

break phase_2

run

터미널 화면

제가 찾은 정답을 입력하니 Phase 1 defused. How aboud the next one? 이라는 문구가 뜹니다:D

간단하게 bomb lab phase 1을 풀었습니다.

 

제가 이전에 공부할 때 푼 bomb lab이랑 다르고 어셈블리어도 기억이 안나서 자료를 엄청 찾아봤습니다 TvT

잊어버리지 않으려고 다시 도전해보길 잘한것 같습니다. 많은 공부가 되네요..

과제하시는 학생분들이 힘내세요!


잘못된 내용이 있다면 언제든지 댓글이나 메일로 알려주시면 감사하겠습니다.

이 포스팅이 도움이 되었다면 공감 부탁드립니다.

궁금한 점은 언제든지 댓글 남겨주시면 답변해드리겠습니다:D