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

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


当前回答

if( $session['role'] = "admin" ) //grant admin rights

只要少一个字符(“=”而不是“==”),就可以向登录的任何人授予管理权限。你是有罪的。

其他回答

一位同学曾经不小心把密码发到了推特上……那是个很严重的安全漏洞。

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

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

例如:

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

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

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

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

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

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

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

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

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

我的目标是我曾经的客户。我无法登录,所以我打了客服电话。他们只问了我的用户名,没有问任何安全问题,也没有试图验证我的身份。然后,他们没有将密码重置发送到他们存档的电子邮件地址,而是问我该发送到哪个电子邮件地址。我给了他们一个不同于我文件上的地址,并重新设置了密码。

所以本质上,黑客只需要我的用户名,他就可以访问我的账户。这是一家至少90%的美国人都听说过的大银行。这件事发生在大约两年前。我不知道这是一个缺乏训练的客户服务代表还是这是标准程序。

我在The Daily WTF上看到过这个。

<script language="javascript">
<!--//
/*This Script allows people to enter by using a form that asks for a
UserID and Password*/
function pasuser(form) {
    if (form.id.value=="buyers") { 
        if (form.pass.value=="gov1996") {              
            location="http://officers.federalsuppliers.com/agents.html" 
        } else {
            alert("Invalid Password")
        }
    } else {  
        alert("Invalid UserID")
    }
}
//-->
</script>

恕我直言,没有什么比这更好的了。