@@ -2177,24 +2177,24 @@ BOOLEAN PhpAddTokenCapabilities(
2177
2177
else if (subAuthoritiesCount == SECURITY_CAPABILITY_RID_COUNT )
2178
2178
{
2179
2179
PPH_STRING capabilityName ;
2180
- GUID capabilityGuid ;
2181
- ULONG firstPart ;
2182
- ULONG secondPart ;
2183
- ULONG thirdPart ;
2184
- ULONG lastPart ;
2185
-
2186
- firstPart = * RtlSubAuthoritySid ( TokenPageContext -> Capabilities -> Groups [ i ]. Sid , 1 ) ;
2187
- secondPart = * RtlSubAuthoritySid ( TokenPageContext -> Capabilities -> Groups [ i ]. Sid , 2 ) ;
2188
- thirdPart = * RtlSubAuthoritySid ( TokenPageContext -> Capabilities -> Groups [ i ]. Sid , 3 ) ;
2189
- lastPart = * RtlSubAuthoritySid ( TokenPageContext -> Capabilities -> Groups [ i ]. Sid , 4 ) ;
2190
-
2191
- capabilityGuid . Data1 = firstPart ;
2192
- capabilityGuid .Data2 = LOWORD ( secondPart );
2193
- capabilityGuid .Data3 = HIWORD ( secondPart );
2194
- * (( PULONG ) & capabilityGuid .Data4 [ 0 ]) = thirdPart ;
2195
- * (( PULONG ) & capabilityGuid .Data4 [ 4 ]) = lastPart ;
2196
-
2197
- if (name = PhFormatGuid (& capabilityGuid ))
2180
+ union
2181
+ {
2182
+ GUID Guid ;
2183
+ struct
2184
+ {
2185
+ ULONG Data1 ;
2186
+ ULONG Data2 ;
2187
+ ULONG Data3 ;
2188
+ ULONG Data4 ;
2189
+ } ;
2190
+ } capabilityGuid ;
2191
+
2192
+ capabilityGuid .Data1 = * RtlSubAuthoritySid ( TokenPageContext -> Capabilities -> Groups [ i ]. Sid , 1 );
2193
+ capabilityGuid .Data2 = * RtlSubAuthoritySid ( TokenPageContext -> Capabilities -> Groups [ i ]. Sid , 2 );
2194
+ capabilityGuid .Data3 = * RtlSubAuthoritySid ( TokenPageContext -> Capabilities -> Groups [ i ]. Sid , 3 ) ;
2195
+ capabilityGuid .Data4 = * RtlSubAuthoritySid ( TokenPageContext -> Capabilities -> Groups [ i ]. Sid , 4 ) ;
2196
+
2197
+ if (name = PhFormatGuid (& capabilityGuid . Guid ))
2198
2198
{
2199
2199
PhpAddAttributeNode (& TokenPageContext -> CapsTreeContext , node , PhFormatString (L"Guid: %s" , PhGetString (name )));
2200
2200
@@ -2206,6 +2206,17 @@ BOOLEAN PhpAddTokenCapabilities(
2206
2206
2207
2207
PhDereferenceObject (name );
2208
2208
}
2209
+
2210
+ //ULONG firstPart = *RtlSubAuthoritySid(TokenPageContext->Capabilities->Groups[i].Sid, 1);
2211
+ //ULONG secondPart = *RtlSubAuthoritySid(TokenPageContext->Capabilities->Groups[i].Sid, 2);
2212
+ //ULONG thirdPart = *RtlSubAuthoritySid(TokenPageContext->Capabilities->Groups[i].Sid, 3);
2213
+ //ULONG lastPart = *RtlSubAuthoritySid(TokenPageContext->Capabilities->Groups[i].Sid, 4);
2214
+ //GUID capabilityGuid;
2215
+ //capabilityGuid.Data1 = firstPart;
2216
+ //capabilityGuid.Data2 = LOWORD(secondPart);
2217
+ //capabilityGuid.Data3 = HIWORD(secondPart);
2218
+ //*((PULONG)&capabilityGuid.Data4[0]) = thirdPart;
2219
+ //*((PULONG)&capabilityGuid.Data4[4]) = lastPart;
2209
2220
}
2210
2221
}
2211
2222
}
0 commit comments