본문 바로가기

728x90

Reversing

(4)
IDA Pro 이용하여 Lab05-01.dll 분석하기 1) DllMain의 주소는 무엇인가? IDA pro에서 실습 파일을 열면 자동으로 dll main함수부터 보여줍니다. 때문에 main의 주소는 1000D02E임을 바로 알 수 있습니다. 2) Imports 윈도우를 이용해 gethostbyname을 탐색해보자. 임포트 위치는 어디인가? 우선 gethostbyname이라는 함수에 대해 알아보겠습니다. 우리가 접속하고자하는 사이트에 대한 정보들을 알아오기위한 함수입니다. 그 정보들에는 ip등이 있곘습니다. import window를 보고 검색을 통해 api를 찾습니다. gethostbyname함수의 import위치는 .idata 섹션의 100163CC라는 위치에서 사용할 수 있도록 명시되어있습니다. 3) gethostbyname에 함수는 몇 개인가? get..
Reversing Theory- abex' crackme #1 *올리디버거 1.1 버전으로 사용합니다. 소스코드 없이, exe파일로 디버깅을 해보겠습니다. 우선 예제 파일을 열어볼게요. 해당 파일은 크랙연습용 공개파일입니다. 이렇게 확인을 누르면, 에러메시지창이 뜹니다. 올리디버거로 열어보겠습니다. 해당 코드윈도우부분을 보시면 매우 간단한 것을 알 수 있습니다. 이 아래부분은 00,,, 밖에 없습니다. 코드가 간단하니 이해하기도 상대적으로 쉬울 것이라고 예상해봅니다. stub code가 없는것으로 보아 이 파일은 어셈블리로만 작성이 된 코드입니다. 맨처음에 실행되는 것은 messagebox A 함수입니다. 실행시에 첫 화면이 뜨고, 이후 에러메시지가 뜬 창이 하나 더 있었으니 메시지박스 함수가 하나 더 있겠죠 아래를 보니 두개가 더 있네요. 파란네모부분은 기존에 보..
Reversing Basic- helloworld.exe *ollydbg 2.0, 윈도우 10에서 진행하고 있습니다. 앞에서 작성한 helloworld 코드를 다시 보겠습니다. #include "windows.h" #include "tchar.h" int _tmain(int argc, TCHAR* argv[]) { MessageBox(NULL, L"Hello World!", L"www.reversecore.com", MB_OK); return 0; } 저희가 작성한 메인은 아주 짧은데요. 이 메인함수를 찾아보겠습니다. 첫번째 방법은 F8(step over)를 이용하는 것입니다. 계속 누르다보면 창이 하나 뜨게됩니다. visual studio에서 창이 뜨도록 코딩을 해놓았기 때문이죠! 여기서 주목해야할 점은 CALL 00401000 이 호출되고, main함수로 ..
Reversing Basic- ollydbg install+ setting 리버싱을 하기위해 우선 필요한 프로그램들을 먼저 말씀드리겠습니다. 1. visual studio - 코딩을 해야하니까요. - 비주얼 스튜디오에 대한 것은 리버싱을 하려고 하시는 분이라면 다들 기본적으로 설치되었을거라고 생각합니다. - 코딩 하시는 분들이라면 이미 다 설치되어있겠죠..? 설명 생략하겠습니다! 2. ollydbg - 실제 분석을 위해 올리디버거가 필요합니다. - 올리디버거는 1.1 버전(32bit) ,2.0버전(64bit). - 아래 설명은 1.1 버전을 64bit에서 사용하기위한 세팅입니다. 3. helloworld.exe - 샘플용으로 작성할 파일입니다. http://www.ollydbg.de/ 에서 파일을 받아 설정을 하겠습니다. 1. 우선 64bit에서 사용하기 위해 한가지를 설치해주..

728x90
반응형