loader: Mark the stack as executable if possible.

Mikołaj Zalewski mikolaj at zalewski.pl
Thu Nov 16 15:08:32 CST 2006


  AFAIK by default Windows XP enables the no-exec protection only for 
"essential Windows programs and services". I couldn't find what that 
means but it's described as if it is a fixed list of Windows system 
binaries. The protection can enabled for all programs (except for a list 
provided by the user) in System Properties > Advanced > Performance > 
Data Execution Protection. Then when a program executs data it is killed 
and a dialog like this is shown: 
http://img.microsoft.com/library/media/1033/technet/images/prodtechnol/winxppro/deploy/appcom/acxpsp37.gif
. After clicking Change Settings the list already contains the buggy 
program and it's enough to check the checkbox for the program to work 
the next time. AFAIK this OptOut mode is the default for Windows Server 
2003. Apart from these OptIn and OptOut modes by a manual change of 
system boot params it's possible to set AlwaysOn and AlwaysOff modes. 
Also the documentation says that the DEP is always enabled for x64 
programs regardless for the NoExecute setting.

Mikolaj Zalewski




More information about the wine-devel mailing list