自定义对安全有何影响

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

潜在的安全漏洞

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

解决方法

我们建议采用以下三种方法中的任一方法来关闭注册表中的漏洞:

  • 对存储在注册表中的数据进行加密。

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

    若要完成前两种方法中的任一方法,请从 CSettingsStore Class 派生一个类,然后重写其方法以在注册表外实现加密或存储。

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

另请参阅

MFC 自定义