Enabled use of non-executable memory pages

This commit is contained in:
Benjamin Höglinger-Stelzer 2023-11-23 00:33:35 +01:00
parent fc64263de0
commit e7c2c8c4bf
2 changed files with 6 additions and 2 deletions

View File

@ -134,7 +134,7 @@ DomitoCalculatePortableExecutableDigest(
ULONG copySize = phDos->e_lfanew + sizeof(IMAGE_FILE_HEADER) + 4 + 0x40; ULONG copySize = phDos->e_lfanew + sizeof(IMAGE_FILE_HEADER) + 4 + 0x40;
#pragma warning(disable:4996) #pragma warning(disable:4996)
const PUCHAR pBuf = (PUCHAR)ExAllocatePoolWithTag( const PUCHAR pBuf = (PUCHAR)ExAllocatePoolWithTag(
NonPagedPool, NonPagedPoolNx,
16 * 512 * 512, 16 * 512 * 512,
DOMITO_POOL_TAG DOMITO_POOL_TAG
); );
@ -195,7 +195,7 @@ DomitoCalculatePortableExecutableDigest(
// Allocate a buffer to store the resulting hash // Allocate a buffer to store the resulting hash
// //
#pragma warning(disable:4996) #pragma warning(disable:4996)
pHash = (PUCHAR)ExAllocatePoolWithTag(NonPagedPool, hashLength, DOMITO_POOL_TAG); pHash = (PUCHAR)ExAllocatePoolWithTag(NonPagedPoolNx, hashLength, DOMITO_POOL_TAG);
#pragma warning(default:4996) #pragma warning(default:4996)
if (!pHash) if (!pHash)
{ {

View File

@ -90,6 +90,7 @@
<ClCompile> <ClCompile>
<AdditionalIncludeDirectories>$(SolutionDir)include;$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>$(SolutionDir)include;$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalOptions>/kernel %(AdditionalOptions)</AdditionalOptions> <AdditionalOptions>/kernel %(AdditionalOptions)</AdditionalOptions>
<PreprocessorDefinitions>POOL_NX_OPTIN=1;_WIN64;_AMD64_;AMD64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile> </ClCompile>
</ItemDefinitionGroup> </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
@ -99,18 +100,21 @@
<ClCompile> <ClCompile>
<AdditionalIncludeDirectories>$(SolutionDir)include;$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>$(SolutionDir)include;$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalOptions>/kernel %(AdditionalOptions)</AdditionalOptions> <AdditionalOptions>/kernel %(AdditionalOptions)</AdditionalOptions>
<PreprocessorDefinitions>POOL_NX_OPTIN=1;_WIN64;_AMD64_;AMD64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile> </ClCompile>
</ItemDefinitionGroup> </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'"> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
<ClCompile> <ClCompile>
<AdditionalIncludeDirectories>$(SolutionDir)include;$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>$(SolutionDir)include;$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalOptions>/kernel %(AdditionalOptions)</AdditionalOptions> <AdditionalOptions>/kernel %(AdditionalOptions)</AdditionalOptions>
<PreprocessorDefinitions>POOL_NX_OPTIN=1;_ARM64_;ARM64;_USE_DECLSPECS_FOR_SAL=1;STD_CALL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile> </ClCompile>
</ItemDefinitionGroup> </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'"> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
<ClCompile> <ClCompile>
<AdditionalIncludeDirectories>$(SolutionDir)include;$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>$(SolutionDir)include;$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalOptions>/kernel %(AdditionalOptions)</AdditionalOptions> <AdditionalOptions>/kernel %(AdditionalOptions)</AdditionalOptions>
<PreprocessorDefinitions>POOL_NX_OPTIN=1;_ARM64_;ARM64;_USE_DECLSPECS_FOR_SAL=1;STD_CALL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile> </ClCompile>
</ItemDefinitionGroup> </ItemDefinitionGroup>
<ItemGroup> <ItemGroup>