일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Bomb
- 파일
- 리버싱
- 툴
- 침입감지시스템
- bomblab
- binarybomb
- phase_2
- reversingg
- 밤랩
- 서브모터
- 스테가노
- phase_5
- 리눅스
- pwnable
- Reversing
- phase_6
- bomb lab
- 명령어
- phase_1
- 데이터 형태
- IDS
- 디렉터리
- mandb
- pwntool
- Linux
- 아두이노
- phase_3
- phase_4
- gdb
- Today
- Total
목록리버싱 (10)
Flag={C0MPU73R}
https://github.com/luongvo209/Binary-Bomb 다운로드 받아서 압축풀고 리눅스에 넣으면 된다 대부분 형식은 비슷하면서 조금씩 다르다
#bomb 문제는 phase_1 부터 phase_6까지 6개의 문제로 이루어져있다 #1단계부터 6단계까지 모두 맞춰야 폭탄이 해체되는 형식이다 이번엔 문제의 마지막 phase_6이다 gdb로 열어본당 증말증말 너무 길다.. 앞부분을 보니 이번에는 숫자 6개를 입력하는 문제같다 인자로 "1 2 3 4 5 6"을 넣고 분석해본다 첫번째 비교문을 돌려가며 보니 첫번째 인자에서 1을 빼고 eax와 비교하는데 그 값이 5와 같거나 작아야 통과된다 첫번째 인자 =< 6 첫번째 인자로 "1"을 넣었기 때문에 통과된다 다음 부분이다 r13d가 지금 "0"인데 1을 더하고 r13d가 6인지 비교해서 맞으면 점프한다 인자가 6개인 걸 보면 하나하나 다 비교해서 다 했을때 점프하는 것 같다 인자를 카운팅하는 r13d를 eb..
#bomb 문제는 phase_1 부터 phase_6까지 6개의 문제로 이루어져있다#1단계부터 6단계까지 모두 맞춰야 폭탄이 해체되는 형식이다 이번에는 phase_5를 정리한당 이번에도 숫자 두개를 입력하는 문제다 어짜피 터질거기 때문에 그냥 바로 분석한다 인자1과 인자2를 입력 받는데 입력받고 rsp(인자1)와 15(0xf)를 비교해서 틀리면 점프하고 같으면 터진다 인자에 1과 2를 넣고 통과해서 다음부분을 분석해본다 ecx에 0x0을 넣는다 edx에 0x0을 넣는다 edx에 0x1을 더한다 - edx(1) eax에 뭔가를 넣는다 ecx에 eax(뭔가)를 더한다 eax와 0xf를 비교해서 틀리면 뒤로 점프한다 여기서 eax에 들어가는 뭔가가 계속 다른게 나오길래 나오는 순서대로 적어둔다 1 2 e 6 f..
#bomb 문제는 phase_1 부터 phase_6까지 6개의 문제로 이루어져있다#1단계부터 6단계까지 모두 맞춰야 폭탄이 해체되는 형식이다 문제를 실행한다 이번에도 숫자 2개를 입력하는 문제다 1과 2를 입력하고 어김없이 터져버린다 gdb로 분석해보자 오 phase_4는 한 화면에 다 들어온다 편------안 일단 phase_4+38에 break를 걸고 실행해서 첫번째 폭탄이 통과 되는지 확인해본다 (Input : 1 2) break까지 실행하고 보니까 eax = 2 라 통과 된다 다음 부분을 분석해보면 eax에 rsp를 넣는다 (rsp는 두번째 인자 "2") eax에서 2를 뺀다 (eax에는 두번째 인자 "2"가 들어있어서 2-2=0이 된다) eax(0)를 0x2와 비교한다 비교해서 같거나 작으면 +..
2018-08-27 월요일마지막 phase_6 해결 꺄악 답은 모르고 풀면 좋아서 가려놨다 phase_1은 길어서 귀찮아서 못가림 풀이는 게속 정리중이다 이제 마지막 비밀페이지만 남았다 ㅎㅎ 이제 제발 꼭 다 정리 올리고 풀어야겠다 ㅜㅜㅜ 착잡... 정리를 잘 못해서 막막하다.. 도와줘요 현짱! ㅜㅜ
#bomb 문제는 phase_1 부터 phase_6까지 6개의 문제로 이루어져있다#1단계부터 6단계까지 모두 맞춰야 폭탄이 해체되는 형식이다 방금 phase_5를 풀어서 기분이 좋기 때문에 Root권한으로 실행해준다 OvO 이번엔 숫자 2개란다 항상 그랬듯이 아무거나 입력해주고 터진다 (1, 2) gdb로 분석해보자 어우 너무 길어서 내 작은 화면에 다 안나온다 ㅜㅜㅜ 부분에서 인자의 갯수를 확인합니다 맨 처음에 이번에는 인자가 2개라고 했기 때문에 1개 이하면 폭탄이 터집니다 일단 +48과 +49를 보면 첫번째 인자를 7과 비교해서 7보다 크면 폭탄이 터지는 것 같다 여기서 첫번째 인자가 나왔다 (인자1 =< 7) 이 부분을 보면 첫번째 인자를 eax에 넣고 그걸 어찌저찌 해서 저 여러개 중 한 곳으로..
#bomb 문제는 phase_1 부터 phase_6까지 6개의 문제로 이루어져있다#1단계부터 6단계까지 모두 맞춰야 폭탄이 해체되는 형식이다 문제를 실행한다 phase_1은 답을 알았기 때문에 바로 입력해준다 뭔가 또 입력할 수 있게 됬는데 gdb로 분석을 해봐야겠다 라는 함수가 있다 아마 6개의 인자를 숫자로 넣어줘야 하는 것 같다 phase_2의 맨 처음에 break를 걸고 실행해준다 일단 "1 2 3 4 5 6"를 입력해줬다 첫번째 비교하는 곳 까지 왔다 rsp와 0x0을 비교해서 양수(+)면 점프하는 것 같다 #아마 js는 음수(-)면 점프 rsp의 값을 보면 첫번째 인자인 "1"이 들어있다 우린 양수(+)만 입력했기 때문에 통과되어 넘어왔다. 그 다음을 정리해 보면 rsp(인자"1")을 rbp에..
#bomb 문제는 phase_1 부터 phase_6까지 6개의 문제로 이루어져있다#1단계부터 6단계까지 모두 맞춰야 폭탄이 해체되는 형식이다 문제를 실행해본다 bomb 파일을 실행하면 문장 두 줄이 뜨고 뭔가를 입력할 수 있게 된다뭔가를 입력하게 되면 사진과 같이 BOOM!!! 하면서 폭탄이 터진 것 같이 하면서 종료된다 먼저 gdb로 bomb 문제를 연다그 후 phase_1을 분석한다 phase_1은 문자열을 입력해서 그게 정해진 문자열과 일치하면 다음으로 넘어가는 문제인 것 같다 explode_bomb이란 함수(?)는 문자열이 틀리면 저 주소로 호출되서 폭탄이 터지는 것 같다 폭탄이 터지기 바로 전에 break를 걸어서 그 부분에서 내가 입력한 문자열이 어디에 들어가있는지 확인해본다 폭탄 터뜨리는 함..
Security Factoryhttp://securityfactory.tistory.com/153
리버싱이란?- Reverse Engineering의 줄임말 / 역공학- 이미 완성된 프로그램을 분석하여 유지, 개발, 보안에 사용(좋은쪽) / 크랙에 사용(나쁜쪽) 용도- 악성코드 분석- 취약점 찾기- 패치 도구IDA- 가장 많이 쓰이는 디스어셈블러 툴 Debugger(Olly, Immunity 등)- 윈도우 환경에서 프로그램을 동적으로 분석하기 위해 사용하는 툴 그 외 툴- Wireshark, CheatEngine, WinDbg 등 수많은 툴이 존재