일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 데이터 형태
- phase_4
- IDS
- 아두이노
- phase_5
- bomblab
- pwntool
- Reversing
- reversingg
- 침입감지시스템
- Linux
- phase_3
- 리버싱
- pwnable
- 명령어
- 밤랩
- phase_1
- 서브모터
- gdb
- phase_6
- 툴
- 디렉터리
- bomb lab
- 파일
- 스테가노
- Bomb
- phase_2
- binarybomb
- 리눅스
- mandb
- Today
- Total
Flag={C0MPU73R}
(리버싱) 밤랩 bomb - phase_1 본문
#bomb 문제는 phase_1 부터 phase_6까지 6개의 문제로 이루어져있다
#1단계부터 6단계까지 모두 맞춰야 폭탄이 해체되는 형식이다
문제를 실행해본다
bomb 파일을 실행하면 문장 두 줄이 뜨고 뭔가를 입력할 수 있게 된다
뭔가를 입력하게 되면
사진과 같이 BOOM!!! 하면서 폭탄이 터진 것 같이 하면서 종료된다
먼저 gdb로 bomb 문제를 연다
그 후 phase_1을 분석한다
phase_1은 문자열을 입력해서 그게 정해진 문자열과 일치하면
다음으로 넘어가는 문제인 것 같다
explode_bomb이란 함수(?)는 문자열이 틀리면 저 주소로 호출되서 폭탄이 터지는 것 같다
폭탄이 터지기 바로 전에 break를 걸어서 그 부분에서
내가 입력한 문자열이 어디에 들어가있는지 확인해본다
폭탄 터뜨리는 함수 전에 브레이크 포인트를 걸고
r 로 실행하여 아무 문자열을 입력한다(sung7751)
그 후 context reg로 레지스터를 확인한다
띠용?
내가 찾던 sung7751은 어딨는지 모르겠고 RSI에 뭔가 되게 정답같이 생긴 문자열이 있다
"When a problem comes along, you must zip it!"
bomb 파일을 실행해서 넣어본다
phase_1이 해체되었다
#사실 phase_1 처음 부분의 0x4023b0을 보거나 <strings_not_equal>함수에서 비교하는
#부분을 봐도 나오지만 이 둘은 너무 짧고 길어서 그냥 이걸로 정리했다
다음은 내가 몰라서 못한 것 같지만 뻘짓을 한 phase_2 문제를 풀어보겠따
오타있으면 지적 부탁드려용
'사이버 가디언즈' 카테고리의 다른 글
(리버싱) 밤랩 bomb - phase_3 (3) | 2018.08.26 |
---|---|
(리버싱) 밤랩 bomb - phase_2 (0) | 2018.08.25 |
스택과 레지스터 이용 (0) | 2018.08.22 |
리버싱(Reversing) 정보 블로그 (0) | 2018.08.22 |
어셈블리어(Assembly)에 대해 (0) | 2018.08.22 |