From bc6010d0612faf380fcdea4cb87ffe054de03c4c Mon Sep 17 00:00:00 2001 From: Seonjin Hwang Date: Wed, 20 Aug 2025 14:53:38 +0900 Subject: [PATCH] Fix: after patch 0.14, there is an infinite vm-exit bug for \!monitor x which freeze hyperdbg. It simply fixs the bug --- hyperdbg/hyperhv/code/vmm/ept/Ept.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/hyperdbg/hyperhv/code/vmm/ept/Ept.c b/hyperdbg/hyperhv/code/vmm/ept/Ept.c index 24fe3ec3..a01fa70a 100644 --- a/hyperdbg/hyperhv/code/vmm/ept/Ept.c +++ b/hyperdbg/hyperhv/code/vmm/ept/Ept.c @@ -1085,17 +1085,17 @@ EptHandleEptViolation(VIRTUAL_MACHINE_STATE * VCpu) // __vmx_vmread(VMCS_GUEST_PHYSICAL_ADDRESS, &GuestPhysicalAddr); - if (ExecTrapHandleEptViolationVmexit(VCpu, &ViolationQualification)) - { - return TRUE; - } - else if (EptHandlePageHookExit(VCpu, ViolationQualification, GuestPhysicalAddr)) + if (EptHandlePageHookExit(VCpu, ViolationQualification, GuestPhysicalAddr)) { // // Handled by page hook code // return TRUE; } + else if (ExecTrapHandleEptViolationVmexit(VCpu, &ViolationQualification)) + { + return TRUE; + } else if (VmmCallbackUnhandledEptViolation(VCpu->CoreId, (UINT64)ViolationQualification.AsUInt, GuestPhysicalAddr)) { //