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

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


当前回答

我继承了一个客户项目来照看:一个ASP。网项目 (构建于1.1),其中50%是编译DLL(没有编译DLL) 源代码)和50%的JIT编译后代码。

整个网站应该只对会员开放——除了 原来的开发人员已经建立了一个后门:只需提交 用空白的用户名和密码登录表单,你就会 找到自己作为一个秘密的超级管理员登录:做 什么都看,什么都看。

您猜对了:所有的身份验证代码都被隐藏了 在预编译的DLL中。最糟糕的是当我 被告知“它不在bug列表中,那么客户端呢? 不会付钱,所以离开它”。我照做了,现在还在直播 今天。

其他回答

在签名代码中:

System.setSecurityManager(null);

(你可以通过谷歌代码搜索。)从进程中运行的所有代码中删除所有Java安全限制。可能没有想清楚。

在这里根据记忆来解释,但它很接近……

<form action="secretpage.html" id="authentication"          
      onsubmit="return document.forms.authentication.password.value == 's3cr3t'">
    Enter password: <input type="password" name="password"><br>
    <input type="submit" name="Login" >
</form>

我认识的一个家伙用这个来保护他网站的“私人区域”。起初,他不愿意相信我,甚至他的浏览器都有这个不可靠的“查看源代码”功能。

在因特网上发布你的ELMAH错误日志怎么样?

整个经典ASP购物车“Comersus”。整个事情是意大利面条代码的混乱,所有的SQL语句都是成熟的SQL注入,因为没有做任何过滤。可悲的是,我不幸地处理了近两年的“申请”,这绝对是一场噩梦!

我曾经在一个名为ROL的本地互联网门户网站上发现了一个漏洞。RO(罗马尼亚在线-当时由PCNET拥有)。他们有一个免费的网络邮件系统。我想要一个特定的用户名(很容易猜到是哪个),但它已经被占用了。

出于好奇,我进入了“忘记密码”页面,输入了我想要的(但已被占用的)用户名。然后,在提交时,我看到了一个空白的安全问题。

哇……让我们看看他们是不是很差劲。我确保答案文本框为空,然后提交

“恭喜你,输入你的新密码”。

我输入了密码,劫持了账户。


可能发生在他们的…PHP脚本是他们比较从数据库(在答案-当然他们保持在明文)的空字符串提交我。让它们“相等”引导我进入下一步,重置密码。

是的,站不住脚的。