索尼最近遭到SQL注入攻击,其用户的密码以纯文本格式存储。这些是菜鸟的错误。在这么大的公司中,这如何通过质量检查?他们怎么没有更好的团队呢?
被黑客入侵的公司的绝对规模使情况有所不同。它影响到我们所有人,因为我们都有一天可能会发现自己在一支负责此类事情的团队中,然后我们得到了斧头。那么,导致这种情况的因素是什么,我们如何防止它们呢?
索尼最近遭到SQL注入攻击,其用户的密码以纯文本格式存储。这些是菜鸟的错误。在这么大的公司中,这如何通过质量检查?他们怎么没有更好的团队呢?
被黑客入侵的公司的绝对规模使情况有所不同。它影响到我们所有人,因为我们都有一天可能会发现自己在一支负责此类事情的团队中,然后我们得到了斧头。那么,导致这种情况的因素是什么,我们如何防止它们呢?
Answers:
因为没有要求程序员进行测试,而严峻的企业文化也没有给他们足够的回旋余地,以使他们的职业道德意识发扬光大,并要求再过几周来测试安全漏洞。还是要坚持从一开始就是安全的。
因为老板不想出于任何原因花额外的几个星期测试安全性问题。在年底有额外的奖金。从下一个部门出现约翰逊。吹牛的权利。对公司的责任。懒惰。不信任下属的建议。
因为大老板要求更多的利润,并提拔约翰逊胜过鲍勃,因为他的数字看起来更好,而不是要求更好的产品。因为质量和安全性是很难在电子表格上显示的值。因为公司的存在是为了赚钱。
这样的事情是系统的问题。归结为“因为他们是傻瓜”。
编辑 程序员可以在注意到不足的情况下,将问题提交给老板,从而避免成为牺牲者。他会做正确的事情并制定修复计划,或者告诉您忽略它。如果他没有解决此问题,请使其正式化,并通过电子邮件询问。在这种情况下,请使用与该问题相关的关键字,例如“漏洞”,“注入”,“违反安全性”。电子邮件搜索将得到的东西。
这正在推卸责任。现在是您老板的责任。如果这很重要,就像人们在事情失败时会死掉一样,那就抬起头,向老板提出问题。您可以仅因推卸责任而被解雇,即使您确实将其遗忘也可以被解雇,但这是正确的做法。不像实际解决问题那样正确,但是很接近。
公司越大,决策者就越远离现实生活中的责任。
了解了公司的工作方式后,网站设计可能会外包给根据每位开发人员最低价格选择的咨询公司。该公司反过来会按照类似的标准雇用一群随机的人,让普通人在项目中停留不超过3个月,然后轮换到其他人。
谁会犯错误?通过懒惰,缺乏知识,缺乏专业知识,权宜之计,缺乏流程等,我们如何预防错误?通过勤奋,经验,保护措施等。这种情况与每个程序员所犯的数千个小错误完全不同。只是规模不同而已。
我们可以从中学到什么?不多。
一种可能的解释是偏斜的优先级列表。与我合作过的许多公司都更加重视将产品推向市场,而不是他们生产的产品/代码的质量。由于程序员不仅急于完成工作,而且QA部门(如果他们甚至有一个)也急于完成,因此这种效果加倍。我还注意到,这种态度与在完成前一个产品之前推出下一个产品不谋而合,使问题更加复杂。
这些公司中的每一个的共同点是非技术管理。项目经理,IT经理和产品经理,基本上每个在开发团队的工作上都有发言权的人都是非技术人员,也不了解产生高质量,安全的代码的重要性。这是我现在采访公司时要寻找的东西。谁来主持庇护,囚犯或医生?
如果类似的事情,加上深厚的官僚作风,成为索尼和其他公司安全问题的成因,我也不会感到惊讶。