dep

Risks of RWX memory pages

元气小坏坏 提交于 2019-12-06 06:23:51
After getting negative comments on this answer - can i implement counter in the .text area without using registers? , I performed a little investigation, trying to understand if RWX memory pages are really non-usual and rare thing, or every popular program has some. ( Science! ) I attached to MSVS by WinDBG, executed !address /f:Image,PAGE_EXECUTE_READWRITE , and I saw a lot of lines like this: 7a534000 7a537000 3000 MEM_IMAGE MEM_COMMIT PAGE_EXECUTE_READWRITE Image "C:\WINDOWS\assembly\NativeImages_v2.0.50727_32\System\6836a951700c2eb01a933212425cda4e\System.ni.dll" I examined its sections,

How to disable DEP

回眸只為那壹抹淺笑 提交于 2019-12-06 04:33:02
We have an app where some parts of the heap are executed as assembly instructions / for testing purposes - we download programs to PLCs but allow users to simulate running their applications by executing their code before downloading to the PLC. Before we always executed these programs from the heap where the instructions are stored and this worked fine but we have now converted to VS2012 and now it seems that turning off DEP is not so easy. I was wondering if it is somehow possible to turn off the DEP regardless of what GetProcessDEPPolicy returns or if there is some other technique to

Incompatibilities between Indy 9 and Windows Server 2003?

拜拜、爱过 提交于 2019-12-06 02:17:33
I'm having a problem with a Delphi application on some Windows 2003 servers. It uses a webservice call to connect with another server and transmit data back and forth. As soon as the app gets to the Authenticate method, the app dies. The app has worked for years on previous boxes with Win Server 2003, but it doesn't on freshly built machines. The machines are set up the same way for the most part, but there is clearly some config setting that differs that I'm not able to track down. Also, while the error becomes apparent in the call to Authenticate, packet sniffing proves that nothing ever

Exploiting a string-based overflow on x86-64 with NX (DEP) and ASLR enabled

走远了吗. 提交于 2019-12-06 01:27:36
问题 Consider the following vulnerable code/program: #include <string.h> int main(int argc, char *argv[]) { char buf[16]; strcpy(buf, argv[1]); return 0; } On IA-32 (x86, 32-bit) running Linux with NX and ASLR enabled, I would exploit this using GOT-overwrite technique, which essentially includes the following steps: Overflow buffer till RIP Overwrite RIP with the address of strcpy@plt Use a clean gadget from .text , e.g. pop edi ; pop ebp ; ret , as return address for strcpy Write arguments for

How to define, DEP is ON in system

五迷三道 提交于 2019-12-04 09:34:25
DelphiXe; Xp,Vista,Win7,WSrv2008R2; 0.DEP(Data Execution Prevention) CPU supported Function isCpuDEP:bool; begin Result:=... //??? end; 1.How to define, DEP is ON in system? Function isEnableDEP:bool; // Win Xp comparable begin Result:=false;if isCpuDEP=false then exit; Result:=... //??? end; 2.To define, that if DEP it is enabled, and also enabled for ALL programs and services? Function isEnableDEPForAllProgram:bool; begin Result:=false;if isEnableDEP=false then exit; Result:=... //??? end; 3.Get DEP program list? Function GetDEPProgramList:TStringList; begin Result:=nil;if

JIT compilation and DEP

混江龙づ霸主 提交于 2019-12-01 11:19:08
I was thinking of trying my hand at some jit compilataion (just for the sake of learning) and it would be nice to have it work cross platform since I run all the major three at home (windows, os x, linux). With that in mind, I want to know if there is any way to get out of using the virtual memory windows functions to allocate memory with execution permissions. Would be nice to just use malloc or new and point the processor at such a block. Any tips? One possibility is to make it a requirement that Windows installations running your program be either configured for DEP AlwaysOff (bad idea) or

JIT compilation and DEP

只谈情不闲聊 提交于 2019-12-01 09:25:19
问题 I was thinking of trying my hand at some jit compilataion (just for the sake of learning) and it would be nice to have it work cross platform since I run all the major three at home (windows, os x, linux). With that in mind, I want to know if there is any way to get out of using the virtual memory windows functions to allocate memory with execution permissions. Would be nice to just use malloc or new and point the processor at such a block. Any tips? 回答1: One possibility is to make it a

IIS: How to disable Data Execution Prevention in Windows Server 2008?

浪尽此生 提交于 2019-11-30 18:28:19
I've been trying to disable DEP on my windows 2008 dev box and have not succeeded. I've tried: System Properties->Performance Options->Data Execution Prevention->Turn on DEP for essential Windows programs and services only (still happens) System Properties->Performance Options->Data Execution Prevention->Turn on DEP for all programs and services except those I select in this case, i tried to choose both inetinfo.exe and w3wp.exe in the c:\windows\system32\inetsrv\ folder, and when selected, I receive this error: "You can not set DEP attributes on 64-bit executables". I'm sure that there is

IIS: How to disable Data Execution Prevention in Windows Server 2008?

∥☆過路亽.° 提交于 2019-11-30 02:50:56
问题 I've been trying to disable DEP on my windows 2008 dev box and have not succeeded. I've tried: System Properties->Performance Options->Data Execution Prevention->Turn on DEP for essential Windows programs and services only (still happens) System Properties->Performance Options->Data Execution Prevention->Turn on DEP for all programs and services except those I select in this case, i tried to choose both inetinfo.exe and w3wp.exe in the c:\windows\system32\inetsrv\ folder, and when selected, I