반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 해킹
- 네트워크 바이트 오더
- 포너블
- HackCTF
- Windows Kernel Debug
- hacking
- arudino
- pcap packet capture
- Windows Kernel Driver
- 윈도우 커널 드라이버
- apphelp.dll
- ucrtbase.dll
- vcruntime140.dll
- 개발하기
- 윈도우 커널
- 개발 환경 준비
- C언어 패킷캡쳐
- pwnable
- 바이트 오더
- packet capture
- 시스템해킹
- Windows Kernel
- 윈도우 커널 디버깅
- pcap packet
- Msvcrt.dll
- IAT Hooking
- Network Byte Order
- Windows
- vcruntime.dll
- windows kernel debugging
Archives
- Today
- Total
미친해커
[WoW] 32Bit 모드에서 64Bit 모드로 전환하기 본문
Windows/Heaven's Gate (Windows on Windows x64)
[WoW] 32Bit 모드에서 64Bit 모드로 전환하기
미친해커 2022. 5. 31. 23:23반응형
이전 포스팅
이전 포스팅에서 jmp 0033:wow64cpu.dll+7009
라고 적힌 처음보는 jmp instrcution을 볼수 있었다.
해당 어셈블리를 Cheat Engine이 아닌 일반적인 디버거(OllyDbg, x64dbg)에서는 다르게 표시된다.
jmp far
라는 instrcution으로 해석되는 것을 확인할 수 있는데 열심히 서치해본 결과 far 류의 어셈블리들은 절대주소 그리고 CS(Code Segment) 레지스터의 값을 변경한다는 사실을 알게 되었다.
해당 어셈블리는 CS 레지스터의 값을 변경하고 0x77DF7009의 주소로 점프한다. 그리고 해당 주소의 어셈블리를 확인해보면 jmp qword ptr [r15+0xF8]
으로 64Bit에서 사용되는 레지스터를 사용하는 것을 확인할 수 있다.
마무리
어셈블리를 분석해봤을 때 CS 레지스터의 값을 0x0033으로 변경하고 64Bit 어셈블리를 실행하는 것으로 보아 CS 레지스터의 값이 0x0033 이라면 64Bit 모드 0x0023 이라면 32Bit 모드 인것으로 생각된다.
반응형
'Windows > Heaven's Gate (Windows on Windows x64)' 카테고리의 다른 글
[WoW] WoW 프로세스의 커널 함수 호출 과정 (0) | 2022.06.14 |
---|---|
[WoW] Windbg를 이용해 WoW 프로세스 디버깅하기 (0) | 2022.06.13 |
[WoW] Far와 Near 어셈블리 명령의 차이점 (0) | 2022.06.01 |
[WoW] 32Bit 응용 프로그램에서의 Kernel 함수 호출 (0) | 2022.05.04 |
[WoW] WoW64(Windows on Windows 64-Bit)란? (0) | 2022.05.03 |
Comments