gdbserver 및 qemu로 디버깅, 제어 레지스터 cr3에 감시 점을 설정하는 방법

Mahouk

커널을 디버깅 중이며 cr3 레지스터가 언제 변경되는지 알고 싶습니다. eax 및 기타와 같은 범용 레지스터에 감시 점을 설정하는 방법을 알고 있습니다.

문제는 gdb가 제어 레지스터에 액세스 할 수 없기 때문에 cr3에 감시 점을 설정해도 작동하지 않는다는 것입니다.

그렇다면 qemu 모니터에서 감시 점을 설정할 수 있습니까? 그렇다면 어떻게?

피터 메이 델

죄송합니다. QEMU 모니터에서이 작업을 수행 할 방법이 없습니다. (QEMU 소스에서 target-i386 / helper.c : cpu_x86_update_cr3 ()를 보면 CR3 업데이트에 대해 누구에게도 알리는 작업을 수행하지 않고 새 값을 내부 CPU 상태에 넣는다는 것을 알 수 있습니다. 구조.)

이런 종류의 일을 위해 할 수있는 최선의 방법은 두 개의 디버거로 실행하는 것입니다 (하나는 QEMU의 gdbstub에 연결되어 게스트와 통신하고 다른 하나는 QEMU 자체를 직접 디버깅). 그런 다음 QEMU의 cpu_x86_update_cr3 ()에 중단 점을 설정하고 무슨 일이 일어나는지 볼 수 있습니다. 이를 효과적으로 수행하려면 QEMU의 내부에 대해 상당한 양을 알아야합니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

gdb로 코어 덤프를 디버깅 할 때 중단 점을 설정하고 중단시키는 방법은 무엇입니까?

분류에서Dev

프롤로그 디버깅에서 중단 점을 줄에 설정하는 방법은 무엇입니까?

분류에서Dev

WEINRE : WAN을 통해 내 앱을 디버깅하는 방법 (내 LAN을 제거하는 시스템에서)

분류에서Dev

스토어에서 다운로드 한 wp8 앱을 디버깅하는 방법은 무엇입니까?

분류에서Dev

JS로 플래시 플레이어 버전을 감지하는 방법

분류에서Dev

JS로 플래시 플레이어 버전을 감지하는 방법

분류에서Dev

React Native에서 중단 점으로 디버깅하는 방법

분류에서Dev

실제로 RabbitMQ 로깅 수준을 디버그로 설정하는 방법은 무엇입니까?

분류에서Dev

정규식에서 점 (.), 밑줄 (_) 및 대시 (-)를 감지하는 방법

분류에서Dev

macOS 애플리케이션 인 lldb를 사용하여 디버깅하는 동안 감시 점을 사용하여 레지스터 내용에서 변경 사항을 감시 할 수 있습니까?

분류에서Dev

상단 표시 줄의 VS에서 "디버깅없이 시작"을 설정하는 방법

분류에서Dev

스파크 자바 프로젝트 정보 / 디버그 레벨에서 불꽃 데이터 집합 printSchema의 로깅을 수행하는 방법

분류에서Dev

자동 다시로드가 설정된 VSCode에서 Django를 디버깅하는 방법

분류에서Dev

트위터 부 스트랩 및 CSS : 모달 오버레이를 제거하고 입력 상자에 다시 초점을 맞춰 사용자가 모달을 열어 입력 할 수 있도록하는 방법

분류에서Dev

Apache HiveServer2 / MetaStore 서버 / WebHCat 서버에 대해 GC 로깅을 활성화하고 로그 파일 덮어 쓰기를 방지하고 디스크 공간 사용량을 제한하는 방법

분류에서Dev

릴리스 앱을 제거하지 않고 앱을 디버깅하는 방법

분류에서Dev

어떻게 안드로이드 스튜디오에서 안드로이드 라이브러리 모듈을 디버깅하는 방법?

분류에서Dev

qemu 가상 머신에 대한 로깅 및 디버깅

분류에서Dev

qemu 가상 머신에 대한 로깅 및 디버깅

분류에서Dev

NodeJS 프로세스를 유지하는 것을 디버깅하는 방법

분류에서Dev

도커 풀을 레이어별로 디버깅하는 방법은 무엇입니까?

분류에서Dev

로그 파일 덮어 쓰기를 방지하고 디스크 공간 사용량을 제한하면서 Hadoop MapReduce2 기록 서버에 대해 GC 로깅을 활성화하는 방법

분류에서Dev

Android 버튼에서 텍스트로 드로어 블을 설정하는 방법

분류에서Dev

VSTO : Visual Studio에서 디버깅 된 후 제거 된 VSTO 추가 기능을 다시 추가하는 방법

