Categorizzazione di proxy e stub DCOM

DCOM effettua il marshalling dei riferimenti agli oggetti creando OBJREF che contengono CLSID. Questi CLSID sono vulnerabili agli attacchi di sicurezza perché durante il marshalling è possibile caricare DLL arbitrarie. Tuttavia, il flag EOAC_NO_CUSTOM_MARSHAL può essere specificato quando si chiama CoInitializeSecurity (vedere EOLE_AUTHENTICATION_CAPABILITIES). L'impostazione di questo flag consente di proteggere la sicurezza del server quando si usa DCOM perché riduce le probabilità di eseguire DLL arbitrarie. Quando questo flag è impostato, il server consente il marshalling solo di CLSID implementati in ole32.dll, comadmin.dll, comsvcs.dll o es.dll o che implementano l'ID categoria CATID_MARSHALER.

CATID_MARSHALER è un GUID di categoria di componenti che può essere associato a un CLSID che viene sottoposto a marshalling personalizzato. Le interfacce sottoposte a marshalling personalizzato con questo CLSID sono consentite quando il EOAC_NO_CUSTOM_MARSHAL viene impostato tramite CoInitializeSecurity.

Categorie di componenti