设置受保护的文件夹,例如通过注册表操作

Setting protected folders e.g. via registry manipulation

场景

为客户提供服务器-客户端解决方案来完成一些与业务相关的任务。在各自的机器上安装了中央服务器。客户端安装在软件用户的个人机器上。

服务器使用 PostgreSQL 并在指定的服务器计算机上存储序列化数据和媒体。

一家相关公司在过去 6 个月内遭受了勒索软件攻击,我们担心这种情况也可能会影响我们的客户。据推测,这些客户实施了一些安全措施,例如 RAID 设置,但根据之前的沟通,我们仍然不相信。尽管这是我们责任范围之外的问题,但可能的攻击造成的不利影响也可能影响到我们。这就是为什么我希望至少 尽可能提高 他们数据库的安全性。

问题

鉴于这种情况,他们的服务器系统的一个小调整是启用 Windows 保护与其数据库相关的文件夹。

本指南介绍了如何使用 Windows UI 激活此功能:

https://www.isumsoft.com/windows-10/how-to-protect-files-folders-against-ransomware-attacks.html

我想在不依赖客户系统管理员的情况下完成此操作,仅使用我们基于 NSIS 的安装程序。因此我的问题是——可以通过注册表操作声明额外的受保护文件夹吗?如果没有,是否有其他方法可以实现?

有一个 PowerShell API,请参阅“Customize controlled folder access”:

Set-MpPreference -EnableControlledFolderAccess Enabled

Add-MpPreference -ControlledFolderAccessProtectedFolders "<the folder to be protected>"

Add-MpPreference -ControlledFolderAccessAllowedApplications "<the app that should be allowed, including the path>"