mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-09-02 12:23:31 +00:00
[NTOSKRNL]
NtDuplicateToken: Fail, if a primary token is to be created from an impersonation token and and the impersonation level of the impersonation token is below SecurityImpersonation. svn path=/trunk/; revision=47586
This commit is contained in:
@@ -1871,6 +1871,21 @@ NtDuplicateToken(IN HANDLE ExistingTokenHandle,
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Fail, if a primary token is to be created from an impersonation token
|
||||
* and and the impersonation level of the impersonation token is below SecurityImpersonation.
|
||||
*/
|
||||
if (Token->TokenType == TokenImpersonation &&
|
||||
TokenType == TokenPrimary &&
|
||||
Token->ImpersonationLevel < SecurityImpersonation)
|
||||
{
|
||||
ObDereferenceObject(Token);
|
||||
SepReleaseSecurityQualityOfService(CapturedSecurityQualityOfService,
|
||||
PreviousMode,
|
||||
FALSE);
|
||||
return STATUS_BAD_IMPERSONATION_LEVEL;
|
||||
}
|
||||
|
||||
Status = SepDuplicateToken(Token,
|
||||
ObjectAttributes,
|
||||
EffectiveOnly,
|
||||
|
||||
Reference in New Issue
Block a user