好的,这可能是非常基本的,但在这个发展阶段,这对我来说很重要。我很感谢任何意见和建议。
此示例中的数据不受SSL加密保护。
page1.php/asp
包含一个表单,用于将变量username
和password
发布到page2.php/asp
。
如果上述问题呈现为TRUE:
我思考这些问题,感谢任何意见和反馈。
答案 0 :(得分:9)
当用户通过未加密的HTTP提交登录表单时,他们的数据将通过一系列路径发送到您的服务器。在任何一条路线上,是的,有人可以嗅探数据。此外,如果用户的计算机被感染,黑客可能会在本地嗅探数据。
如果是登录表单,您应该使用SSL,期限。还要确保在数据库中加密用户的密码。登录的过程应该是:
这样一来,如果您的数据库被黑了,那么密码非常难以弄清楚(除非他们使用像'密码'这样的基本内容,但那时他们的错误就是这样。)
鼓励这样做是否有意义 用户不要使用他或她的正常 (假定更安全)密码,因为它 不受保护?
你会把用户赶走。
答案 1 :(得分:2)
是。任何可以看到数据包通过的人都可以看到用户名和密码。这使得它在开放的共享Wi-Fi网络等时特别容易受到攻击。
我会说你所有的假设都是正确的,这就是为什么在服务之间共享密码是不好的做法,特别是那些服务具有不同安全级别的情况。
如果可以的话,我建议你转移到SSL登录,部分原因是因为很多用户会忽略你给他们使用通用密码的任何建议,部分是因为这只是一个好习惯。 之前的好习惯像Firesheep这样的事情变得如此容易让“正常”的人使用,现在更重要了。
答案 2 :(得分:1)
任何人都可以通过收听来拦截我的POST数据,也许可以使用像Firesheep这样的第三方软件吗?
不,流量必须靠近他们。
如果上述问题呈现为TRUE:
它没有,但即便如此。
我是否应该始终认为我的未加密的POST数据可以免费提供给任何人?
除非它只通过局域网,否则是。如果它只通过局域网传输,那么在“局域网”上添加限定符,答案就是肯定。
我网站上的标准登录表单是否只是描述一层甚至不存在的安全层?
没有
我是否应该将登录功能视为个性化用户体验的一种方式?
当然,如果没有加密,你不应该做任何严肃的事情。
鼓励用户不使用他或她的正常(假设的更安全)密码是否有意义,因为在注册和登录过程中它不会受到保护?
对任何系统都这样做是有意义的。即使通信是安全的,您的服务器将来也可能会受到损害,或者第三方系统可能会受到攻击,然后用于攻击您系统的数据。
答案 3 :(得分:1)
我是否应该将登录功能视为个性化用户体验的一种方式? 鼓励用户不使用他或她的正常(假设的更安全)密码是否有意义,因为在注册和登录过程中它不会受到保护?
这取决于使用登录表单的网站。大多数大型网站(例如Gmail)都使用https进行登录身份验证,然后切换到http。 (有报道称此交换机还引入了一些漏洞。)其他站点在隐藏表单字段中发送salt值。您的原始密码将替换为salt和hash。在服务器上重复相同的操作,以确保您已发送正确的密码。这发生在场景后面,因此用户无法确定是否未加密发送。预计有很好的网站可以做到这一点。普通网站可能不这样做。路由器和调制解调器的许多配置页面都不使用加密或混淆。