到目前为止,我还没有谈到我最喜欢的话题之一——网络安全,而这正是我今天要谈的。我希望读完这篇短文后,您能更好地了解如何更好地控制风险,以及如何同时降低多种风险。
到处都有风险
这是不可避免的;仅今年一年,我们就已经发现并公开了超过 15000 个漏洞。我怎么知道的?因为我的工作之一就是检查 Gentoo 系统中使用的程序的 CVE 编号,看看我们是否运行了存在漏洞的软件。这样,我们就可以及时更新软件,确保发行版中的所有用户都能拥有安全的机器。
CVE
通用漏洞披露(CVE) 是分配给每个现有漏洞的唯一标识符。我很高兴地告诉大家,许多 Gentoo 开发者正在通过研究和发布他们的发现来造福人类,从而使漏洞能够得到修复和修补。我最近有幸读到的一个案例是Optionsbleed 漏洞,该漏洞影响了全球的 Apache 服务器。我为什么为此感到自豪?因为他们正在为世界做出贡献。将漏洞保密只会让少数人受益,而且根据其目的的不同,后果可能是灾难性的。
CNA
CNA 是负责请求和/或分配 CVE 的实体;例如,我们有 Microsoft CNA,负责对漏洞进行分组、解决漏洞,并为其分配CVE以便后续注册。
措施类型
首先,让我们澄清一下,没有一种设备是100%安全或将是XNUMX%安全的,这是一个很普遍的说法:
唯一100%安全的计算机是一台锁定在保险库中,与互联网断开连接并已关闭的计算机。
因为这是真的,风险永远存在,无论是已知的还是未知的,这只是时间问题,因此面对风险,我们可以执行以下操作:
减轻它
降低风险仅仅意味着减少风险(而非消除风险)。这一点至关重要,无论对企业还是个人而言都是如此。没有人希望遭受黑客攻击,但事实是,整个安全链中最薄弱的环节并非设备、软件,甚至也不是流程,而是人为因素。
我们都有指责他人的习惯,无论是人还是事,但在计算机安全中,责任始终是人的,可能不是直接由你承担,但如果你不走正确的道路,你就会被责怪。问题的一部分。稍后我会给你一个小技巧,让你保持安全一点
转移
这是一个众所周知的原则;你可以把它想象成银行。当你需要保护你的钱财(我是指实物安全)时,最安全的做法是把它交给比你更能妥善保管的人。你不需要自己的金库(虽然那样会更好)来确保安全;你只需要一个(你信任的)人来帮你更好地保管它们。
接受
但当前两种选择都不适用时,真正重要的问题就出现了:这个资源/数据/等等对我来说有多重要?如果答案是“非常重要”,那么你应该考虑前两种选择。但如果答案是“没那么重要”,或许你应该接受这个风险。
您必须面对现实,并非所有事情都是可缓解的,而某些可缓解的事情会消耗大量资源,以至于几乎不可能在无需更改和投入大量时间和金钱的情况下应用实际的解决方案。 但是,如果您可以分析要保护的内容,而在第一步或第二步中找不到它的位置,那么只需以最佳方式将其放在第三步中,不要给它带来更多的价值,并且不要将其与确实具有价值的东西混在一起。
保持最新
这是成百上千人和企业都忽略的真相。网络安全并非每年通过三次审计,然后就指望剩下的350天一切平安无事。很多系统管理员也深有体会。我最近终于拿到了LFCS认证(至于我是在哪里考的,就留给你们自己去发现吧😉),而这正是课程中的一个关键点。保持设备和软件的更新至关重要,是避免大多数风险的根本。我相信你们中的许多人会说:“但是我们用的程序在新版本里就用不了了”,或者类似的话。但事实是,如果你的程序不能在最新版本上运行,它就像一颗定时炸弹。这就引出了我们前面提到的问题:你能减轻风险吗?你能迁移风险吗?你能接受风险吗?
说实话,需要注意的是,统计数据显示,75%的网络安全攻击源自公司内部。这可能是因为公司内部存在不知情或恶意用户,也可能是因为公司的安全措施不足以阻止黑客入侵其办公场所或网络。此外,近90%的攻击源于过时的软件,而非零日漏洞。
像机器一样思考,而不像人一样思考
这是一个小建议,我从这里离开您:
像机器一样思考
对于那些不了解的人,现在我举一个例子。

让我来介绍一下约翰。在安全爱好者中,他是入门道德黑客技术的最佳人选之一。约翰和我们的朋友Crunch关系非常好。简单来说,他会拿到一个列表,然后不断尝试各种组合,直到找到能够破解他想要的密码的密钥。
Crunch是一个密码生成器。这意味着你可以告诉 Crunch 你想要一个 6 个字符长的密码,包含大小写字母,然后 Crunch 会逐个尝试……例如:
aaaaaa,aaaaab,aaaaac,aaaaad,....
你可能想知道遍历整个列表需要多长时间……其实只需要几分钟。如果你对此感到震惊,让我来解释一下。正如我们之前讨论的,整个流程中最薄弱的环节是人,以及人的思维方式。对于计算机来说,测试组合并不复杂;它极其重复,而且随着时间的推移,处理器变得如此强大,以至于它们只需要不到一秒钟的时间就能进行上千次尝试,甚至更多。
但现在到了精彩的部分,前面的例子是关于人类思维的,现在让我们来看看机器思维:
如果我们让 Crunch 生成一个只有8 位数字的密码,并保持之前的要求,那么生成时间就从几分钟变成了几小时。猜猜看,如果我们让它使用超过 10 位数字会发生什么?会变成几天。超过 12 位数字,我们就得花几个月的时间了,而且密码列表的规模也远远超过了普通计算机的存储容量。如果达到 20 位,那将是计算机(当然,指的是目前的处理器)几百年都无法破解的密码。这可以用数学来解释,但由于篇幅限制,这里我就不赘述了。不过,对于那些好奇的人来说,这与排列、组合数学和组合密切相关。更准确地说,这是因为每增加一个字母,密码长度就会增加近 50 种可能性,最终我们会得到类似这样的结果:
20^50 我们上一个密码的可能组合。 在计算器中输入该数字,以查看长度为20个符号的可能性。
我怎么会觉得像一台机器?
很多人会告诉我,想出一个由20个连续字母组成的密码并不容易,尤其是在密码仍然是关键词的旧观念影响下。但我们来看一个例子:
dXfwHd
对于人类而言,这很难记住,但是对于机器而言则极其容易。
caballoconpatasdehormiga
另一方面,这对于人类来说非常容易记住(甚至很有趣),但对于数据处理人员来说却是一场噩梦。现在肯定不止一个人会问:“但是经常更改密码难道不是明智之举吗?” 是的,这样做是明智的,所以我们现在可以一箭双雕了。假设我这个月在读《堂吉诃德》第一卷。我的密码大概会是这样的:
ElQuijoteDeLaMancha1
20 个符号,如果不认识我,很难发现这些符号,最好的事情是,当您读完这本书时(假设您不断阅读 ),您将知道更改密码,包括更改为:
ElQuijoteDeLaMancha2
这已经是一个进步 ,肯定会帮助您保证密码安全,同时提醒您完成书本。
我写的已经足够了,虽然我很想能够讨论更多安全主题,但我们会留到下次再讨论 问候