ASP.NET成员资格提供程序/密码泄漏
给定一个使用默认ASP.NET成员资格提供程序的站点,并且成员资格密码格式配置为使用哈希,哈希算法为SHA1(默认值;LinkedIn使用的相同算法),并假设成员资格数据库被破坏,是否可以采取任何其他步骤进一步减少对上述数据的利用ASP.NET成员资格提供程序/密码泄漏,asp.net,.net,security,Asp.net,.net,Security,给定一个使用默认ASP.NET成员资格提供程序的站点,并且成员资格密码格式配置为使用哈希,哈希算法为SHA1(默认值;LinkedIn使用的相同算法),并假设成员资格数据库被破坏,是否可以采取任何其他步骤进一步减少对上述数据的利用 从快速查看成员模式来看,密码似乎利用了salt密钥。这个措施足够吗?让事情变得简短:对于存储密码,永远不要使用MD5、SHA1、SHA256、SHA512、SHA-3等bcrypt是存储密码的唯一安全方法 以下是上述确认的原因: 因为我刚才的问题 我开始用它作为我
从快速查看成员模式来看,密码似乎利用了salt密钥。这个措施足够吗?让事情变得简短:对于存储密码,永远不要使用MD5、SHA1、SHA256、SHA512、SHA-3等bcrypt是存储密码的唯一安全方法
以下是上述确认的原因: 因为我刚才的问题 我开始用它作为我的密码哈希代码,从我一直读到的内容来看,即使你掌握了users表,也很难获得存储密码的纯文本 我在我的电脑中使用它,这样我就可以拥有自己的密码 从博客帖子: 为什么使用BCrypt?最流行的密码存储方案基于快速散列算法,如MD5和SHA-1。BCrypt是一种计算代价昂贵的自适应哈希方案,它利用了Blowfish分组密码。它非常适合于密码存储,因为其缓慢的初始化时间严重限制了暴力破解密码的有效性。它增加的开销是可配置的(这是自适应的部分),因此测试候选密码所需的计算资源可以随着硬件能力的提高而增长 从codahale.com你也可以阅读
顺便说一下,我喜欢这个答案,这只是一个评论。我假设您正在使用MSSQL。对您的SQL安全性和网站上的安全性的一般审查。我知道很明显但很接近1433号港口。我将从标题中删除LinkIn密码泄漏,因为这意味着“LinkIn密码泄漏”,所以要点是使用一种哈希算法,该算法不是为速度而构建的,bcrypt满足这一要求,但需要一个自定义成员资格提供程序?您只能
覆盖创建用户和获取用户方法,以便使用bcrypt,默认成员资格仅使用普通散列。如果你读了我的答案,你会发现这很容易做到。