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

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


当前回答

输入所需用户名:iboyd

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

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

其他回答

我曾经接手了一个系统的开发,这个系统在全国有200个客户在使用,它有硬编码的密码。是的,代码实际上写着:

if password = "a"

去年,我离开了一家汽车ERP公司,该公司数百个客户的服务器上都有相同的管理密码。我猜我走后他们没有全部换掉。

我的任务是发现一个用于报告的ODBC DSN,其中密码与用户匹配,并且用户属于数据库服务器管理组。

因此,任何具有此ODBC DSN的PC都可以使用任何ODBC兼容工具通过报表用户读取/更改所有数据(甚至更糟)。不需要授权,而且身份验证非常弱。

我在一家公立医院工作,这个软件几乎安装在该州每家政府医院的每一台电脑上,数据库服务器包含各种敏感的医疗数据(完整的患者详细信息、实验室测试结果等)。

最糟糕的是,我们悄无声息地报告了安全漏洞,然后正式报告,但在我继续在那里工作的2年里,它仍然没有修复,那已经是5年前的事了。

我们有一个客户要求根据特定的HTTP引用器自动登录。所以你和我必须登录,但如果你点击了一个特定网站的链接,你就会自动以默认用户登录。

一家销售电脑的公司用FrontPage建立了一个网站,每个人都可以完全访问。

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);
        ......
    }
}

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