“我拿到了你的数据,而且我不会还给你。好吧,除非你付我一百万美元。在这种情况下,我会给你解密密钥,让你很快就能恢复运营。”如果不付款,“那你就可以跟你的业务说再见了”。据一项研究称,这种情况每天发生在各个组织身上15次。攻击者加密你的关键数据,并要求支付赎金以换取

可恢复形式的数据返还。这是一个具有现实后果的重大威胁。另一项研究发现,44% 的数据泄露事件涉及勒索软件。而 yet another study(又一项研究)发现,73% 的组织至少经历过一次勒索软件攻击。这是一堆证据表明勒索软件是一个重大威胁(原文误写为 thread,实指 threat)。更糟糕的是,这原本是可以预防的。让我们来看看你可以聚焦的一个领域,这将有助于在勒索软件扩散之前捕捉到它

从而避免你的数据像人质视频中的受害者那样恳求你释放它们。勒索软件归根结底是一个数据问题。突然之间,你的数据不再真正属于你了。那么如何保护它呢?你可以做很多事情,比如保持软件更新以安装所有最新的安全补丁。这样坏人就无法利用你平台上的漏洞。你需要培训用户不要打开那些未知的附件

不管他们以为是谁发来的,因为发送者可以伪造。然后运行防恶意软件、杀毒软件、EDR(端点检测与响应)等工具,这些类型的工具有助于保护终端并加固它们以抵御攻击。但良好的安全始于自身

最终你的数据存储在存储设备上。因此,在数据存储的地方保护它是有道理的。好吧,勒索软件可以通过许多不同的途径进入你的系统。例如,一种是恶意软件侵入你的系统然后传播开来。另一种可能是“落地并扩展”类型的攻击

其中攻击者闯入你的系统,然后在整个系统中进行横向移动,在过程中加密各种东西或计划其他事情来为他们完成工作。但一旦开始加密文件的那一刻,存储设备就是使这一行为变得可见的地方。它是数据影响的可靠见证者

也是你与数据毁灭之间的最后一道防线。而这一切真的始于备份。因为没有完美的防御,你需要有良好的备份。坏人总能找到办法绕过甚至最好的技术。这就是为什么你必须为失败做计划,并希望它永远不会发生。这意味着要有良好的数据备份

如果你有了这个,你可以告诉那个要求人质付款的攻击者“去一边待着吧”,因为你可以恢复失去的东西并继续前进。问题在于太多组织没有良好的备份,因此遭受了后果。以下是你需要拥有良好备份的条件

有四个 R(原则)。它必须是最近的(Recent),也就是说,如果数据不新鲜,你拥有的只是旧数据,那么当你尝试恢复时就会丢失大量信息。它必须是冗余的(Redundant),因为没有完美的系统,所以你的备份也可能受到损害

因此你想要这些数据的冗余副本,以便如果一个失败,你可以切换到另一个。它必须是可恢复的(Recoverable)。现在这一点似乎很明显:如果你无法恢复数据,为什么要写入它呢?但许多组织正是这样做的

他们没有测试系统,结果发现他们只是在备份垃圾数据,实际上没有什么可恢复的。然后我要在这里稍微自由发挥一下

因为“4R”听起来不错,“只读(Read-only)”,但我在这里真正指的是不可变(Immutable)。不可变意味着它不能被更改。一旦写入备份介质,我们就不希望它在后来被侵入系统的勒索软件攻击所修改

因为如果勒索软件传播到我们的备份中,那么我们就没有任何可靠的恢复来源了。如果你没有这个

那么你基本上是在没有安全网的情况下走钢丝。一旦失足,嗯,你不想去想那后果如何。你怎么知道你是勒索软件攻击的受害者?最糟糕的发现方式是你收到要求支付赎金的弹窗,或者你突然意识到你的关键业务数据完全无法读取。更好的发现方式是让存储系统实际上在一切消失之前

向你发出关于你的数据发生意外变化的警报。换句话说,要在一切都烧成灰烬之前闻到烟味。你越早知道,就越有机会限制损害。为什么是存储系统?再次强调,因为数据就生活在那里

因此它可以比等待影响在应用层显现更快地检测和识别变化及损害。我们该怎么做呢?

