分享

看老外如何实现应用程序白名单?

 祺印说信安 2022-06-16 发布于河南

应用程序白名单和应用程序黑名单之间的区别

这两种策略从不同的方向满足相同的安全目标。

应用程序黑名单是阻止特定列表中的应用程序执行的过程,而应用程序白名单允许执行特定列表中的应用程序。因为这两种策略都满足相同的目标,所以它们之间几乎没有区别。白名单可以说是一种更安全的方法,其建立稍微复杂一些。

如何实现应用程序白名单

应用程序白名单可以通过三个步骤实现。

第 1 步:识别所有已批准的应用程序

这将成为应用程序白名单,分为不同的类别。“核心”类别应列出对满足业务目标至关重要的所有应用程序。因为各个部门的申请要求不同,所以每个部门都应该有自己的类别。

编译此列表。首先确定每个部门的所有必要任务,然后将其映射到执行所需的所有应用程序。

此过程将重新考虑某些应用程序的必要性。尽可能节俭,只实施对业务绝对重要的解决方案。删除不必要的应用程序将缩小攻击面,这将支持 Essential EIght 框架的网络风险缓解工作。

步骤 2:指定应用程序白名单规则

只有列入白名单的应用程序的执行可以通过不同的属性来控制。有 6 个主要选项。并非所有这些都被推荐,因为有些不遵循最佳网络安全实践。

了解不安全的白名单属性帮助识别白名单策略中的漏洞。

1.文件路径白名单

文件路径白名单只允许指定路径中的应用程序运行。有两种变体:

  • 基于目录的白名单- 仅允许指定目录和子目录中的文件。

例如,如果目录 C:/Windows/Program Files> 被列入白名单,则 Program Files 文件夹中的所有文件和应用程序都将被允许运行。

  • 完整的文件路径白名单- 仅允许指定路径中的文件。

例如,如果文件路径 C:/Windows/ProgramFiles/UpGuard.exe 被列入白名单,则仅允许 UpGuard.exe 程序在其名称和位置不变的情况下运行。

为了获得最大的安全性,建议使用完整的文件路径白名单。仅当完整的文件路径属性不可用时,才使用基于目录的白名单。

2. 文件名白名单

顾名思义,文件名白名单只允许具有特定名称的应用程序。不建议使用此属性,因为仍允许运行具有列入白名单的文件名的受感染应用程序。

如果必须实施文件名白名单,则应与加密哈希属性结合使用。

3. 加密哈希白名单

此属性仅允许加载散列应用程序,无论其文件名或位置如何。尽管此属性非常安全,但由于更新的应用程序也具有更新的加密哈希,因此可能难以维护。

因此,每当安装补丁或更新应用程序时,都需要相应地更新白名单。

持续审核应用程序白名单以确保立即删除具有已知漏洞的应用程序的加密哈希也很重要。

4. 文件大小白名单

文件大小白名单的前提是恶意应用程序的文件大小与原始版本不同。这是一个错误的假设,因为攻击者可以很容易地创建在各个方面看起来都相同的恶意副本,包括文件大小。

这是一个非常弱的属性,不应该单独使用。其他白名单属性应与它一起使用。

5. 数字签名白名单

数字签名是集成到应用程序编码中的唯一标识符,代表应用程序的真实性,并验证恶意副本是否未尝试加载。

另一种形式的签名是发布者身份。这是应用程序分销商为他们的软件打上烙印以表明它是由他们开发的。

然而,这种白名单策略有两个缺点。

为了可靠,具有来自受信任发布者的身份属性的应用程序不一定是安全的。正如SolarWinds 供应链攻击所证明的那样,许多第三方违规行为都是通过信誉良好的软件发生的

谨慎使用此属性的另一个原因是具有已知漏洞的旧版软件仍将被允许运行。

6.进程白名单

此属性仅允许运行批准的应用程序所必需的进程。所有其他进程都被拒绝。此白名单控制可防止恶意进程危害应用程序。

但是,不应单独使用此控件,因为可能会破坏已批准的流程以获取对应用程序的访问权限。

该属性应与基于上下文的授权能力相结合。这种组合是最安全的白名单控制。

第 3 步:维护应用程序白名单规则

第 3 步是一项持续努力,以确保维护所有指定的白名单规则。这最好通过变更管理计划来实现。

关于应用程序控制的重要说明
以上是澳大利亚ASD有关白名单的实现说明,我们可以作为参考借鉴。同时,也需要明白应用程序白名单绝不是防病毒软件的替代品。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多