使用chmod 0700将非编码密码存储在文件夹中是否安全?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用chmod 0700将非编码密码存储在文件夹中是否安全?相关的知识,希望对你有一定的参考价值。

假设我有一个应用程序,我的“管理员”可以轻松查看常规用户密码。如果需要,他们甚至可以改变它。 当新用户到来时,“admin”将用户添加到“system”,并向他提供他刚输入的密码。然后用户可以改变它。 如果用户忘记了密码,他会询问“管理员”,他们将能够看到并告诉他。

在该应用程序中,假设密码存储在存储在目录中的文件中。 “管理员”正在使用(让我们轻易命名......)“admin.php”来访问他们的管理界面。

选择不加密密码但是将目录chmod为“0700”是否安全,以便只有“admin.php”脚本可以访问/修改它? 如果没有,你能告诉为什么将它存放在“0700”文件夹中是不安全的吗? SQL数据库比“0700”文件夹更安全吗? 什么是最好的方法?

答案

散列密码的重点是除了用户自己以外的任何人都不能知道密码。因为密码应该是秘密的,并且该信息的保密性是用户具有的唯一安全形式。

通过以明文形式存储密码,您可以让实际用户以外的人知道密码。这取代了数学确定性(或至少是概率)的安全性,具有人为错误,系统配置和业务流程的安全性。其中至少有一个比数学更容易失败。

如果您的管理员通过电话将密码读回给用户,他们基本上已经失败了程序部分。听起来你的组织并没有将密码视为一种安全形式,但是开始时不方便解决,所以......不管我猜到了什么? ¯ _(ツ)_ /¯

另一答案

这根本不是保存。您应该始终使用salted密码哈希。没有一个借口不用哈希密码。

另一答案

安全是一个相对的词。管理员的权限级别或系统充当安全措施是有一定程度的安全性,因为它是访问该目录的障碍。绕过这些授权中的任何一个直接访问这些密码,而如果它们被散列则不会是这种情况。哈希是单向函数。这意味着除非您执行彩虹表攻击,否则无法获取密码,这会与这两个安全障碍一起进一步增加攻击者的攻击成本。从信息安全标准的角度来看,这是一种很好的安全措施。也就是说,哈希也不是绝对安全的。有数据库存在哈希值,因此可以避免彩虹表的成本。总的来说,它不太安全,因为他们没有使用标准的安全实践。

以上是关于使用chmod 0700将非编码密码存储在文件夹中是否安全?的主要内容,如果未能解决你的问题,请参考以下文章

如何在mysql中存储编码密码

Spring Boot 密码 bcrypt 编码器:编码值与在线生成的不匹配

ssh免密码登录服务器

寻找想法以确保在 git 存储库中将文件权限设置为 chmod 777

将非内存连续的 c/c++ 数据包装为 numpy 数组

我应该使用哪个函数将非结构化文本文件读入 R? [关闭]