目前,我们使用.htaccess和.htpasswd保护站点上的目录。但我想知道这有多安全?有什么事情是我应该注意的,还是可以让它更安全的?
我不知道为什么,但它对此不太自信。我觉得这种安全感很容易破解。根据我所读到的,有一些方法只需下载.htpasswd文件并解密密码。
发布于 2011-12-02 10:01:23
如果所有的访问都是通过SSL进行的,那么它是相当安全的。
没有SSL的基本身份验证只以base64编码的方式发送用户名/密码,因此通过MITM或嗅探提取令牌非常简单。
没有SSL的摘要身份验证要好得多(一种基于挑战的机制),但仍然不如加密连接安全。然而,用户很少看到身份验证是以Digest而不是Basic的形式实现的。此外,代理身份验证的挑战看起来非常相似。
内置的身份验证机制不能提供良好的用户体验。如果这是针对一个拥有一个小的定义用户组的站点,那么使用内置方法是一个快速的解决方案(但是您可以考虑客户端证书auth )。但是对于一个面向公众的网站来说,你应该考虑实现一些更复杂的东西。
您应该适当地配置and服务器,以防止直接访问htaccess文件和密码数据库。要么将配置放在文档根目录之外(显然,这对htaccess文件不起作用,但它们只是webserver配置的本地扩展名),要么阻止对文件的访问。我遇到的每个Apache发行版都阻止访问名为“.ht”的文件
虽然您可以阻止对密码db的直接访问,但通过HTTP限制对服务器的暴力攻击的范围不大--这是考虑基于表单的方法的另一个原因。
发布于 2011-12-02 18:51:25
理想情况下,黑客不应该下载您的.htpasswd文件-- apache将禁止访问以".ht“开头的任何文件,因此只要您不提供.ht访问,并且您的应用程序中没有任何漏洞,您就应该处于良好的状态。
发布于 2011-12-07 20:27:20
我将检查这个资源以确保htaccess受到适当的保护:
http://www.symantec.com/connect/articles/hardening-htaccess-part-one
如果您想获得更大的操作控制,我会查看WAF或mod_security:
http://www.askapache.com/htaccess/modsecurity-htaccess-tricks.html
https://security.stackexchange.com/questions/9380
复制相似问题