这不是一个关于我如何找到开源的故事,而是关于开源如何选择我的故事。
那时我对开源的了解仅限于 Linux 和所有 GNU 的东西。 许多安全工具都是免费发布的,但不是作为开源软件发布的。 实际上什么都不是。 它们是人们需要的工具,因此他们将它们发布在自己的网站上,并附带源代码供其他人使用——既作为一种贡献,也作为一种炫耀他们构建的酷东西的方式。 这是一种你挥舞的极客信誉的旗帜。
对我来说,开源最初是我必须跳过的法律障碍。 我刚刚离开了一份工作和一个国家。 在我开始下一篇章之前,我开始研究一种方法论。 由于是在另一个国家,我必须获得工作许可并处理繁文缛节。 在长队中等待让我有很多时间思考。 那时,我想开发一种最佳的安全测试方法,既彻底又正确。 我想让它基于科学事实,而不是某人编造的最佳实践。 然后我想用它来提高渗透测试的效率、准确性和质量,我把所有时间都花在了思考这个问题上。
在又一次从领事馆回来的火车上,一切都联系起来了。 我想通了。 我把它规划出来了。 它有道理。 它奏效了。
我把它发布到网上征求意见。 人们也确实提出了意见。 该方法论得到了改进。 那时我注意到科学界发生了一些变化。 一些重大的变化。
也许艾萨克·牛顿看得更远是因为他站在巨人的肩膀上。 但有了开源解决方案,我们不再需要巨人。 开源软件意味着我们可以像普通人一样看得一样远,比如我。 我们并不总是需要伟大的学者和科学家来做伟大的事情。 我们只需要许多真诚的人,他们渴望伟大的事物,并愿意帮助实现它。
你看,事实证明,在科学领域,事实并非来自伟大的发现飞跃,而是来自谨慎的验证步骤。 这使得它非常适合开源,因为我们不需要巨人来做出伟大的飞跃,我们只需要很多人来帮助我们一步一步地验证我们的方法论。
尽早弄清楚这一点使我进军开源软件的冒险之旅非常令人满意。 这意味着开源不是让社区帮助编写方法论的手段。 而是关于编写一种方法论并建立一个社区来帮助我使其成为我们所有人都需要使用的方法论。
所以开源选择了我。 它非常适合科学和发现,所以它就自然而然地发生了。 我不能为此邀功。 但这不是我决定从事开源工作的原因。
现在,当你在信息安全领域工作时,很难长期失业。 你必须积极地尝试保持失业状态。 因此,在我拿到工作许可的那一刻,我就开始工作了。 雇用我的大公司甚至协助加快了我的文件审批速度,以便我可以更快地开始工作。
工作几周后,出现了一个测试安全性的项目。 我们必须为团队创建一种进行测试的方法。 “太好了,”我想,“我正好有这个东西。” 但有一个问题,公司不知道我们是否可以使用互联网上随便找来的方法论。 我告诉他们是我写的。 他们说他们需要与律师谈谈,因为如果我把它带到工作中,我可能就将所有权给了他们。 这是我从未考虑过的事情。
你看,协作是生活的一部分。 许可不是,而且我对将其开源持怀疑态度。 正如我所说,当时人们对将其用于文档知之甚少。 有一个用于文档的 GPL 版本,但这更多是用于支持软件的技术文档。 它不适合方法论。 有一本以 GPL 发布的开源食谱,但它只是从社区收集了不同人的食谱,而不是构建工具。
我需要一些东西,让像我这样的公司可以使用它,但不能更改它或以任何方式降低工作质量。 作为一种方法,它需要标准化安全测试的方式,而这在数百个版本到处流传的情况下是不可能实现的。
所以我认为我只需要称它为开源,然后它就变成了开源,就像魔法一样。 我不知道我为什么会这么想,请原谅我的年轻和愚蠢,但我相信你们年轻时也做过很多蠢事。 所以我将其命名为开源安全测试方法手册,即 OSSTMM。 对于一项美丽的科学成果来说,这是一个非常难听的名字,我每天都后悔将其命名为这个名字,而不是更具市场价值的名字。 但我这样做只是为了尽快使其开源和免费,这样我和其他人就可以在工作中使用它。
但是,正如律师指出的那样,没有许可证。 甚至没有版权。
与此同时,OSSTMM 已经发展成一个由来自世界各地的人们组成的小社区。 在与他们讨论之后,有人建议我对它进行版权登记,并将版权留给一个非营利组织来推广它。 所以我们与 ISECOM 这样做了。
后来我们了解到,方法论不能被授予版权,因为它在法律上被认为是商业秘密。 我所做的只是对书面文字进行版权保护,但没有保护方法本身。 我们需要的是一个开放的商业秘密,但这并不存在。 所以我咨询了律师。
我花了一个周末创建了开放方法论许可 (OML),它最初大量借鉴了 GPL,唯一的目的是将某些东西标记为商业秘密,而所有者是每个人。 一个开放的商业秘密。 想想看。 这使我们能够保持方法论的开放和自由,同时限制文档的分支和重写,使其成为行业可以为监管要求维护的标准。
最终,我公司的律师接受了 OML,我的团队可以使用它,并通过验证每个小步骤来进一步改进它。
这就是我快乐、凯旋的开源故事。
本文是名为我的开源故事系列文章的一部分。 要参与并分享您的开源故事,请通过以下方式联系我们:open@opensource.com。
11 条评论