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

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


当前回答

访问一个非常有名的在线商店的联系页面,向下滚动,搜索一个电话号码。相反,我发现了一个上传表单,它接受所有的文件类型,实际上把上传的文件放在网站的根文件夹中,这意味着如果一个人上传了一个名为test.php的文件,它将被url mydomain.com/test.php调用:)

由于他们使用osCommerce(开源),因此编写一个脚本来获取所有数据库连接细节,然后下载他们完整的客户数据表,对于任何有足够智商的人来说,这将是不到五分钟的工作。

我联系了他们,最后得到了我下次购买的折扣券,他们在几分钟内删除了上传表单。

其他回答

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

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

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

一个在线文档管理器怎么样,它允许设置你能记住的所有安全权限……

直到你进入下载页面……download.aspx吗?documentId = 12345

是的,documentId是数据库ID(自动递增),您可以循环每个数字,任何人都可以获得所有公司文档。

当这个问题被提醒时,项目经理的回答是:好的,谢谢。但之前没有人注意到这一点,所以就让它保持现状吧。

当关键IT员工离开公司时,不更改管理密码。

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

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

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