写点什么

如何网络安全中的“纵深防御(DiD)”策略?

  • 2019-09-04
  • 本文字数:3870 字

    阅读完需:约 13 分钟

如何网络安全中的“纵深防御(DiD)”策略?

网络安全领域的发展速度太快,隔一段时间就会有一些流行语和技术术语冒出来。如果你有一段时间不关注该领域,则感觉已经跟不上时代了。



“纵深防御”(Defence-in-Depth, DiD)就是这样一个技术术语。


为什么会出现这个术语呢?简单地说,DiD 要求将安全性应用于多个层,其工作原理是为每个层提供不同类型的保护,以便为成为阻止攻击的最佳手段。这些层也可以防止不同的问题,全方位覆盖多个不同问题。


那么,我们如何使用该策略呢?简单地说,我们将不同的安全措施分组到不同的功能类别中并应用它们。这与传统的物理安全的实现方式或分组方式没有太大区别。


纵深防御的思路

事实上,任何负责任的安全专家都会告诉你,绝对没有办法 100%保护你的 IT 网络免受所有可能的威胁。你唯一能做的就是弄清楚你愿意承受多大程度的风险,然后采取措施来应对其余的风险。


这样说吧,安全防御行为其实就是一种平衡行为,找到安全性和可用性之间的平衡点,是一项困难的任务。这种复杂性可以通过使用来自单个供应商的一套产品来管理,但也有其自身的缺点。


正如一篇文章所提到的观点:


一方面,如果你能够从中央控制台获得一套安全产品,并且能够在一次成功的操作中报告这些产品,那就太好了。但另一方面,采用单一供应商会有限制防御的风险。


最好的例子就是杀毒软件,不同的供应商可能能识别大多数相同的病毒, 但处理的方法却大相径庭。而且,有时这些不同的产品会与正常的操作行为发生冲突。


另一个考虑因素是,确实没有明确的规定要求你必须采取哪些措施来保护你的 IT 网络,因为具体的措施要施取决于你的组织规模、预算以及你尝试保护的数据的性质、你的组织可能会成为攻击目标的攻击类型以及你愿意接受的风险程度。


接下来,我将会讨论纵深防御的解决方案包括的不同层。在网络世界里,一个机构可能遇到的攻击者大致可分为以下 5 类,每一类都有不同的攻击动机和能力:


1.脚本小子:以“黑客”自居并沾沾自喜的初学者。脚本小子不像真正的黑客那样发现系统漏洞,他们通常使用别人开发的程序来恶意破坏他人系统。他们常常从某些网站上复制脚本代码,然后到处粘贴,却并不一定明白他们的方法与原理。他们钦慕于黑客的能力与探索精神,但与黑客所不同的是,脚本小子通常只是对计算机系统有基础了解与爱好,但并不注重程序语言、算法、和数据结构的研究;


2.内部人士或雇员:有合法途径使用公司网络的人士他们往往是受金钱或报复驱使;


3.真正的黑客:他们注重程序语言、算法、和数据结构的研究;


4.有组织犯罪:他们会造成大量的电子邮件垃圾邮件并开发常见的恶意软件;


5.国家行为的攻击:通常是高度自律的组织,拥有进行复杂攻击所需的时间、资源和成本。


与政府合作或与重要国家基础设施相关的实体或公司的 IT 系统,往往会成为攻击目标。金融机构可能更有可能发现他们正面临有组织犯罪的袭击。


了解威胁的来源可以帮助组织更有效地引导其资源并规划其安全性,在以下案例中,我会说明为什么研究人员不主张 “一刀切”的预防方法,这也是纵深防御策略之所以流行的原因。


现在就让我们看一下构成纵深防御策略解决方案的一些不同部分。


边界防御

无论是物理安全还是网络安全,这都是最重要的原则之一。在现实世界中,这通常是通过门、栅栏和墙,甚至警卫来实现的,所有这些设计都是为了把不应该在这里的人挡在外面。在网络安全的世界里,边界防御原则也是这个道理,这通常是通过防火墙来实现的。


防火墙技术的功能主要在于及时发现并处理计算机网络运行时可能存在的安全风险、数据传输等问题,其中处理措施包括隔离与保护,同时可对计算机网络安全当中的各项操作实施记录与检测,以确保计算机网络运行的安全性,保障用户资料与信息的完整性,为用户提供更好、更安全的计算机网络使用体验。


防火墙代主要是借助硬件和软件的作用于内部和外部网络的环境间产生一种保护的屏障,从而实现对计算机不安全网络因素的阻断。


只有在防火墙同意情况下,用户才能够进入计算机内,如果不同意就会被阻挡于外,防火墙技术的警报功能十分强大,在外部的用户要进入到计算机内时,防火墙就会迅速的发出相应的警报,并提醒用户的行为,并进行自我的判断来决定是否允许外部的用户进入到内部。


不幸的是,防火墙往往不牢固,很容易犯错误,暴露你的整个网络。


另一种用于边界防御的常见解决方案是入侵检测系统或 IDS,通常在已经受到防火墙保护的网络中使用。IDS 不是阻止攻击,而是监控你的 IT 系统并标识任何看起来不正确的东西。


