Why does FogBugz require DEP to be disabled?

I'm really wondering why FogBugz, when installed locally, insists that DEP is disabled?

0


source to share


5 answers


FogBugz 6 (and earlier) requires Data Execution Prevention (DEP) to be disabled on Windows versions with DEP, due to the third party COM component we use to parse email. We will fix this in the next major release of FogBugz: FogBugz will no longer use this third party component (in fact, the next version of FogBugz will not use any COM components).



+7


source


Turn it on and see where it crashes with the debugger :) I ran into some COM components that will execute some code from a data block that threw DEP exceptions. I would be willing to guess that FogBugz also has access to some of its own components that do the same.



+1


source


I don't know the specifics of FogBugz, but ...

The most common reason for disabling DEP is an incorrectly linked code segment, which is represented by a data segment.

The second most common reason is machine code in strings. All in all, this is really bad style, but sometimes on Windows it can't help.

The third most common reason is some kind of algorithm in the code that suggests stacking. DEP with this.

Or perhaps the program actually runs the code in the heap buffer.

0


source


Code that tries to fix or insert a hook into other modules in its address space will often fail unless DEP is disabled or the appropriate memory protection is installed for the established connection.

This is a common technique with some frameworks (eg Delphi) where "patches" are applied dynamically ar run-time to fix bugs that the vendor has not yet indicated.

0


source


I just don't like the idea of โ€‹โ€‹disabling DEP in a Server environment, because modern software can't handle it. Specially since this is the only software I've tried over the years that required it.

During installation, I ran into a DEP warning.

As stated in the FogBugz link above, "Be warned, however, that FogBugz will not function properly with DEP enabled."

0


source







All Articles