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

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


当前回答

当你丢失了密码和找回表格时,询问用户名和你的电子邮件。并且不验证电子邮件并将密码发送到指定的电子邮件。

刚)一/总动员:

这是在一个本地电视付费/订阅的网站上。很容易找到用户名,很多人使用名字。今天这个电视频道已经破产了(因为其他原因,比如缺乏专业精神)。

其他回答

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

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

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

在我以前的学校,他们把用户密码以明文形式存储在cookie中。

这本身就很可怕,但更糟糕的是,他们把它们储存在饼干里供*.大学。当然,现在所有学生和员工的页面都在university.edu.au/~user这样的网站上。

<?php

var_dump($_COOKIE); // oops.

我最后工作的公司的FTP用户名和密码与他们的域名相同。他们不太在意反复警告。

不用说,网站没过多久就倒闭了。没有在线备份,所以他们不得不重建整个系统。但这并没有结束。这次事件后的新安全密码是一样的…加上123。

public class AuthenticationServlet extends HttpServlet
{
    private String userName;
    private String password;

    protected doPost(HttpServletRequest req, HttpServletResponse resp)
           throws ServletException, IOException
    {
        userName = request.getParameter("userName");
        password = request.getParameter("password");
        authenticateUser(userName,password);
        ......
    }
}

显然,正如有人在自动化负载测试中发现的那样,单例和缺乏同步会导致安全问题。