Commit Graph

458 Commits

Author SHA1 Message Date
Rafael ebdc74d23b fix: ensure write-only breakpoints trigger on Copy-on-Write pages
- Replaced the implicit bit-shift logic with an explicit mapping
to prevent the OS from silently duplicating pages via Copy-on-Write.

- Added explicit cases for PAGE_WRITECOPY and PAGE_EXECUTE_WRITECOPY.
2026-03-28 12:03:17 +00:00
Duncan Ogilvie e6570203cc
Merge pull request #29 from 3rdit/fix/breakpoint-deletion-race
Fix multi-thread breakpoint deletion race condition
2026-01-10 14:49:38 +01:00
AzuLX 5cc80cf3d9
track deleted breakpoints to handle stale events safely 2026-01-10 12:36:40 +00:00
AzuLX 8072f96a26
fix multi-thread breakpoint deletion race condition 2026-01-05 15:47:03 +00:00
Duncan Ogilvie f6c9698fd7
Merge pull request #28 from 3rdit/fix/hwbp-thread-suspension
Fix thread suspension when hardware breakpoint is disabled during callback
2026-01-04 23:42:29 +01:00
AzuLX b4a11cb2df
prevent thread suspension when HWBP is disabled during callback 2026-01-04 21:01:42 +00:00
Duncan Ogilvie ea05d920b7 Fix formatting 2025-08-18 03:29:50 +02:00
Duncan Ogilvie 3db7179373
Merge pull request #26 from micronn/fix-membpx-pageboundary
Fix memory breakpoints when an access spans an extra page
2025-08-17 20:28:06 +02:00
Duncan Ogilvie 2d1dcd7e1c
Merge pull request #27 from CXVUSER/x64dbg
Fix legacy SSE not working on pre-AVX processors
2025-08-17 20:27:48 +02:00
xcv c7c6956698 Fix legacy SSE not working on pre-AVX processors 2025-08-17 21:56:41 +05:00
micronn 12f896c57e
Fix memory breakpoints when an access spans an extra page 2025-07-05 21:17:19 +02:00
Duncan Ogilvie 158ab56643 Prepare for release 2025-07-04 17:20:04 +02:00
Duncan Ogilvie 02d0be742a Fix crash with AVX-512 on 32-bit
Closes #25
2025-07-04 17:17:01 +02:00
Duncan Ogilvie f23d23a5f5
Merge pull request #23 from torusrxxx/AVX512
Fix clearing wrong structure
2025-05-24 18:30:41 +02:00
torusrxxx ded0912814 Fix clearing wrong structure 2025-03-31 11:14:47 +08:00
Duncan Ogilvie 2674540368
Merge pull request #22 from torusrxxx/AVX512
Add support for AVX512
2025-03-30 12:44:51 +02:00
torusrxxx 1aae30c447 allow using k0 register 2025-03-19 00:23:10 +08:00
torusrxxx c37f9978fb Add support for AVX512 2025-03-11 19:01:16 +08:00
Duncan Ogilvie 49f59781da
Merge pull request #16 from shocoman/memory-read-safe-page-bug
Fix 'MemoryReadSafe' not restoring original memory protection correctly
2023-10-28 15:18:43 +02:00
Duncan Ogilvie 5484a49237
Merge pull request #18 from shocoman/proper-membp-3-public
Implement memory breakpoints that are not page-aligned
2023-10-28 15:18:23 +02:00
shocoman 4bac132514 Fix 'MemoryReadSafe' not restoring original memory protection correctly 2023-10-20 20:57:14 +07:00
Duncan Ogilvie a19a7935de
Merge pull request #15 from ZehMatt/fix-stepping-state
Fix the stepping issue
2023-10-20 14:30:34 +02:00
shocoman 76c1b86250 Implement memory breakpoints that are not page-aligned 2023-10-20 17:48:29 +07:00
ζeh Matt 40395549f9
Reset single stepping state when debugger pauses on exceptions 2023-09-06 23:22:22 +03:00
Duncan Ogilvie 01d0d1854f Remove unnecessary FlushInstructionCache 2023-07-08 13:20:30 +02:00
Duncan Ogilvie 490ce02fb3 Also implement #14 for UD2 breakpoints 2023-07-08 12:50:02 +02:00
Duncan Ogilvie b862c2b36f
Merge pull request #14 from shocoman/fix-double-pushfd-bug
Fix a bug that could change a stack value after stepping into a PUSHF instruction with a singleshoot breakpoint
2023-07-08 12:02:41 +02:00
shocoman 7a7530cef1 Fix a bug that can change a stack value after stepping into a PUSHF instruction with a singleshoot breakpoint 2023-06-04 14:27:25 +07:00
Duncan Ogilvie 882bc1bc30 Delete a bunch of unused functionality 2023-03-04 01:38:22 +01:00
Duncan Ogilvie 568334cdd4 Switch to the v141_xp toolset for XP support 2022-10-07 12:19:13 +02:00
Duncan Ogilvie e005ba44b6 Relocate the image with No ASLR 2022-09-11 15:52:18 +02:00
Duncan Ogilvie 259f1e88e3 Improve no ASLR by retrying 2022-09-10 01:13:09 +02:00
Duncan Ogilvie d0b7e5addd Remove a redundant GetThreadContext for synchronized breakpoints 2022-09-09 22:38:16 +02:00
Duncan Ogilvie 8d833fb2e3 Add UE_ENGINE_SAFE_STEP to allow disabling DBG_REPLY_LATER 2022-09-09 13:45:53 +02:00
Duncan Ogilvie 43caf023f8 Remove unused SDKs 2022-09-09 13:44:12 +02:00
Duncan Ogilvie 160d66919e Workaround for a bug in the kernel with x64 emulation on ARM 2022-08-10 18:49:36 +02:00
Duncan Ogilvie fb1babcbb3 Put a critical section around StepInto to make it thread-safe 2021-12-11 23:43:22 +01:00
Duncan Ogilvie 1a76d61ef6 GitHub Actions to build 2021-11-15 03:04:33 +01:00
Duncan Ogilvie fa8c5f7eb5 Upgrade to Visual Studio 2019 2021-11-15 02:58:38 +01:00
Duncan Ogilvie f0832465c6 AStyle formatting 2021-11-15 02:57:37 +01:00
Duncan Ogilvie cda4385d6d Update AStyle formatting tools 2021-11-15 02:57:33 +01:00
Duncan Ogilvie 0f81825ff0 Add UE_ENGINE_DISABLE_ASLR to remap the debuggee image without ASLR 2021-11-15 02:56:34 +01:00
the_janitor 39fe35a09e Fixed a bug in which thread termination froze 2021-09-19 03:05:46 +02:00
Duncan Ogilvie bbab6359b0 Use KUSER_SHARED_DATA for checking the build number 2021-09-18 22:45:39 +02:00
Duncan Ogilvie d4ad8293f7
Merge pull request #9 from thejanit0r/patch-1
Alternative memory breakpoint (PAGE_NOACCESS)
2021-09-18 22:23:49 +02:00
Duncan Ogilvie f7ba8c62f4
Merge pull request #10 from thejanit0r/patch-2
Fix to handle race conditions on multi-threaded applications on multi-core systems
2021-09-02 12:52:26 +02:00
the_janitor 18a885a703 Added an alternative memory breakpoint method that uses PAGE_NOACCESS instead of PAGE_GUARD 2021-09-02 02:52:14 +02:00
the_janitor 284a782702 Added a fix to handle race conditions on multi-threaded applications on multi-core systems (DBG_REPLY_LATER) 2021-09-02 02:33:06 +02:00
Duncan Ogilvie 8d93135f38
Merge pull request #8 from Mattiwatti/setbpx-check-return
SetBPX: check return value of VirtualProtectEx before writing
2021-02-15 21:56:29 +01:00
Matthijs Lavrijsen 9c98cd2436
SetBPX: check return value of VirtualProtectEx before writing 2021-01-12 18:34:09 +01:00