[NTOSKRNL] Only allow direct device open for FileFsDeviceInformation

This commit is contained in:
Pierre Schweitzer 2019-03-28 22:39:15 +01:00
parent ce6488df31
commit d75ccd01f7
No known key found for this signature in database
GPG key ID: 7545556C3D585B0B

View file

@ -4063,6 +4063,14 @@ NtQueryVolumeInformationFile(IN HANDLE FileHandle,
NULL);
if (!NT_SUCCESS(Status)) return Status;
/* Only allow direct device open for FileFsDeviceInformation */
if (BooleanFlagOn(FileObject->Flags, FO_DIRECT_DEVICE_OPEN) &&
FsInformationClass != FileFsDeviceInformation)
{
ObDereferenceObject(FileObject);
return STATUS_INVALID_DEVICE_REQUEST;
}
/* Check if we should use Sync IO or not */
if (FileObject->Flags & FO_SYNCHRONOUS_IO)
{