从本质上讲,它是一个早期预警系统,一旦发现可疑的东西,就会在造成任何损害之前就采取行动。这可以通过观察整个网络来实现,也可以通过关注单个计算机来实现或者两者兼而有之。


乍一看,使用上述(防火墙和 IDS)之一或两者都使用似乎是保证网络安全所需的惟一解决方案,但遗憾的是,实际情况并非如此。正如上面所提到的,错误地设置防火墙,调用错误的安全方法都可以让这些防护措施成为摆设。

监控

该方法就是依靠记录日志,IT 网络中发生的任何操作都可以生成日志。因此记录的所有内容都可以生成大量数据,而这些数据则需要存储在某个位置,对于想要通览所有数据以找到特定内容的人来说,工作量似乎有些吓人。虽说如此,记录日志还是非常有必要的。


不过,你不需要把所有发生的事情都记录下来,但还多多益善,原因如下:


1.尽可能增加对攻击事件识别;


2.对攻击事件做出快速反应;


然而,如果你不对日志记录执行任何操作,那么保留日志数据就没有意义了。这就像在开会时让同事帮你做笔记一样,如果你不读笔记,你仍然不知道发生了什么。只要日志受到监控,它就非常有用,因为它可以告诉你很多关于网络上正在发生的事情。


它们可以帮助你识别任何可疑行为、任何不能正常工作的行为,甚至是网络的哪些部分需要更严格的安全控制。当有人成功地攻击了你的网络,日志可以帮助你了解攻击的过程、原理,以及如何防止它再次发生。

强化系统

强化系统的过程,本质上是一种“强身健体”的本质措施,以确保攻击者无可乘之机,这就像好的身体素质不会经常得病一样。


在保护网络方面,这意味着系统要确保不必要的程序不会运行, 确保系统已经安装最新的安全更新,  并确保系统访问仅限于那些需要它的人。你可以把网络空间想象成一个有很多建筑的校园,如果你不在里面,就锁上门。


如果其中一栋大楼存放着了你所有的公司机密,确保门窗安全,且只有你信任的人才能进出。确保警报已设防,并且人们准备好在响应时做出响应。而纵深防御这是一个很好的策略,它会为系统增加很多保护层,以减少任何可能的风险。前面已经说过, 每个 IT 系统都是不同的, 所以加强你的系统的方法将会有所不同。

纵深防御的政策和程序

网络和物理安全策略之间的界限相当模糊,因为它们都旨在对恶意行为做出反应或先发制人的管理。纵深防御的目标是确保每层都知道如何在可疑的攻击事件中采取行动,限制恶意或意外破坏的机会,并最大限度地提高快速识别任何安全漏洞的机会。比如:


1.让员工先进行筛选;


2.最低权限的设定,仅允许对某人执行其指定角色所需的系统和资源的最低级别访问权限。例如,门卫没有理由访问闭路电视系统,或者保安人员有一个允许他们重新配置网络的计算机帐户。


3.职责分离,这样做是为了确保不将敏感流程或特权分配给单个人,这样做有助于通过实现检查和平衡来防止欺诈和错误。一个很好的例子是在医院,在给药之前,需要由另一个人检查数量和类型,以防止出现用药错误。


4.实施权限撤销政策,例如立即撤销任何 IT 或物理访问权限,以快速对危机做出反应。

安全意识

员工的安全培训和意识也应考虑进来,甚至可以说这与纵深防御的使用处于同一等量级上。例如,强迫员工每隔几周更换一次密码,并让他们为需要使用的每个系统使用不同的密码,如果人们不明白其中的原因,只是图使用方便,那么很可能会导致快捷方式的出现,进而出现攻击漏洞。


同样,经过培训后,员工也会意识到一个组织面临的威胁,可以促使他们参与进来,及时报告安全事件,以便迅速做出反应。然而,正如前文描述的那样,仅仅意识到这一点是不够的。例如,如果没有防火墙阻止攻击者从 Internet 访问网络,那么无论你的员工多么小心地使用安全密码也是无用的。

物理安全

尽管本文的重点是讲述保护 IT 系统的不同层,但是如果没有提到物理安全措施,则纵深防御的策略就不是很完整了。如果有人偷走了你正在运行的笔记本电脑,那么任何监控日志和在你的电脑上使用的杀毒软件都将不会起到作用。


任何公司所需的物理安全措施都将根据所运行的环境来进行有针对性的安全配置,例如规模、位置、业务性质等等。但是,在防止 IT 设备的地方,应该至少考虑一些以下的因素:


1.确保门窗安全,防止意外盗窃;


2.不使用时,把敏感设备或手提设备锁好并保存好;


虽然,这些措施绝不能防止可能出现的盗窃,建议企业应该认真考虑实施更强大的物理安全机制。灾难发生后的数据恢复或备份灾难恢复就像它听起来的那样,确保你的组织有适当的机制在最坏的情况下进行恢复。


就 IT 系统而言,这则意味着有一个安全的备份,并确保在适当的时间范围内进行维护。没有人希望最坏的情况发生,但做好从最坏的情况中恢复的准备,可能会决定一家企业的生存和倒闭。

