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

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


当前回答

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

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

其他回答

我希望你能发现这里的问题。(事实上,大错特错):

String emailBody = "";

for (int i = 0; i < subscribers.Count; i++)
{
    emailBody += "Hello " + subscribers[i].FirstName + ",";
    emailBody += "this is a reminder with your account information: \n\n:";
    emailBody += "Your username: " + subscribers[i].Username + "\n";
    emailBody += "Your password: " + subscribers[i].Password + "\n";
    emailBody += "Have a great day!";

    emailDispatcher.Send(subscribers[i].EmailAddress, emailBody);
}

最后一个接受者是最幸福的;)

作为一个以应用程序安全顾问为生的人,有很多常见的问题让你通过一些东西来管理网站。但真正酷的是你可以买到价值一百万美元的袜子。

这是我的一个朋友的工作,但它的真实情况是,某个现在非常流行的在线图书(和其他所有东西)商店的商品价格被存储在HTML本身作为一个隐藏字段。在早期,这个漏洞困扰了许多在线商店,他们刚刚开始了解网络。几乎没有安全意识,谁会下载HTML,编辑隐藏字段,然后重新提交订单呢?

当然,我们把价格改为0,并订购了100万双袜子。你也可以改变价格为负,但这样做使他们的后端计费软件缓冲区溢出结束交易的一部分。

如果我可以选择另一个,那就是web应用程序中的路径规范化问题。能够执行foo.com?file=../../../ etc/passwd真是太棒了

这里可能有一点轶事故事(但因为这是我发现的最糟糕的安全漏洞)…

有一家公司向许多公司/组织(不幸的是包括我们)出售定制CMS(用于网站)。他们使用了相当多的(主要是“LGPL”)他们自己没有制作的组件。很多客户(包括政府)。

正确处理了访问网站不同部分(以及CMS管理系统)的身份验证。 他们在CMS中使用了FCKEditor实例(允许非html保存的用户编辑网页)。 他们还使用FCKEditor的“上传连接器”脚本,允许用户添加文档,图像等。到现场。这个脚本的url是硬编码在一个公开可见的javascript包含中。 他们无法对带有上传脚本的url进行身份验证。

结果:在他们建立的每个网站上,用户都可以(不需要输入任何凭据)修改/删除/更改/上传网站上的每一个文档/文件和/或图像。

我们一发现这个漏洞就立即报告了,所以它可能不会导致直接损害(但很容易)。

在我以前工作的店里有个不错的。通往非公共区域的门有小键盘,所以你必须输入pin码才能进入。然而,你只需按#,门就会打开,这是我们喜欢的事实,因为按#比按6位pin码容易得多。

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

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

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

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