리버싱 (5) 썸네일형 리스트형 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.. IDA Pro 프로그램 1) idapractice.exe를 IDA 프로그램을 이용하여 연다. 32비트 파일 실행위한 ida를 실행하고 분석할 파일을 선택합니다. 파일을 열면 어떤 파일을 분석할 것인지 자동으로 선택이 되어 보여줍니다. pe파일임을 자동으로 인식하니 그냥 ok하고 넘어갑니다. 그래프 모드로 보여지는 모습입니다. 2) 그래프모드로 열린 화면에서 텍스트 모드로 변경한다. 이 화면에서 텍스트 모드로 변경하려면 [스페이스바] 단축키를 사용합니다. 이전 그래프 모드로 돌아가려면 동일하게 스페이스 바를 누르면 됩니다. 3) 그래프모드에서 행번호와 명령어 코드를 출력하기 위한 옵션을 설정하시오. option> General> 로 들어가서 위와같이 설정합니다. 4) 단축키를 사용하여 401D90 주소 위치로 이동하시오. G를 .. 기초 동적 분석, Lab03-04.exe 2020/05/24 - [study/Reversing] - 기초 동적 분석, Lab03-03.exe 기초 동적 분석, Lab03-03.exe 이전 포스팅 2020/05/23 - [study/Reversing] - 기초 동적 분석, Lab03-02.dll 기초 동적 분석, Lab03-02.dll 2020/05/21 - [study/Reversing] - 기초 동적 분석, Lab03-01.exe 기초 동적 분석, Lab03-01.exe 기초.. hxxyxxn-1238.tistory.com Lab03-04.exe파일을 분석해보도록 하겠습니다. 1) 이 파일을 실행했을 때 어떤 일이 발생했는가? 먼저 CFF exp, import directory를 보도록 하겠습니다. kernel32.dll: 대부분의 함수들이 .. 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함수로 .. 이전 1 다음