自定义的安全性影响

本主题讨论 MFC 中潜在的安全漏洞。

潜在的安全漏洞

MFC 允许用户自定义应用程序用户界面的外观,例如按钮和图标的外观。 MFC 还支持用户定义的工具,允许用户执行 shell 命令。 出现安全漏洞的原因是应用程序的自定义设置保存在注册表中的用户配置文件中。 任何可以访问注册表的人员都可以编辑这些设置并更改应用程序外观或行为。 例如,计算机上的管理员可以通过导致用户的应用程序执行任意程序(甚至来自网络共享)来模拟用户。

解决方法

建议通过以下三种方法之一关闭注册表中的漏洞:

  • 加密存储在该处的数据

  • 将数据存储在安全文件中,而不是存储在注册表中。

    若要完成上述前两种方法之一,请从 CSettingsStore 类 派生类并重写其方法以在注册表外部实现加密或存储。

  • 还可以在应用程序中禁用自定义。

另请参阅

MFC 的自定义