在了解安全之前,我就已经知道的五件事
我是一家名为Snyk 的公司的开发者布道师,该公司专门帮助开发者查找并修复其开源依赖项中的安全漏洞。我的工作是与开发者社区分享资源和见解,更重要的是,倾听开发者的心声,了解他们的需求。在此之前,我是一名 Web 开发人员,曾多次阅读过OWASP Top Ten。毫不夸张地说,这对我来说是一个巨大的转变。
说实话,我有时觉得自己像个职业新手。我刚入行不久,而我的很多同事对安全领域的理解都非常深刻。但对公司来说,拥有一个安全新手的视角是宝贵的,因为他们的客户群体中很大一部分人也都是新手。这也没关系,我每周都在学习新东西。
但我有个秘密,我觉得应该跟大家分享一下。
你对安全的了解比你想象的要多。
真的。
听听一个比六个月前懂得多的人的建议吧。也听听一个仍然有很多东西要学的人的建议吧。即使一行代码都没写过,人类也天生具有安全意识。日常生活中的很多事情都会潜移默化地影响你对安全的理解。
所以,我在这里向大家介绍我在了解安全之前就已经知道的五件关于安全的事情:
第一点:细粒度权限控制很重要
我们在社交生活中都会这样做。我会跟我的丈夫、最好的朋友或妈妈说一些我不会跟我的同事、熟人或陌生人说的话。
我读研究生的时候,我和室友们都可以自由出入公寓的公共区域,但我自己的房间有单独的锁,他们的房间也有。
参加会议时,我的参会证可以让我进入公共区域,但不一定能进入后台或单独售票的教程环节。组织者的参会证才能让他们进入这些区域。
细粒度的权限设置是我们日常生活的一部分,通常由社会规范、刻意划定的关系界限或某种物理安全措施(例如锁好的公寓房间)决定。这些权限可能是事先明确规定的,但你也可能只是默认接受了默认设置。你或许没有意识到自己在个人生活中授予了细粒度的权限,但你确实在这样做。
想想生活中这些细致入微的权限设置。为了拥有更幸福、更健康的人际关系,要有意识地运用它们。同样,在你开发的应用中,也要有意识地设置权限。问问自己默认设置是否合理,记住,授予新权限总是比撤销权限容易得多。
第二点:你不需要跑得比熊快。
有个老笑话讲的是两个徒步旅行者在路上遇到一头熊。他们开始逃跑。其中一个对另一个说:“我们为什么要跑?我们跑不过熊!” 另一个回答说:“我不需要跑不过熊,我只需要跑过你。”
这话很有道理。不法分子往往会选择最容易下手的目标、伺机作案或阻力最小的途径。要想领先于同行,就必须先发制人。
第三点:汽车警报器没用
你调查过汽车警报吗?我只调查过一次。我的邻居出城了,他的汽车警报响了——而且响了整整36个小时。这引起了我的注意,但如果他的车真的被偷了,我还是来不及了。
人们不会因为汽车警报而采取行动,因为它们的误报率高得离谱。每发生一起因真正犯罪而触发的汽车警报,就有数百起看似由风、落叶或狗的注视而触发的警报。
如果你收到 50 个安全漏洞的警告(但这些漏洞最终都不是真正的漏洞),你有多大可能关注下一个警报?
第四点:双因素认证更安全
在我成为“钥匙儿童”之前,我曾参加过课后托管班。我妈妈从事儿童虐待案件的检察工作,她非常重视我和哥哥的安全。如果妈妈有特殊情况无法接我们,学校会按照既定流程安排。
首先,她会打电话给项目方,告诉他们谁会来接我们(第一个因素)。其次,当朋友或亲戚来接我们时,他们必须告诉我们“暗号”——一个事先约定好的秘密短语,我知道妈妈只会告诉她信任的、会照顾我们的人(第二个因素)。
听到这个词,我就知道妈妈真的派朋友或亲戚来了。
这种现实生活中的双因素身份验证 (2FA) 增加了一层安全保障,降低了我跟陌生人,甚至是跟未经授权的非陌生人离开的可能性。
如果你使用的服务提供双因素认证,一定要启用。虽然双因素认证仍然存在被破解的可能性,但难度要大得多。记住,你是在和同伴周旋,而不是和熊搏斗。
第五点:寻求帮助是好事
寻求帮助是好事。找个锁匠。装个家庭防盗警报器。利用你手头现有的工具。随身携带防狼喷雾。
在软件领域,情况也是如此。有很多组织可以帮助你尽可能地保障安全。例如,Snyk可以帮助你处理开源依赖项(我们提供免费套餐!),其他组织则开发代码扫描器或进行渗透测试等等。充分利用现有资源。你无需孤军奋战。事实上,使用现有工具更为理想,因为你可以从他们已经积累的学习和开发经验中获益。
我写这篇文章是为了帮助那些刚接触安全领域,甚至刚接触软件开发任何方面的人。你可能感觉自己像是从零开始,但事实并非如此。技术并非高不可攀,并非只有少数人才能掌握,其精通过程也与其他技能截然不同。你目前的知识和经验是一个很好的起点,你完全可以学习和进步。加油!
Lauren Danford的“Alarm.com”作品采用CC BY-NC-ND 4.0许可协议进行许可。