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

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


当前回答

在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.

http://www.metasploit.com/users/hdm/tools/debian-openssl/

2007年,一家相当大的机构的国防部网站出现了错误配置,导致IIS web服务器提供原始代码,主页中有硬编码的用户名/密码和数据库服务器信息。幸运的是,它很快就被抓住了,但我确实目睹了它,这非常令人震惊。不用说,他们的网站被网络工程师关闭了,直到开发人员修复了糟糕的代码。

将用户名列表以明文形式发送给浏览器以供JavaScript自动补全,还可以通过使用唯一的用户id调整URL查询字符串来查看用户数据,这可以从自动补全功能中收集到。

我在The Daily WTF上看到过这个。

<script language="javascript">
<!--//
/*This Script allows people to enter by using a form that asks for a
UserID and Password*/
function pasuser(form) {
    if (form.id.value=="buyers") { 
        if (form.pass.value=="gov1996") {              
            location="http://officers.federalsuppliers.com/agents.html" 
        } else {
            alert("Invalid Password")
        }
    } else {  
        alert("Invalid UserID")
    }
}
//-->
</script>

恕我直言,没有什么比这更好的了。