当前位置:  开发笔记 > 数据库 > 正文

我为什么要关心哈希密码呢?

如何解决《我为什么要关心哈希密码呢?》经验,为你挑选了3个好方法。

如果黑客可以访问我的数据库中的哈希值,那么无论如何他都可以访问数据库中的其余信息.那么为什么他会费心去解密密码呢?我应该将密码存储在不同的服务器上以保存我的其他数据吗?这是我可以设想它有用的唯一场景.



1> Joel Coehoor..:

    有时,黑客无法完全访问您的数据库.有时他们会发现一个小的SQL注入漏洞或其他人没有正确编码的弱点,因此他们最初只能做一些简单的事情,比如一次打印一个数据库单元.如果他们能够打印出真正的密码,那么事情就会变得更糟.

    事情发生了:备份磁带丢失,意外丢失或被盗.一个退休的系统没有被正确擦除.其他地方的违规行为会导致数据库意外泄露.如果黑客可以访问这样的快照,他可以了解很多关于你的系统的知识.但是,如果密码仍然是哈希,他也不能使用系统来做恶意的事情,比如以不同的用户身份登录并开始更改内容.

    我听说大多数黑客都是内部工作.最好删除您信任的人以其他人身份登录的能力.

    这不仅仅是你.用户倾向于跨系统共享密码.也许有一天(上帝保佑)你有一个与密码无关的漏洞,但在这个漏洞的过程中你的身份验证表将成为攻击者的目标之一.如果您以纯文本形式存储密码,那么您也只是在许多其他服务上破坏了用户帐户,而您非常糟糕的一天变得非常糟糕.

如果您认为这种事情没有发生,请与reddit的人谈谈.


+1只是为了嘲笑乔尔与更多无关的代表.

2> Cybis..:

    人们经常对其他网站上的不同帐户使用相同的用户名/密码(包括例如在线访问银行帐户).

    一旦你发现了这个黑客并保护了你的数据库,黑客仍然可以登录你用户的帐户.



3> Adam Liss..:

最佳安全实践建议:

您应该为每个帐户使用唯一(userId,密码)对.但大多数人使用一对来获取许多资源(电子邮件,银行).攻击者可以从一个资源中窃取它们并使用它们访问另一个资源.用盐哈希密码- 见http://en.wikipedia.org/wiki/Salt_(cryptography) -防止这种攻击.

您应该加密数据库中的所有敏感数据,而不仅仅是密码.你有人可能窃取你的整个数据库(或你的服务器)是完全有效的.

您应该将Web服务器与数据库和任何其他宝贵资源分开,以将攻击隔离到最不重要的资产.

哈希密码也有商业原因.请记住,散列意味着您不会将用户的密码存储在设备的任何位置.

根据适用的法律,您可能需要在某些情况下执行此操作.

如果您的数据被盗,您可以大大减少曝光率.

您对社交工程攻击更安全,攻击者冒充有效用户并哄骗员工泄露密码.见http://en.wikipedia.org/wiki/Social_engineering_(security).

推荐阅读
喜生-Da
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有