0

This is something I know how to do in Olly Debugger, and can't figure out how to do in x64dbg.

In Olly Debugger, it's possible to set a hardware or software breakpoint, either on access or on write, to a memory address.

To be clear: I am referring here to memory breakpoints, which are set by right clicking an address in the dump window. I am not referring to execution breakpoints, like the INT3 breakpoints you can set in the CPU window when you hit F2.

In Olly Debugger, the only practical differences between hardware and software breakpoints is that you're limited to four hardware breakpoints, and with hardware breakpoints, EIP points to the next instruction so you can't see the state of registers or memory before hitting the breakpoint.

In x64dbg, it is also possible to set both hardware or software breakpoints on memory. However, in x64dbg the software memory breakpoints always apply to the entire section in which the memory address resides, which makes software memory breakpoints close to useless (I assume it is just using VirtualProtect to guard the whole section, then breaking on any and all access to the section.) In Olly it was possible to set an unlimited number of software, not hardware, memory breakpoints for an individual byte of memory in the dump window.

Am I just dumb? Is x64dbg really missing this feature?

2
  • It's not possible, the "software" breakpoints on memory in olly are also just memory breakpoints in x64dbg, just a different name, they also work a bit different in x64dbg. – morsisko Mar 7 at 15:49
  • I suspected that, but it's a shame. I find software breakpoints more intuitive and in Olly I only ever used hardware breakpoints as an alternative if anti-debugging code no longer made my software breakpoints useful. Everything else about x64dbg is an upgrade, but from unlimited breakpoints to four useful ones is an objective downgrade... – tomysshadow Mar 7 at 19:06
1

Yes, it is explicitly not supported on the issues page, however, if you are very serious about using x64dbg, it does support writing plugins that create breakpoints and react to debugger events such as breakpoints being hit... so you could write your own plugin that does what you want.

1
  • I'm not sure how it's implemented in Ollydbg, but I'm tempted to try and hack it in. It's the one feature I find myself missing the most. – tomysshadow Mar 10 at 8:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.