[NTOSKRNL] Check that caller has appropriate right before creating page file

This commit is contained in:
Pierre Schweitzer 2018-08-09 21:13:08 +02:00
parent 2bbac12427
commit 0ad4ef6002
No known key found for this signature in database
GPG key ID: 7545556C3D585B0B

View file

@ -509,13 +509,18 @@ NtCreatePagingFile(IN PUNICODE_STRING FileName,
if (MmNumberOfPagingFiles >= MAX_PAGING_FILES) if (MmNumberOfPagingFiles >= MAX_PAGING_FILES)
{ {
return(STATUS_TOO_MANY_PAGING_FILES); return STATUS_TOO_MANY_PAGING_FILES;
} }
PreviousMode = ExGetPreviousMode(); PreviousMode = ExGetPreviousMode();
if (PreviousMode != KernelMode) if (PreviousMode != KernelMode)
{ {
if (SeSinglePrivilegeCheck(SeCreatePagefilePrivilege, PreviousMode) != TRUE)
{
return STATUS_PRIVILEGE_NOT_HELD;
}
_SEH2_TRY _SEH2_TRY
{ {
SafeInitialSize = ProbeForReadLargeInteger(InitialSize); SafeInitialSize = ProbeForReadLargeInteger(InitialSize);