哈希/加密配置文件信息

时间:2017-09-13 09:23:02

标签: database security hash web-applications server

通常,应用程序及其配置在同一台机器内,当有人攻击该机器时,可以访问配置文件并访问数据库(尽管通过位于该配置文件上的DB用户名和密码)。如果我们散列配置文件信息然后使用该文件而不是纯文本文件怎么办?有什么好主意吗?让我们说我不想使用任何云基础设施,只有一台机器。

2 个答案:

答案 0 :(得分:2)

哈希是one-way process - 最常用于验证信息未被篡改。因此散列您的配置文件会为您提供一个基本无意义的字符串,您无法使用它来建立数据库连接。

当然,您可以加密配置文件,但是您遇到了同样的问题 - 理论上可以访问Web应用程序的攻击者可以检索解密密钥,并找出解密配置的方法;他们甚至可以通过检查服务器进程的内存来查找运行时。

主要的一点是,有权访问您的Web服务器的攻击者几乎无法停止 - 他们可能会访问进出服务器的所有流量,他们可以读取服务器上的所有文件(或者至少Web应用程序用户可以阅读的那些),他们可能能够在服务器上执行任意代码。防止这种可能性并不能最好地利用您的时间 - 就像在前门不安全的情况下投资卧室的锁具一样。更好地修理前门。

解决此问题的最佳方法是让构建您正在使用的任何Web语言/框架的人解决它。您没有指定语言/框架,但请阅读工具集的安全指南,并实施建议。另请参阅OWASP指南。

答案 1 :(得分:0)

哈希函数是单向函数。散列配置文件后,您将无法“取消哈希”它以便应用程序处理它。加密可能是大多数人使用的,但即使这样,仍然可以进行逆向工程。