--- ntoskrnl/mm/pe.c +++ ntoskrnl/mm/pe.c @@ -665,6 +665,8 @@ pssSegments[i].VirtualAddress = pishSectionHeaders[i].VirtualAddress; pssSegments[i].Characteristics = pishSectionHeaders[i].Characteristics; + if (pssSegments[i].Protection == PAGE_NOACCESS) + pssSegments[i].Characteristics = IMAGE_SCN_TYPE_NOLOAD; /* ensure the memory image is no larger than 4GB */ if(!Intsafe_AddULong32(&nPrevVirtualEndOfSegment, pssSegments[i].VirtualAddress, pssSegments[i].Length))