Hack/Reversing
-
자식프로세스 디버깅Hack/Reversing 2022. 2. 3. 12:58
1. 윈도우 레지스트리에 디버거 등록 1) 키값 등록 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\타겟.exe 2) 값 등록 이름 : Debugger, 종류 : REG_SZ, 데이터 : Odbg 경로 2. windbg를 이용하여 자식프로세스 디버그 옵션을 이용 File -> Open Executable : 맨 아래 Debug child processes also 체크
-
PE 재배치 (리버싱 핵심원리 따라하기)Hack/Reversing 2020. 4. 6. 09:10
PE 재배치 - PE 파일(EXE/DLL/SYS)이 프로세스 가상 메모리에 로딩될 때 PE 헤더의 ImageBase 주소에 로딩됩니다. DLL(SYS) 파일의 경우 해당 ImageBase 위치에 다른 DLL(SYS)파일이 로딩되어 있다면 비어있는 주소공간에 로딩됩니다. * EXE : 00400000, DLL : 10000000, SYS : 10000 * Windows Vista 이후부터는 ASLR 기술로 인하여 EXE파일도 실행될 때마다 랜덤한 주소에 로딩됩니다. - PE 재배치는 하드코딩된 주소를 프로세스에 로딩되어 랜덤하게 생성된 ImageBase주소에 맞추어 변경해주는 작업입니다. - 간혹 악성코드 중에서 정상 파일의 코드를 패치한 후 해당 영역을 가리키는 Relocation Table을 수정하는 ..
-
레지스터Hack/Reversing 2012. 8. 3. 21:24
범용 레지스터 EAX ( Extended Accumulator Register ) 곰셈과 나눗셈 명령에서 자동으로 사용되고 함수의 리턴값이 저장되는 용도로 사용된다. EBX ( Extended Base Register ) ESI나 EDI와 결합하여 인덱스에 사용된다. ECX ( Extended Conter Register ) 반복 명령어 사용시 반복 카운터로 사용된다. ECX 레지스터에 반복할 횟수를 지정해놓고 반복 작업을 수행하게 된다. EDX ( Extended Data Register ) EAX와 같이 쓰이며 부호 확장 명령 등에 쓰인다. ESI ( Extended Source Index ) 데이터 복사나 조작시 Source Data의 주소가 저장된다. ESI 레지스터가 가리키는 주소의 데이터를 E..
-
WinDBG를 사용하여 VMware 커널 디버깅하기Hack/Reversing 2012. 8. 3. 21:24
1. WinDBG 커널모드 디버거 http://www.microsoft.com/whdc/devtools/debugging/installx86.Mspx 무료 다운 사이트 http://core.ahnlab.com/137 (안랩 블로그를 참고) 필자는 리버싱 초보자로써 이제 리버싱을 위한 기초 툴 학습을 마무리하였습니다. 앞으로는 리버싱 폴더에 포스팅을 자주하진 못하겠지만, 좀 더 고급기술을 연마해서 포스팅 할 예정입니다 열공~
-
시스템 모니터링 툴Hack/Reversing 2012. 8. 3. 21:23
1. process monitor - filemon과 regmon의 공식통합판으로 2009년 이후 filemon과 regmon은 패치가 중단되었다 - 각 태스크의 어플리케이션이 파일과 레지스트리를 어떻게 사용하는지 실시간으로 모니터링 하는 프로그램이다 - 읽기, 쓰기, 삭제 등 모든 행동을 모니터링 해준다 - 항목에 오른쪽 마우스키를 눌렀을 때 나타난 메뉴 Jump to : 해당 레지스트리의 위치로 파일탐색기가 실행된다 Include : 해당 프로세스명이 포함된 로그만 보이도록 한다 Exclude : 해당 프로세스명을 제외한 모든 로그가 보이도록 한다 Highlight : 해당 프로세스명이 포함된 로그를 옵션에서 지정한 색깔로 포인트를 준다 http://wooica.tistory.com/4 (참고사이트,..
-
실행 이미지 덤프 툴Hack/Reversing 2012. 8. 3. 21:21
1. dumpbin - 본인의 컴퓨터에 Microsoft visual studio가 설치되어 있어야 합니다. Visual Studio 6.0이 설치되어있다면 자동으로 PATH가 설정되어 있으므로 cmd 창에 dumpbin을 입력하면 Option 목록이 나옵니다 - dumpbin /exports user32.dll을 입력한 결과이다 (dll파일을 바이너리 분석하는 명령어) 그외 옵션들 /ALL : 코드의 offset, hex, string 값을 모두 표시한다 /ARCHIVEMEMBERS : 해당 파일에 대한 최소 정보를 표시한다 /DEPENDENTS : 사용하는 dll 파일의 이름을 보여준다 /DIRECTIVES : 컴파일러가 생성한 이미지의 .DRECTIVE 섹션을 덤프한다 /DISASM : 파일을 di..