정상을향해/Program Analysis18 Mac OS에 Metasploit Framework 설치 방법 msfvenom은 Msfpayload와 Msfencode가 결합된 도구이다. -h 옵션을 통해 세부 옵션 및 기능을 확인할 수 있다.더 자세한 내용은 아래 링크에서 확인할 수 있다.https://www.offensive-security.com/metasploit-unleashed/msfvenom/ 이 도구는 메타스플로잇(Metasploit) 프로젝트에 포함되어 있기 때문에 사용을 위해선 당연히 메타스플로잇을 설치해야한다.칼리 리눅스(Kali Linux)를 사용한다면 기본적으로 설치되어 있지만 그 외 운영체제에서는 직접 설치해야 한다.Mac OS에 설치를 한 번 해보자. 먼저, 아래 링크에서 설치파일을 다운받는다.http://osx.metasploit.com 설치한 후, 터미널에서 명령어 실행 설정을 해주.. 2016. 12. 26. Python Hacking Programming (3) 파이썬 해킹 프로그래밍 (Python Hacking Programming) 저자 : 저스틴 지이츠출판사 : 에이콘 3장. 윈도우 디버거 개발[3.4] 브레이크포인트 소스파일 my_debugger.py 소스파일 my_test.py 소스파일 print_loop.py [3.4 브레이크포인트]1. 소프트 브레이크포인트 소프트 브레이크포인트를 설정하기 위해서는 프로세스의 메모리를 읽고 쓸 수 있어야 한다. 이를 위해 사용하는 함수가 바로 ReadProcessMemory()와 WriteProcessMemory() 이 두 함수다. BOOL ReadProcessMemory( HANDLE hProcess, LPCVOID lpBaseAddress, LPVOID lpBuffer, DWORD nSize, LPDWORD lpN.. 2013. 11. 10. Python Hacking Programming (2) 파이썬 해킹 프로그래밍 (Python Hacking Programming) 저자 : 저스틴 지이츠출판사 : 에이콘 3장. 윈도우 디버거 개발[3.3] 디버그 이벤트 핸들러 구현 [3.3 디버그 이벤트 핸들러 구현]이벤트가 발생했을 때 디버거가 그 이벤트에 반응하기 위해서는 각 디버깅 이벤트에 대한 핸들러를 구현해야 한다. WaitForDebugEvent() 함수를 통해 이벤트가 발생할 때마다 DEBUG_EVENT 구조체를 매번 반환한다. 다음 DEBUG_EVENT 구조체를 살펴보자. typedef struct _DEBUG_EVENT { DWORD dwDebugEventCode; DWORD dwProcessId; DWORD dwThreadId; union { EXCEPTION_DEBUG_INFO Excep.. 2013. 11. 10. Python Hacking Programming (1) 파이썬 해킹 프로그래밍 (Python Hacking Programming) 저자 : 저스틴 지이츠출판사 : 에이콘 3장. 윈도우 디버거 개발[3.1] 윈도우 디버거 개발[3.2] CPU 레지스터 상태 얻기 소스코드 입니다. 역시 소스코드에 오타가 좀 있었군요 . . . [3.1 윈도우 디버거 개발]프로세스를 디버깅하려면 어떤 식으로든 먼저 해당 프로세스를 디버거와 연결해야 한다. 그래서 디버깅할 프로세스를 실행시키거나, 이미 실행돼 있는 프로세스에 attach를 해야 한다. 프로세스를 실행시키는 경우는 디버거가 실행 바이너리를 직접 실행하는 것인데, 이 경우 해당 프로세스의 코드가 실행되기 전에 제어를 할 수 있다는 장점이 있다. 윈도우에서는 프로세스를 실행시킬 때 CreateProcess() 함수를 호.. 2013. 11. 10. PE File Format (4) 출처 : http://www.reversecore.com/ IMAGE_NT_HEADERS : IMAGE_OPTIONAL_HEADER32 IMAGE_OPTIONAL_HEADER32는 PE header 구조체 중에서 가장 크기가 크다. (64bit PE 파일의 경우 IMAGE_OPTIONAL_HEADER64 구조체를 사용한다.) typedef struct _IMAGE_DATA_DIRECTORY { DWORD VirtualAddress; DWORD Size; } IMAGE_DATA_DIRECTORY, *PIMAGE_DATA_DIRECTORY; #define IMAGE_NUMBEROF_DIRECTORY_ENTRIES 16 typedef struct _IMAGE_OPTIONAL_HEADER { WORD Magic.. 2013. 11. 10. PE File Format (3) 출처 : http://www.reversecore.com NT Header 다음은 NT header 구조체 IMAGE_NT_HEADERS 이다. typedef struct _IMAGE_NT_HEADERS { DWORD Signature; // PE Signature : 50450000 ("PE"00) IMAGE_FILE_HEADER FileHeader; IMAGE_OPTIONAL_HEADER32 OptionalHeader; } IMAGE_NT_HEADERS32, *PIMAGE_NT_HEADERS32; * 출처 : Microsoft 의 Visual C++ 에서 제공하는 winnt.h (위 구조체는 32 bit 용이며, 64 bit 용은 세번째 멤버가 IMAGE_OPTIONAL_HEADER64로 되어있다.).. 2013. 11. 10. 이전 1 2 3 다음