summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorDavid Lönnhager <david.l@mullvad.net>2025-05-28 18:04:20 +0200
committerDavid Lönnhager <david.l@mullvad.net>2025-05-28 18:04:20 +0200
commitcba7ba90d28654d06df05157af550063070d24cd (patch)
tree9c1929eeff9a2ad70b55ce6723604162373d4334
parent788f1d81688bba6db9c370c0eb2640f97bf3b9a1 (diff)
parent886727539da572ba9ca0a81b969fc5d509f384a7 (diff)
downloadmullvadvpn-cba7ba90d28654d06df05157af550063070d24cd.tar.xz
mullvadvpn-cba7ba90d28654d06df05157af550063070d24cd.zip
Merge branch 'win-enable-cfg'
-rw-r--r--CHANGELOG.md5
-rw-r--r--windows/driverlogic/driverlogic.vcxproj2
m---------windows/libwfp0
-rw-r--r--windows/nsis-plugins/src/cleanup/cleanup.vcxproj1
-rw-r--r--windows/nsis-plugins/src/log/log.vcxproj3
-rw-r--r--windows/nsis-plugins/src/pathedit/pathedit.vcxproj1
-rw-r--r--windows/nsis-plugins/src/registry/registry.vcxproj1
-rw-r--r--windows/nsis-plugins/src/string/string.vcxproj1
-rw-r--r--windows/nsis-plugins/src/tray/tray.vcxproj1
m---------windows/windows-libraries0
-rw-r--r--windows/winfw/src/winfw/winfw.vcxproj3
11 files changed, 17 insertions, 1 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8b2b588f22..404e507d1f 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -63,6 +63,11 @@ supported.
in the bin but still leaving behind a launch daemon. This fixes CVE-2025-46351 reported by
Egor Filatov (Positive Technologies).
+#### Windows
+- Enable control flow integrity checks (CFG) for some C++ code. This excludes `wintun`,
+ `wireguard-nt`, and OpenVPN. This addresses `MLLVD-CR-24-101` to the extent that we found
+ it valuable.
+
## [2025.6] - 2025-05-13
This release is identical to 2025.6-beta2.
diff --git a/windows/driverlogic/driverlogic.vcxproj b/windows/driverlogic/driverlogic.vcxproj
index 45b65ebbbd..2b6b0a51a2 100644
--- a/windows/driverlogic/driverlogic.vcxproj
+++ b/windows/driverlogic/driverlogic.vcxproj
@@ -141,6 +141,7 @@
<LanguageStandard>stdcpp20</LanguageStandard>
<AdditionalIncludeDirectories>$(ProjectDir)../../dist-assets/binaries/x86_64-pc-windows-msvc/;$(ProjectDir)../windows-libraries/src/;$(ProjectDir)../</AdditionalIncludeDirectories>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <ControlFlowGuard>Guard</ControlFlowGuard>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@@ -164,6 +165,7 @@
<LanguageStandard>stdcpp20</LanguageStandard>
<AdditionalIncludeDirectories>$(ProjectDir)../../dist-assets/binaries/x86_64-pc-windows-msvc/;$(ProjectDir)../windows-libraries/src/;$(ProjectDir)../</AdditionalIncludeDirectories>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <ControlFlowGuard>Guard</ControlFlowGuard>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
diff --git a/windows/libwfp b/windows/libwfp
-Subproject 9695c343d3d79876543652197abd0850ab5b7a1
+Subproject 105a27f44a1c129b751fe533aabc9938eeec1bc
diff --git a/windows/nsis-plugins/src/cleanup/cleanup.vcxproj b/windows/nsis-plugins/src/cleanup/cleanup.vcxproj
index 3dbb32ca65..6c1d4edb72 100644
--- a/windows/nsis-plugins/src/cleanup/cleanup.vcxproj
+++ b/windows/nsis-plugins/src/cleanup/cleanup.vcxproj
@@ -93,6 +93,7 @@
<AdditionalIncludeDirectories>$(ProjectDir)../../../../mullvad-nsis/include;$(ProjectDir)../../../../dist-assets/binaries/x86_64-pc-windows-msvc/;$(ProjectDir)../../../windows-libraries/src/</AdditionalIncludeDirectories>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<LanguageStandard>stdcpp20</LanguageStandard>
+ <ControlFlowGuard>Guard</ControlFlowGuard>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
diff --git a/windows/nsis-plugins/src/log/log.vcxproj b/windows/nsis-plugins/src/log/log.vcxproj
index b194f4684a..8c9be11880 100644
--- a/windows/nsis-plugins/src/log/log.vcxproj
+++ b/windows/nsis-plugins/src/log/log.vcxproj
@@ -93,6 +93,7 @@
<AdditionalIncludeDirectories>$(ProjectDir)../../../../mullvad-nsis/include;$(ProjectDir)../../../../dist-assets/binaries/x86_64-pc-windows-msvc/;$(ProjectDir)../../../windows-libraries/src/</AdditionalIncludeDirectories>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<LanguageStandard>stdcpp20</LanguageStandard>
+ <ControlFlowGuard>Guard</ControlFlowGuard>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
@@ -132,4 +133,4 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
-</Project>
+</Project> \ No newline at end of file
diff --git a/windows/nsis-plugins/src/pathedit/pathedit.vcxproj b/windows/nsis-plugins/src/pathedit/pathedit.vcxproj
index 7822e704c8..31302c2f87 100644
--- a/windows/nsis-plugins/src/pathedit/pathedit.vcxproj
+++ b/windows/nsis-plugins/src/pathedit/pathedit.vcxproj
@@ -88,6 +88,7 @@
<AdditionalIncludeDirectories>$(ProjectDir)../../../../dist-assets/binaries/x86_64-pc-windows-msvc/;$(ProjectDir)../../../windows-libraries/src/;$(ProjectDir)../</AdditionalIncludeDirectories>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<LanguageStandard>stdcpp20</LanguageStandard>
+ <ControlFlowGuard>Guard</ControlFlowGuard>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
diff --git a/windows/nsis-plugins/src/registry/registry.vcxproj b/windows/nsis-plugins/src/registry/registry.vcxproj
index 80ea2c4d79..844a552347 100644
--- a/windows/nsis-plugins/src/registry/registry.vcxproj
+++ b/windows/nsis-plugins/src/registry/registry.vcxproj
@@ -88,6 +88,7 @@
<AdditionalIncludeDirectories>$(ProjectDir)../../../../dist-assets/binaries/x86_64-pc-windows-msvc/;$(ProjectDir)../../../windows-libraries/src/</AdditionalIncludeDirectories>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<LanguageStandard>stdcpp20</LanguageStandard>
+ <ControlFlowGuard>Guard</ControlFlowGuard>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
diff --git a/windows/nsis-plugins/src/string/string.vcxproj b/windows/nsis-plugins/src/string/string.vcxproj
index 1626019ab7..6e1ad62a15 100644
--- a/windows/nsis-plugins/src/string/string.vcxproj
+++ b/windows/nsis-plugins/src/string/string.vcxproj
@@ -88,6 +88,7 @@
<AdditionalIncludeDirectories>$(ProjectDir)../../../../dist-assets/binaries/x86_64-pc-windows-msvc/;$(ProjectDir)../../../windows-libraries/src/;$(ProjectDir)../</AdditionalIncludeDirectories>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<LanguageStandard>stdcpp20</LanguageStandard>
+ <ControlFlowGuard>Guard</ControlFlowGuard>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
diff --git a/windows/nsis-plugins/src/tray/tray.vcxproj b/windows/nsis-plugins/src/tray/tray.vcxproj
index 15561ff6bf..5c289e560f 100644
--- a/windows/nsis-plugins/src/tray/tray.vcxproj
+++ b/windows/nsis-plugins/src/tray/tray.vcxproj
@@ -88,6 +88,7 @@
<AdditionalIncludeDirectories>$(ProjectDir)../../../../dist-assets/binaries/x86_64-pc-windows-msvc/;$(ProjectDir)../../../windows-libraries/src/;$(ProjectDir)../</AdditionalIncludeDirectories>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<LanguageStandard>stdcpp20</LanguageStandard>
+ <ControlFlowGuard>Guard</ControlFlowGuard>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
diff --git a/windows/windows-libraries b/windows/windows-libraries
-Subproject 93c388f3d725498e588bca860cf64599490b472
+Subproject 0267555ea4a8ae6bcfd59930ce454b861451087
diff --git a/windows/winfw/src/winfw/winfw.vcxproj b/windows/winfw/src/winfw/winfw.vcxproj
index 7893d19fec..1753c722e2 100644
--- a/windows/winfw/src/winfw/winfw.vcxproj
+++ b/windows/winfw/src/winfw/winfw.vcxproj
@@ -285,6 +285,7 @@
<LanguageStandard>stdcpp20</LanguageStandard>
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\libshared\src\;$(ProjectDir)..\;$(ProjectDir)..\..\..\windows-libraries\src\;$(ProjectDir)..\..\..\libwfp\src\</AdditionalIncludeDirectories>
<ObjectFileName>$(IntDir)%(RelativeDir)/</ObjectFileName>
+ <ControlFlowGuard>Guard</ControlFlowGuard>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
@@ -312,6 +313,7 @@
<LanguageStandard>stdcpp20</LanguageStandard>
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\libshared\src\;$(ProjectDir)..\;$(ProjectDir)..\..\..\windows-libraries\src\;$(ProjectDir)..\..\..\libwfp\src\</AdditionalIncludeDirectories>
<ObjectFileName>$(IntDir)%(RelativeDir)/</ObjectFileName>
+ <ControlFlowGuard>Guard</ControlFlowGuard>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
@@ -339,6 +341,7 @@
<LanguageStandard>stdcpp20</LanguageStandard>
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\libshared\src\;$(ProjectDir)..\;$(ProjectDir)..\..\..\windows-libraries\src\;$(ProjectDir)..\..\..\libwfp\src\</AdditionalIncludeDirectories>
<ObjectFileName>$(IntDir)%(RelativeDir)/</ObjectFileName>
+ <ControlFlowGuard>Guard</ControlFlowGuard>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>