为什么我们将密码哈希存储在与应用程序数据相同的数据库中? (或者:我们有什么理由不将它们存储在不同的数据库中吗?)

时间:2012-08-10 13:59:33

标签: passwords

最近所有的黑客和泄漏事件,我一直在考虑这个问题。它(几乎)无法锁定整个应用程序以确保没有SQL注入点或任何其他可能导致数据库泄露的攻击。<​​/ p>

但是,如果它非常非常小而非常非常简单,那么审核SQL注入应用程序将非常容易。可以将密码存储在完全独立的数据库中,除了通过API之外根本无法访问它。这个API会说三种方法:check_password,add_password,change_password。

通过这种方式,当(并且不是,如果你是一个足够大的目标)有人想出一种通过Web应用程序中的某些安全漏洞转储数据库的方法时,他们仍然没有你的密码哈希。

想到这个想法似乎很明显,但我还没有在其他地方找到任何参考,所以我的问题是:为什么我们不应该这样做?

1 个答案:

答案 0 :(得分:1)

您在哪里存储密码数据库的密码?