Åtkomstkontrollistor för COM
Windows Server XP Service Pack 2 (SP 2) och Windows Server 2003 Service Pack 1 (SP 1) introducerar säkerhetsförbättringar för DCOM (Distributed Component Object Model). En av dessa förbättringar är mer specifika åtkomsträttigheter för användning i åtkomstkontrollistor (ACL). Åtkomsträttigheterna är:
COM_RIGHTS_EXECUTE 1
COM_RIGHTS_EXECUTE_LOCAL 2
COM_RIGHTS_EXECUTE_REMOTE 4
COM_RIGHTS_ACTIVATE_LOCAL 8
COM_RIGHTS_ACTIVATE_REMOTE 16
För att tillhandahålla bakåtkompatibilitet kan en ACL finnas i det format som användes före Windows XP SP 2 och Windows Server 2003 SP 1, som endast använder åtkomsträtt COM_RIGHTS_EXECUTE, eller så kan den finnas i det nya formatet som används i Windows XP SP 2 och Windows Server 2003 SP 1, som använder COM_RIGHTS_EXECUTE tillsammans med en kombination av COM_RIGHTS_EXECUTE_LOCAL, COM_RIGHTS_EXECUTE_REMOTE, COM_RIGHTS_ACTIVATE_LOCAL och COM_RIGHTS_ACTIVATE_REMOTE.
Anteckning
COM_RIGHTS_EXECUTE måste alltid finnas. avsaknaden av den här rättigheten genererar en ogiltig säkerhetsbeskrivning.
Du får inte blanda det gamla formatet och det nya formatet i en enda ACL. antingen måste alla åtkomstkontrollposter endast bevilja COM_RIGHTS_EXECUTE åtkomsträtt, eller så måste alla bevilja COM_RIGHTS_EXECUTE tillsammans med en kombination av COM_RIGHTS_EXECUTE_LOCAL, COM_RIGHTS_EXECUTE_REMOTE, COM_RIGHTS_ACTIVATE_LOCAL och COM_RIGHTS_ACTIVATE_REMOTE.
Följande är ett exempel på en felaktigt formaterad ACL:
Revision 1
Sbz1 0
Control 0x8004
SE_DACL_PRESENT
SE_SELF_RELATIVE
Owner: S-1-5-21-1597522630-148096252-1166023319-500 (no name mapped)
Group: S-1-5-21-1597522630-148096252-1166023319-500 (no name mapped)
DACL:
AclRevision 2
Sbz1 0
AclSize 128
AceCount 4
Sbz2 0
Ace[0]
AceType 0: ACCESS_ALLOWED_ACE_TYPE
AceFlags 0
AceSize 36
AccessMask 0x1
S-1-5-21-1597522630-148096252-1166023319-500 (no name mapped)
Ace[1]
AceType 0: ACCESS_ALLOWED_ACE_TYPE
AceFlags 0
AceSize 20
AccessMask 0xb
S-1-5-18 (Well Known Group: NT AUTHORITY\SYSTEM)
Ace[2]
AceType 0: ACCESS_ALLOWED_ACE_TYPE
AceFlags 0
AceSize 20
AccessMask 0x9
S-1-5-11 (Well Known Group: NT AUTHORITY\Authenticated Users)
SACL:
(null)
Observera att den första åtkomstkontrollposten (ACE) endast beviljar COM_RIGHTS_EXECUTE (0x1), medan den andra ACE:n beviljar COM_RIGHTS_EXECUTE, COM_RIGHTS_EXECUTE_LOCAL och COM_RIGHTS_ACTIVATE_LOCAL (0xb), och den tredje beviljar COM_RIGHTS_EXECUTE och COM_RIGHTS_ACTIVATE_LOCAL (0x9).
För att åtgärda detta bör den första ACE ändras för att bevilja COM_RIGHTS_EXECUTE i kombination med en av de andra fyra åtkomsträttigheterna, annars bör den andra och tredje ACE ändras för att endast bevilja COM_RIGHTS_EXECUTE.
Relaterade ämnen