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

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


当前回答

在文本框中输入1=1将列出系统中的所有用户。

其他回答

一些验证码是这样的:

public bool charsEquals(char[] input, char[] txt)
{
    for (int i = 0; i < Math.min(input.length; txt.length); ++i)
    {
        if (input[i] != txt[i]) return false;
    }
    return true;
}

像这样使用它:

if (charsEquals(inputPassword, requestedPassword))

看了YouTube上关于Tux和比尔·盖茨之战的搞笑视频后,我开始思考这个问题。当Tux没有密码进入微软大楼时。

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

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

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

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

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

谢天谢地,我有备份。

Select * from user where user_id = '*userId*' and access_level = 0 or access_level = 1;

如果查询返回任何行,则它们被允许进入系统。围绕着“access_level = 0或access_level = 1”的括号将实现他们的意图。相反,只要有access_level为1的用户,任何人都可以进入。

有一次我在一家公司工作,我不得不和别人分享 通过加密的信息。他们给我提供了一个GPG 密钥对-它们的公钥和私钥而不是 只是共享公钥和高度 保密。

我不得不向他们解释这个过程是错误的 意识到他们这样做已经很长时间了。

太可怕了,我告诉我所有的朋友取消账户!


我在一家很受欢迎的赌场网站工作。flash前端不仅仅是一个不起眼的终端。他们有一个视觉错误,不正确地管理头像图像。在我和我的朋友解决这个问题的时候,我们发现了一个完全不同的缺陷。

我们观察了从客户端到服务器的流量,发现它是base64编码的。 考虑到它会有所帮助,构建了一个简单的python终端脚本,可以利用它。我们发现客户端会向服务器发送命令和逻辑信息。

几分钟之内,我就能简单地输入我有多少筹码,谁赢了,我有什么手牌,简单地用纯文本写出来!


另一个主要缺陷-用户密码被加密,管理员密码没有使用与以前相同的漏洞,我获得了数据库信息,找到管理员登录并接管了系统。