MCPcopy Create free account
hub / github.com/Windscribe/Desktop-App / OnlyLoadMSSignedBinaries

Function OnlyLoadMSSignedBinaries

libs/wssecure/dllmain.cpp:18–42  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

16}
17
18static void OnlyLoadMSSignedBinaries()
19{
20 PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY sigPolicy = {};
21 sigPolicy.MicrosoftSignedOnly = 1;
22 BOOL result = ::SetProcessMitigationPolicy(ProcessSignaturePolicy, &sigPolicy, sizeof(sigPolicy));
23 if (!result) {
24 debugMessage(L"**wssecure** SetProcessMitigationPolicy(ProcessSignaturePolicy) failed (%lu)", ::GetLastError());
25 }
26
27 // This mitigation by itself does not block DLL injection.
28 PROCESS_MITIGATION_DYNAMIC_CODE_POLICY dynamicCodePolicy = {};
29 dynamicCodePolicy.AllowRemoteDowngrade = 0;
30 dynamicCodePolicy.ProhibitDynamicCode = 1;
31 result = ::SetProcessMitigationPolicy(ProcessDynamicCodePolicy, &dynamicCodePolicy, sizeof(dynamicCodePolicy));
32 if (!result) {
33 debugMessage(L"**wssecure** SetProcessMitigationPolicy(ProcessDynamicCodePolicy) failed (%lu)", ::GetLastError());
34 }
35
36 PROCESS_MITIGATION_IMAGE_LOAD_POLICY ilp = {};
37 ilp.PreferSystem32Images = 1;
38 result = ::SetProcessMitigationPolicy(ProcessImageLoadPolicy, &ilp, sizeof(ilp));
39 if (!result) {
40 debugMessage(L"**wssecure** SetProcessMitigationPolicy(ProcessImageLoadPolicy) failed (%lu)", ::GetLastError());
41 }
42}
43
44BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved)
45{

Callers 1

DllMainFunction · 0.85

Calls 1

debugMessageFunction · 0.70

Tested by

no test coverage detected