ASP.NET表单身份验证漏洞

5
我正在阅读这个 Stack Overflow问题,当我被@Slauma的链接回复击中时(包含在这里),他回复了由@reach4thelasers撰写的所选答案。这是一篇关于如何破解ASP.NET表单身份验证并在大约半小时内收集远程机器密钥的博客文章。
有些回应该博客文章提到,只有在您不执行某些特定操作时才可能实现此目标,但我不清楚这些特定操作是什么(某些关于自定义错误页面的内容,但视频似乎没有触发任何错误页面)。它还提到MS有建议来避免这些攻击,但没有链接到建议。
因此,首先,是否有人可以清楚地解释,在开发ASP.NET表单身份验证系统时,需要采取哪些措施来防止像上面提到的利用漏洞?
其次,ASP.NET表单身份验证中是否存在其他众所周知的漏洞,某些最佳实践(默认未实现)是否可以缓解或预防?我正在构建一个包含财务数据的公共网站,因此这是我非常关注的问题。

我相信你谈论的是这个问题:https://dev59.com/nHA65IYBdhLWcg3wogAb - Aristos
我有一个类似的问题,就是:https://dev59.com/F3E95IYBdhLWcg3wApLl - Aristos
1个回答

4

这个问题早已经得到了解决:http://technet.microsoft.com/en-us/security/bulletin/MS10-070

当时Scott Gu写了相关文章http://weblogs.asp.net/scottgu/archive/2010/09/28/asp-net-security-update-now-available.aspx

这个SO问题涵盖了这个问题的影响 Is it vulnerable to ASP Padding oracle

我认为主要的结论是,在框架补丁和升级方面,相对于将生产应用程序留在旧框架、旧补丁级别,补丁和升级的风险要小得多,这是大型组织的变更控制委员会看到的相反的情况。他们通常比现有代码中的漏洞更担心补丁和更新。


太棒了。我被博客文章中的评论误导了,似乎...他们似乎在暗示开发者必须采取措施来防止这种情况。 - Jeremy Holovacs
1
几年前,我看到了一个ASP.NET 1.0的安装版本,当时正值3.5发布之际——这只能是出于对补丁的病态恐惧。那个网站可能仍然存在这个问题,但即使在那里,他们也必须关闭Windows更新,这会提供大部分这类补丁。当我的服务器管理员说他们想要修补或更新框架时,我告诉他们“请!”即使这意味着需要检查功能是否仍然相同。 - MatthewMartin
我不能在这里写一本书,但我想更清楚地解释CCB在非常大型组织中的位置。我为一个非常大的组织工作(27K+),他们推进和应用补丁的速度很慢。然而,这主要是因为涉及到的参与者超过了你可以用两只手数出来的数量。在大型组织中没有什么是“只要做就行了,如果不行我们会处理”的。它不是那样运作的。所以,您首先升级较低的环境,彻底测试它们,然后安排非高峰时段进行更新。 - Mike Perrenoud
@MichaelPerrenoud 啊,我并不反对CCB(变更控制委员会)的想法。只是我参与的几个CCB都在积极破坏所有变更并盲目通过请求之间来回切换,而且这些情况都与所提议变更的技术优劣无关。最好的情况下,CCB只是增加了额外的风险和工作量,没有监督或第二个意见的好处。最坏的情况下,CCB会停滞所有活动直到团队解散并取消项目,将开发和支持推出组织,并转移到超出CCB范围的合同安排中。希望我们没有在同一个组织里工作。 - MatthewMartin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接