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

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


当前回答

我被告知,我们总机部门的哔哔系统有一个可以用来发送消息的web前端,尽管它很丑,而且不太友好,所以我想看看我们是否可以在我们的内部网主站上使用一个表单,并通过我们的服务器将值提交给他们。

使用User和Admin角色访问系统有一个简单的用户名/密码表单,因此我查看了一下如何实现处理安全性。我发现存储了以下两个cookie:

Username: [username I had used]
Admin: False

为了确保它像我想象的那样糟糕,我打开Firefox,给它url,创建2个cookie,我的用户名和管理员:真,瞧,我有管理员权限。为了验证它,我创建了一个新用户,没有任何问题。更糟糕的是,在本地使用用户名意味着日志将显示我的操作来自任何我想要给它的人。

通过不公开来实现安全是行不通的,但当你把人们需要的一切都放在银盘上时,它就不那么管用了。

其他回答

其中一个最简单,但真正值得付出代价的是:

使用PayPal等引擎的支付系统可能存在缺陷,因为在支付成功后,PayPal的响应没有得到应有的检查。

例如:

我可以进入一些CD购买网站,向购物车中添加一些内容,然后在结帐阶段,页面上通常会出现一个表单,其中包含paypal的字段,以及“支付”的提交按钮。

使用DOM编辑器,我可以进入“live”表单,将值从£899.00更改为£0.01,然后单击提交…

当我在PayPal的时候,我可以看到金额是1美分,所以我支付了,PayPal将一些参数重定向到初始购买网站,该网站只验证诸如payment_status=1等参数,而不验证支付的金额。

如果没有足够的日志记录,或者产品是自动分派的,那么成本就会很高。

最糟糕的一类网站是提供应用程序、软件、音乐等的网站。

我所见过的最糟糕的安全漏洞实际上是由你们公司编写的,导致谷歌机器人删除了我的整个数据库。

当我第一次学习经典ASP时,我编写了自己的基本博客应用程序。包含所有管理脚本的目录在IIS上受到NTLM的保护。有一天,我移动到一个新的服务器,忘记重新保护IIS中的目录(哎呀)。

博客主页有一个指向主管理界面的链接,主管理界面为每条记录都有一个DELETE link(没有确认)。

有一天,我发现数据库中的每一条记录都被删除了(数百条个人记录)。我以为是某个读者闯入了网站,恶意删除了所有的记录。

我从日志中发现:谷歌机器人爬了站点,跟踪管理链接,然后继续跟踪所有的DELETE链接,从而删除数据库中的每一条记录。我觉得我当之无愧的年度傻瓜奖被谷歌机器人无意中损害了。

谢天谢地,我有备份。

Right at the start of the .com era, I was working for a large retailer overseas. We watched with great interest as our competitors launched an online store months before us. Of course, we went to try it out... and quickly realized that our shopping carts were getting mixed up. After playing with the query string a bit, we realized we could hijack each other's sessions. With good timing, you could change the delivery address but leave the payment method alone... all that after having filled the cart with your favorite items.

我有Joe X以前的家庭地址,需要知道他在同一城市的新地址,但没有办法联系到他。我估计他每天都会收到一堆邮购目录,所以我随意拨打了See’s Candies的800电话(与维多利亚的秘密、瑞士殖民地或任何其他大型邮寄公司不同):

我:“嗨,我是Joe x。我想我已经在你的邮件列表中出现过两次了,我的旧地址和新地址都有。你的电脑显示我的地址是[旧地址]还是[假地址]?”

接线员:“不,我们给你看[新地址]。”

我曾经打电话给一个BBS,它在首页上有一个“Drop To DOS”选项。菜单上没有列出来,但我打错了,无意中找到了。

然后我可以远程访问这家伙的DOS命令行。