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

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


当前回答

输入所需用户名:iboyd

输入密码:*********

该密码已被该用户名使用。请选择不同的密码。

其他回答

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

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

例如:

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

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

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

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

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

我曾经做过一份工作,其中有一个用Java代码编写的安全层,用于检查用户是否有权编辑DB表列。这是函数的样子:

public boolean canEdit(User user, DBColumn column) {
    if(true) {
        return true;
    } else {
        return false;
    }
}

XSS是我喜欢在网站上找到的东西。

下面是我的发现日志的链接:

所有:http://xssed.com/archive/author=Dr.Optix

只有特色菜:http://xssed.com/archive/special=1/author=Dr.Optix/

祝你浏览愉快!

不是最坏的,但也足以造成一些真正的损害。你会惊讶于这一点被忽视的频率有多高。特别是当人们使用这些流行的框架时,

yourwebapp.com/items/edit.php?id=4
yourwebapp.com/items/delete.php?id=4

不确定项的所有者是请求页面的人。 也就是说,你可以登录你的账户,然后在整个应用程序中编辑或删除任何人的项目。

一个简单的检查可以防止很多损坏。

$item = // find your item by the $_GET[ 'id' ];

if( $_SESSION[ 'user_id' ] != $item[ 'user_id' ] ){
  // kick em out they dont belong...
}

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

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

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