总结

纵深防御策略就像是一种保险,只有灾难发生后才能知道它的价值。这篇文章已经说明了,尽管有多种方法可以保护网络,并且每种方法都有其优点,但任何一种解决方案都会留下可能防护空白。由于攻击者有各种各样的攻击目标,因此,需要不同的防御层才能有效防御。(本文转自嘶吼)


相关文章:


https://www.4hou.com/web/19756.html


https://www.contextis.com/en/blog/understanding-defence-in-depth


2019-09-04 12:517546

评论 2 条评论

发布
用户头像
谢谢🙏!
2019-09-04 14:10
回复
用户头像
😂哈哈哈哈有意思嘛!
2019-09-04 14:10
回复
没有更多了
发现更多内容

从源码角度深入解析Callable接口

华为云开发者联盟

后端 开发 华为云 华为云开发者联盟 企业号 4 月 PK 榜

华为云新一代iPaaS全域融合集成平台全新升级

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 4 月 PK 榜

火山引擎云原生数据仓库ByteHouse技术白皮书V1.0 (Ⅲ)

字节跳动数据平台

数据仓库 云原生 白皮书 数据仓库服务 企业号 4 月 PK 榜

阅读完synchronized和ReentrantLock的源码后,竟发现其完全相似

Java你猿哥

并发编程 并发 synchronized SSM框架 ReentrantLock

火山引擎 DataLeap下Notebook系列文章一:技术选型之路

字节跳动数据平台

notebook 数据研发 企业号 4 月 PK 榜

Gradio:快速构建你的webApp

AIWeker

Python 三周年连更 Gradio

Kurator v0.3.0版本发布!助力企业实现多云异构管理

华为云开发者联盟

开源 后端 华为云 华为云开发者联盟 企业号 4 月 PK 榜

女朋友要我讲解@Controller注解的原理,真是难为我了

Java你猿哥

Java spring Spring 配置解析

【堡垒机小知识】堡垒机能记录操作时间、操作数据等等吗?

行云管家

网络安全 堡垒机

行云管家堡垒机有免费的吗?谁能告诉一下!

行云管家

高新企业 堡垒机 行云管家

如何用scrum敏捷工具做迭代规划及迭代执行。

顿顿顿

Scrum Sprint 敏捷开发管理工具 敏捷工具 迭代规划

安装Zookeeper和Kafka集群

Java你猿哥

Java kafka zookeeper SSM框架 Java工程师

Scrum敏捷研发和项目管理

顿顿顿

Scrum 敏捷开发 敏捷开发流程 leangoo 敏捷开发管理工具

Java中线程的6种状态详解(NEW、RUNNABLE、BLOCKED、WAITING、TIMED_WAITING、TERMINATED)

共饮一杯无

Java 线程 线程状态 三周年连更

BT!GitHub开源阿里Java性能调优百宝书仅3小时,标星竟超过30k

Java你猿哥

Java JVM 性能调优 SSM框架 Java工程师

带你一同认识和使用JPA框架进行开发你的应用服务

Java你猿哥

Java SSM框架 jpa Java工程师

火山引擎DataTester:让企业“无代码”也能用起来的A/B实验平台

字节跳动数据平台

AB testing实战 无代码 A/B 测试 企业号 4 月 PK 榜 企业增长

集简云开放平台是什么?

集简云开放平台

阅读完synchronized和ReentrantLock的源码后,我竟发现其完全相似

Java 源码 synchronized ReentrantLock

全量通过,华为云GaussDB首批完成信通院全密态数据库评测

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 4 月 PK 榜

挑战 30 天学完 Python:Day9 条件语句

MegaQi

Python 挑战30天学完Python 三周年连更

硬核!万字神文精解高并发高可用系统实战,分布式系统一致性文档

Java 高可用 高并发 分布式一致性

阿里大神整理的Java核心知识点和面试官常问到的知识点,压压惊

会踢球的程序源

Java 面试 求职 java面试 Java构架

字节面试官:你没有高并发、性能调优经验,为什么录取你?

Java 高并发 性能调优

从零学习SDK(7)如何打包SDK

MobTech袤博科技

前端沙箱利用这些特性实现代码的隔离与限制

没有用户名丶

热榜!Alibaba最新发布「10亿级并发系统设计文档」Git狂揽9000星

Java你猿哥

数据库 架构 分布式 架构设计 并发系统

GitHub上线重量级分布式架构原理设计笔记,开源的东西看着就是爽

Java你猿哥

架构 分布式 分布式架构

Linux:管道命令与文本处理三剑客(grep、sed、awk)

会踢球的程序源

Java Linux

GitHub和 Gitee联合编写最新版20w字Java全栈面试手册,简直无敌!

Java你猿哥

Java java面试 SSM框架 Java面经

ChatGPT无需API开发连接第三方系统,让舆情自动监控

集简云开放平台

数据集成 数据集成平台 Chat

如何网络安全中的“纵深防御(DiD)”策略?_文化 & 方法_xiaohui_InfoQ精选文章