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

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


当前回答

在PHP中,这是在第一个包含文件:

extract($_GET);
extract($_POST);

它允许覆盖未被_GET或_POST调用的变量。

我的一个朋友曾经知道一个站点将SQL查询作为GET参数传递。你知道有些人会拿这个开玩笑。

其他回答

About 3 years ago I built a site for a somewhat large non-profit organization in our state. When it came time to deploy the application to their web host server, I noticed an odd file named "cc.txt" or something obvious like that in their public site. It was under their web root, was getting served, and was a csv file of all their donor's names, addresses, credit card numbers, expiration dates, and CVV/CVC codes. I cannot count the number of times I brought the issue up - first to my boss, then our company accountant, the client's IT director, finally the client's President. That was 3 years ago. The file is still being served, it can even be googled. And it's been updated. I tend not to respond to their donation solicitations when I get them.

我有Joe X以前的家庭地址,需要知道他在同一城市的新地址,但没有办法联系到他。我估计他每天都会收到一堆邮购目录,所以我随意拨打了See’s Candies的800电话(与维多利亚的秘密、瑞士殖民地或任何其他大型邮寄公司不同):

我:“嗨,我是Joe x。我想我已经在你的邮件列表中出现过两次了,我的旧地址和新地址都有。你的电脑显示我的地址是[旧地址]还是[假地址]?”

接线员:“不,我们给你看[新地址]。”

有许多网站使用代理文件来传送图像或其他文件。没有检查路径的有效性。

So.

getfile.php ?文件 =../../../../ 等/ passwd

or

Getfile.php ?file=../index.php(包含所有密码的纯文本)

令人惊讶的是,还有很多网站仍然存在这个缺陷。getfile.php只需要谷歌,你就可以轻松地打开盒子了。

按下Windows 98登录屏幕上的取消按钮,你就可以进入系统了。

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

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