일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 암호화폐
- 배열 정렬
- 1.9.2
- UDP daytime
- 프론트엔드 개발자
- C언어
- 프로그래밍 언어론
- 안드로이드 백도어
- abex crack me 5번문제
- 리버싱
- 배열 탐색
- 오버워치
- react native
- Reverse Me
- 리틀엔디언
- abex crack me 2번 문제풀이
- 재밌는 모바일게임
- 메이플스토리 M 사전예약
- 배열
- 레나 리버싱
- 덧셈
- abex crack me 1번
- 구조체
- 네트워크 관리사 2급 필기
- 마인크래프트
- 빅엔디언
- sa 계정 비밀번호 변경
- 알고리즘
- 구조체 함수
- c언어 알고리즘
- Today
- Total
목록리버싱 (3)
Gyejoong's Information
5번 문제는 그림 31과 같이 시리얼키가 일치하지 않으면 등록을 할 수 없습니다.Immunity Debugger로 분석을 해보도록 하겠습니다. 이 상태에서는 메인함수가 어디있는지 확인하기 어렵기 때문에 사용하는 함수를 호출하여찾아 보겠습니다. 이번 5번 문제같은 경우는 비주얼베이직으로 만들어진 프로그램이므로 string값으로 찾기 어렵기 때문에 사용하는 함수를 출력하여 찾는 것이 더 수월합니다. 위 그림을 보게 되면 ECX부분에 UNICODE로 2206425로 설정이 되어 있습니다.프로그램을 실행하고 2206425를 입력해보도록 하겠습니다. 성공적으로 인증에 성공하는 것을 확인할 수 있습니다. 하지만, 이 프로그램의 시리얼키는날짜, 시간에 따라 시리얼키값이 바뀝니다. 날짜시간시리얼키 20080520오후 ..
2번 문제입니다. 시리얼 키를입력하라는 메시지 창이 뜹니다. 임의의 값을 입력 한 결과 입력한 시리얼 값이 옳지 않다고 출력 됩니다.이제 Immunity Debugger로 분석을 해보겠습니다. Error 메시지와 성공 메시지가 출력되는 부분에 JE구문이 있는 것을 확인할 수 있습니다.JE부분에 breakpoint를 정하고 디버깅을 시작해보도록 합니다. 메인함수가 시작되면서 시리얼키 값을 입력 받는 메시지 창이 출력됩니다. 여기서 임의의 값을입력 합니다. JE 구문으로 바로 넘어옵니다. 그 윗부분을 보게되면 String값으로 L2C-5781과6784-ABEX값을 연결하는(concat)함수 가 실행되는걸 확인 할 수있습니다.그리고 strcmp을 사용하여 L2C-57816784-ABEX와 1234값을 비교를 ..
우선 abex - crack me 1번 프로그램을 실행 시켜보도록 하겠습니다. HD디스크를 CD-ROM처럼 만들라고 합니다. CD-ROM이 아니라고 하네요. Immunity Debugger로 이 프로그램을 분석 해보도록 하겠습니다. JE SHORT 부분에 breakpoint를 걸고 디버깅을 시작해보겠습니다. 메시지박스를 불러보는 부분에서 멈추게 됩니다. 확인을 누르고 다음 부분으로 진행 하겠습니다. C드라이브의 타입을 불러오는 과정입니다. EAX값이 3이 되었네요. ESI 값을 1증가 시키고 EAX값을 1감소 시킨 후에 ESI값을 2증가, EAX값을 1감소 시키도록 되어 있습니다. 모든 과정을 거친 후에, 레지스터값은 EAX값이 1이고, ESI값이 790077입니다. CMP로 비교한 후에, 값이 0이면 ..