你的存储不仅仅是存放所有数据的被动文件柜。它实际上可以持续监控数据以及如何访问和写入这些数据。这些信息可用于建立对什么是预期行为、什么不是的预期理解,然后在检测到异常时警告你

一个例子包括一种称为熵(Entropy)的东西。熵是系统中混乱、无序或随机性的度量。在典型系统中,数据具有一定的可预测性。因此,如果你查看一个客户数据库,它可能包含客户姓名、账号和余额

但如果突然整个数据库看起来像乱码,你可能会怀疑某种损坏。而这种损坏可能正是数据被

勒索软件加密的结果。加密后的数据看起来是随机的。换一种说法,它具有我们称之为熵的高程度特性。因此测量那个应该是结构化数据库的熵的程度可以作为一个指标

你可以使用一种称为香农熵(Shannon entropy)的计算方法。这是向信息论之父克劳德·香农致敬,他提出了这个美妙的

公式来衡量你数据中的无序程度。例如一个更强的信号可能是你的数据突然变得不像以前那样可压缩了

这是因为加密后的数据不易压缩。所以我过去能够将 100 TB 的数据压缩到比如 20 TB,现在也许突然我只能将其压缩

至 98 TB。所以事实是

我无法对其进行压缩,这表明该数据中发生了某些变化,而这可能是加密所致。去重功能也是如此

所以如果你看到这些功能崩溃,可能会引起怀疑。另一个信号可能是你突然看到大规模覆盖突发情况的增加

换句话说,你一直在进行这种级别的 IO 操作

突然之间,数据量会出现巨大激增。这可能是勒索软件攻击试图加密所有可见数据的迹象。大规模的文件重命名是另一种可能表明存在问题的信号指标。虽然单独来看,这些现象中的任何一个都不一定构成问题,但如果将这些信号结合起来,并与基线活动进行对比分析——这正是机器学习模型非常擅长的领域。

这样一来,你就拥有了一个能够持续监测“患者”脉搏的检测系统,同时还能排除误报。更高级的是,一个复杂的文件系统可以检查针对该文件系统的每个 I/O 操作,从而在底层确定是否存在偏离基线行为的情况。通过这种方式,你可以进一步降低因合法操作而触发警报的误报可能性。

此外,这在攻击者仅对数据进行部分加密的情况下也大有裨益。换句话说,他们并没有加密所有内容,而是可能随机选择某些部分、开头部分或其他类似内容这样做。为什么要这么做?这有助于他们避免被检测到,因为整个文件并没有完全改变。但这同时也让他们能够在不被发现的情况下迅速扩散损害范围。

一个复杂的文件系统可能能够更好地检测这类情况。一旦意识到发生了数据紧急情况,你应该怎么做?首先,你的响应必须迅速,因为大量数据可能在瞬间遭到破坏。其次,需要协调一致:你不想等到头发着火时再去寻找灭火器。最后,在可能的情况下实现自动化。虽然无法完全自动化所有流程,但这里有很多可以自动化的地方,这有助于使整个过程变得可重复且快速。

这意味着你需要提前规划好应对措施并测试这些响应方案。如果你想进一步提升整体水平,这里有一个建议:将你的存储系统连接到 SIEM(安全信息和事件管理系统),以便整个环境都能看到警报。这样可以让警报得到情境化处理,理解其在更广泛环境中的含义并最终进行优先级排序。

通过这种方式,你可以知道哪些事情需要优先处理。再进一步,将其集成到 SOAR(安全编排、自动化和响应工具)中。这样可以在可能的情况下自动执行一些缓解和恢复操作。我们要做的事情包括:锁定系统、隔离爆发点、识别感染发生前的最佳清洁恢复点,以及在准备好后恢复关键数据并继续运营。

就勒索软件而言,目标应该是尽早检测可疑活动、保护关键数据、做出适当响应并快速恢复。存储有时被视为应用程序下方的被动层,或仅作为攻击后使用的恢复目的地。但具备网络韧性的存储可以在事件发生前、中、后期发挥更积极的作用。

如果你能充分利用它,那么在每年的勒索软件幸存者会议上,你将有精彩的故事可以讲述——毕竟他们是有这种会议的,对吧?