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

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


当前回答

我曾经有幸尝试保护一个网站(ASP Classic),该网站“需要”密码才能访问管理界面。当然,如果你只是去其中一个管理页面的地址,你可以做任何你想做的,登录与否。

他们想知道自己是怎么被黑的。

其他回答

几年前我移植的一款遗留应用使用了第三方回调系统来处理支付。问题是,回调脚本没有检查支付的金额是否等于订单的价格,因此可以使用Firebug编辑支付页面上“金额”字段的内容,以0.01英镑的价格购买网站上的任何产品。

我在浏览一个购物网站,当我输入我的电子邮件地址时,我注意到地址输入页面的URL只有“?nOrderID=301”。

下车。我把数字改成99,你猜怎么着?我得到了一位住在本德的女士的名字,地址和电话号码。

几周前我确实给网站管理员发过邮件,他听起来不太高兴,但这个问题仍然没有解决……

有一段时间,该公司的整个员工信息列表(从地址到社会安全号到工资的所有信息)都存储在密码保护的Access数据库中。

使用您最喜欢的搜索引擎,查找如何恢复访问数据库的密码。是的。

拖拽到这里,你就会得到密码。字典中五个字母组成的单词。

"Pedo mellon a minno", "与朋友交谈,然后进入",在摩瑞亚的大门上。

令人惊讶的是没有人提到社会工程,但我从这篇文章中得到了乐趣。

总结:恶意用户可以买几十个u盘,在里面装上自动运行的病毒或木马,然后在深夜把这些u盘撒在公司的停车场里。第二天,每个人都来上班,被闪闪发光的、糖果形状的、不可抗拒的硬件绊倒,并对自己说:“哦,哇,免费的闪存盘,我想知道里面有什么!”——20分钟后,整个公司的网络都被冲洗掉了。

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

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