你见过的最糟糕的安全漏洞是什么?为了保护罪犯,限制细节可能是个好主意。

不管怎样,这里有一个关于如果你发现了安全漏洞该怎么办的问题,还有一个关于如果公司(似乎)没有回应该怎么办的问题。


当前回答

我曾见过法国一家高端国防承包商的高管使用Skype进行非常机密的会谈 (声明一下,Skype使用的是很久以前被破解的RC4加密算法)。

我想他们的无知可以被原谅,因为他们也使用Windows和MS-Word (为了记录,MS-Word保留了以前用这个模板编写的所有文档的历史)。

这引发了一些有趣的问题:纳税人的钱都花到哪里去了——这些钱是否被明智地使用了。

其他回答

我曾经听说过一个在银行工作的程序员,他们以小数点后16位的精度计算他们的内部数据(包括账户余额)。

所以这个家伙改变了银行转账程序,每笔交易将0.00001美元转到他自己的账户,剩下的转到原来的目的地。我认为他们很快就抓住了他,但我不得不承认,当我第一次听说他的想法时,我觉得它很好。

我不知道这是不是最糟糕的,因为我见过一些非常糟糕的,但是:

几年前,我工作的地方引进了一个叫做FOCUS的系统。不知道它还在不在。它非常适合做报告,我们开发并教了大约一千两个非It人员如何生成他们自己的报告。非常方便。他们可以做基本的报告,一些人可以做中等难度的工作,IT可以帮助处理较难的工作。

所有用于报告的数据都被定期复制到FOCUS自己格式的影子数据库中。对于更敏感的数据,我们设置安全选项,加密数据。一切都很好。

So, one day my boss calls me in, and we've lost the password to one of the sensitive databases. It's going to be hard to reproduce the data in this case, so he asks me to see if I can break the security. I had no experience as a hacker, so it took me about 5 or 6 hours to hand him the password. I started by creating some test files, and encrypting them with different passwords. I found that changing one character in the password would change two bytes in the encrypted file, specifically, the high nybble of one byte, and the low nybble of another byte. Hmmmm, says I. Sure enough, they stored the password somewhere in the first 80 bytes of the encrypted, but obfuscated the password by splitting the bytes into nybbles, and storing them in predictable places.

不久之后,我们就编写了一个REXX脚本,该脚本在VM/CMS系统下运行,可以告诉我们任何加密数据库的密码。

那是很久以前的事了——在90年代初,我相信他们已经解决了这个问题。嗯,非常确定。

我投票给Ken Thompson的UNIX“后门”。

这里有一个链接,有人可以从中了解更多信息: 汤普森木马编译器

我之所以认为这是最糟糕的,是因为在那个时候,法官们认为,在这种事情上取得进展的最好方法是公开讨论。

这一切只是教会了一群脚本小子一个新的非常强大的技巧。

对我来说,情况并没有那么糟糕,因为数据并不是那么敏感:

我得到了一个Excel文件,里面满是要更新的宏,每个表都是锁定的,宏部分有密码保护。我拿到了密码,但我想我还是试着破解一下吧。

我找到了一个程序,可以在大约十分钟内完成,其中大部分时间可能只是下载时间。这个神奇的产品是什么,能如此快速和轻松地突破Excel安全?OpenOffice.Org。

我不确定Office 2007是否在这一点上有所改进,但让我感到害怕的是,许多非技术人员可能正在使用Excel来操作敏感信息,并认为它是安全的。然而,这些类型的人可能甚至不知道它提供的“安全”功能。

我的第一份工作是在IT安全部门实习。我的任务是自动化对不同用户帐户的网络和应用程序访问,因为每个用户都转移到不同的部门/角色。也就是说,我可以使用一些基本的工具,比如查询分析器,以及一些数据库,但其他的就不多了。该公司通常会把所有东西都锁起来,所以总是有重置和授予的权限。

在这份工作中,所有的兼职人员都被要求使用一个小的VB胖客户端应用程序来跟踪工作时间,在一周结束时,一个按钮可以显示登录的用户一周工作了多少小时,以及他们这一周将获得多少报酬。

出于纯粹的无聊,有一天我偶然发现了小时间跟踪应用程序驻留在网络上的目录,并注意到在该目录中除了EXE之外只有一个其他文件,一个settings.ini文件。

果不其然,打开文件后,连接字符串在明亮的闪光纯文本;用户、密码、数据库名、服务器等等。

在这一点上,我认为这不是真正的信息,但在启动查询分析器,并进入ini设置后,我进入了主生产数据库,其中有任何人都需要给自己加薪的每一块数据。对引导的完全读写权限。

最后,我向老板展示了一份关于谁赚多少钱的问题,他平静地让我把它转发给人力资源总监。

让我告诉你,在我的生活中,我从来没有收到过这么快的,亲自回复任何其他邮件的邮件。

第二天我开始工作,时间跟踪应用程序有一个更新,唉,没有更多的settings.ini文件。