분류에서Dev

HTTP에서 HTTPS로 Kubernetes nginx Ingress 리디렉션을 디버깅하는 방법

분류에서Dev

디버깅 및 스타일 지정을 위해 Android Studio의 디자인 탭에서 View 및 ViewGroups 주위에 테두리를 쉽게 표시 할 수있는 방법이 있습니까?

분류에서Dev

Visual Studio에서 실제로 Excel 추가 기능 디버깅을 수행하는 방법

분류에서Dev

닷넷 프로세스에서 시간 제한을 설정하는 방법

분류에서Dev

로그 파일 덮어 쓰기를 방지하고 디스크 공간 사용량을 제한하면서 Hadoop YARN ResourceManager 및 ApplicationTimeline에 대해 GC 로깅을 활성화하는 방법

Related 관련 기사

  1. 1

    gdb로 코어 덤프를 디버깅 할 때 중단 점을 설정하고 중단시키는 방법은 무엇입니까?

  2. 2

    프롤로그 디버깅에서 중단 점을 줄에 설정하는 방법은 무엇입니까?

  3. 3

    WEINRE : WAN을 통해 내 앱을 디버깅하는 방법 (내 LAN을 제거하는 시스템에서)

  4. 4

    스토어에서 다운로드 한 wp8 앱을 디버깅하는 방법은 무엇입니까?

  5. 5

    JS로 플래시 플레이어 버전을 감지하는 방법

  6. 6

    JS로 플래시 플레이어 버전을 감지하는 방법

  7. 7

    React Native에서 중단 점으로 디버깅하는 방법

  8. 8

    실제로 RabbitMQ 로깅 수준을 디버그로 설정하는 방법은 무엇입니까?

  9. 9

    정규식에서 점 (.), 밑줄 (_) 및 대시 (-)를 감지하는 방법

  10. 10

    macOS 애플리케이션 인 lldb를 사용하여 디버깅하는 동안 감시 점을 사용하여 레지스터 내용에서 변경 사항을 감시 할 수 있습니까?

  11. 11

    상단 표시 줄의 VS에서 "디버깅없이 시작"을 설정하는 방법

  12. 12

    스파크 자바 프로젝트 정보 / 디버그 레벨에서 불꽃 데이터 집합 printSchema의 로깅을 수행하는 방법

  13. 13

    자동 다시로드가 설정된 VSCode에서 Django를 디버깅하는 방법

  14. 14

    트위터 부 스트랩 및 CSS : 모달 오버레이를 제거하고 입력 상자에 다시 초점을 맞춰 사용자가 모달을 열어 입력 할 수 있도록하는 방법

  15. 15

    Apache HiveServer2 / MetaStore 서버 / WebHCat 서버에 대해 GC 로깅을 활성화하고 로그 파일 덮어 쓰기를 방지하고 디스크 공간 사용량을 제한하는 방법

  16. 16

    릴리스 앱을 제거하지 않고 앱을 디버깅하는 방법

  17. 17

    어떻게 안드로이드 스튜디오에서 안드로이드 라이브러리 모듈을 디버깅하는 방법?

  18. 18

    qemu 가상 머신에 대한 로깅 및 디버깅

  19. 19

    qemu 가상 머신에 대한 로깅 및 디버깅

  20. 20

    NodeJS 프로세스를 유지하는 것을 디버깅하는 방법

  21. 21

    도커 풀을 레이어별로 디버깅하는 방법은 무엇입니까?

  22. 22

    로그 파일 덮어 쓰기를 방지하고 디스크 공간 사용량을 제한하면서 Hadoop MapReduce2 기록 서버에 대해 GC 로깅을 활성화하는 방법

  23. 23

    Android 버튼에서 텍스트로 드로어 블을 설정하는 방법

  24. 24

    VSTO : Visual Studio에서 디버깅 된 후 제거 된 VSTO 추가 기능을 다시 추가하는 방법

  25. 25

    HTTP에서 HTTPS로 Kubernetes nginx Ingress 리디렉션을 디버깅하는 방법

  26. 26

    디버깅 및 스타일 지정을 위해 Android Studio의 디자인 탭에서 View 및 ViewGroups 주위에 테두리를 쉽게 표시 할 수있는 방법이 있습니까?

  27. 27

    Visual Studio에서 실제로 Excel 추가 기능 디버깅을 수행하는 방법

  28. 28

    닷넷 프로세스에서 시간 제한을 설정하는 방법

  29. 29

    로그 파일 덮어 쓰기를 방지하고 디스크 공간 사용량을 제한하면서 Hadoop YARN ResourceManager 및 ApplicationTimeline에 대해 GC 로깅을 활성화하는 방법

뜨겁다태그

보관