리버싱을 하기위해 우선 필요한 프로그램들을 먼저 말씀드리겠습니다.
1. visual studio
- 코딩을 해야하니까요.
- 비주얼 스튜디오에 대한 것은 리버싱을 하려고 하시는 분이라면 다들 기본적으로 설치되었을거라고 생각합니다.
- 코딩 하시는 분들이라면 이미 다 설치되어있겠죠..? 설명 생략하겠습니다!
2. ollydbg
- 실제 분석을 위해 올리디버거가 필요합니다.
- 올리디버거는 1.1 버전(32bit) ,2.0버전(64bit).
- 아래 설명은 1.1 버전을 64bit에서 사용하기위한 세팅입니다.
3. helloworld.exe - 샘플용으로 작성할 파일입니다.
http://www.ollydbg.de/ 에서 파일을 받아 설정을 하겠습니다.
1. 우선 64bit에서 사용하기 위해 한가지를 설치해주어야 합니다.
https://tuts4you.com/e107_plugins/download/download.php?view.258 에서 win32.HLP를 다운받아주세요.
이후 올리디버거 폴더 안에 넣어줍니다.
2. 압축파일을 풀어주고 Plugin과 UDD폴더를 생성해줍니다.
3. Plugin폴더에 .dll파일을 모두 옮겨줍니다.
4. 경로 설정하기
관리자 권한으로 여시고 UDD와 Plugin폴더에 대한 설정을 해주어야 합니다.
[options> Appearance> Directions]로 들어가서 UDD와 Plugin경로를 설정합니다.
5. 기타 설정
디버거로 열었을 때 시작할 위치를 설정합니다.
[options- debugging options- events]에서 [entry point of main module]을 체크
우리가 나중에 보기 쉽도록 jump하는 부분에 화살표가 표시되도록 합니다.
ollydbg.ini파일을 선택해서 아래의 텍스트를 앞쪽에 넣어주세요
Show jump direction=1
Show jump path=1
Show jumpfrom path=1
Show path if jump is not taken=1
그러면 이렇게 보입니다!
여기까지가 올리디버거 1.1 버전을 64bit에서 사용하기위한 세팅입니다.
2.0 버전은 폴더 생성과 경로 설정만 동일하게 해주시면 됩니다.
이제 helloworld파일을 생성해봅시다~
또 저희의 편의를 위해,, 비주얼스튜디오에서 설정해줄 것이 있습니다.
1. Build option: Release mode
빌드> 구성관리자> 구성을 Release로 변경해주세요.
2. Project property: Randomized Base Address/ No
실제 메모리 주소를 볼때, 정적주소로 보아야 편리하기때문에 이것도 설정해줍니다.
프로젝트> Helloworld속성에 들어가서 링커> 고급> 임의 기준 주소 를 No로 변경
#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;
}
해당 코드를 visual studio로 작성해주세요.
이제 기초 세팅은 끝났습니다!
'study > 악성코드분석&리버싱' 카테고리의 다른 글
악성코드 분석- 기초 정적 분석, PE 파일 (0) | 2020.04.09 |
---|---|
Reversing Theory- abex' crackme #1 (2) | 2020.04.02 |
Reversing Theory- little endian (4) | 2020.04.02 |
Reversing Basic- helloworld.exe (2) | 2020.03.27 |
Reversing Basic- ollydbg 기본 명령어 (2) | 2020.03.26 |