Google chrome extension 向服务器请求敏感数据

Google chrome extension 向服务器请求敏感数据,google-chrome-extension,security,httprequest,password-protection,Google Chrome Extension,Security,Httprequest,Password Protection,通过我的chrome扩展,我向我的服务器请求敏感信息,即用户的电子邮件和密码,以便将他们登录到服务中。做这件事的一个天真的方法是向以下对象发出请求 www.myserver.com/login?email=email&pass=pass. 然而,这似乎很可怕。执行此操作的标准安全方式是什么?标准安全方式是使用加密通道,如HTTPS。这样,只需连接到https://myserver.com将被看到,并且GET/login?email=email&pass=pass请求将被加密。 但是,

通过我的chrome扩展,我向我的服务器请求敏感信息,即用户的电子邮件和密码,以便将他们登录到服务中。做这件事的一个天真的方法是向以下对象发出请求

www.myserver.com/login?email=email&pass=pass. 

然而,这似乎很可怕。执行此操作的标准安全方式是什么?

标准安全方式是使用加密通道,如HTTPS。这样,只需连接到
https://myserver.com
将被看到,并且
GET/login?email=email&pass=pass
请求将被加密。 但是,通过仅通过GET请求的参数进行身份验证,您必须在您想要访问的每个页面上随身携带它。 通常,服务器会在您登录时为您提供一个身份验证令牌(例如cookie),授予您一段时间的访问权限,从而解决此问题。 这种访问令牌通常称为“会话”。它的实现方式有很大的不同,但通常归结为给你一个密钥来交换一个有效的登录名

获取有效会话的其他方法包括以明文形式发送用户名,以及以派生密钥形式发送密码,例如种子和哈希

如果我的回答中有什么你不明白的地方,请评论一下,我会详细说明或举更多的例子:)

编辑:


在后端,我使用的是来自werkzeug的标准salt+hash python库。如果JS执行了相同的操作,然后通过了 沿着导出的密码,这就足够了吗

对。如果您使用salt+hash方案,您可以使用任何您想要的JS库。我经常只是使用原生的XmlHTTPRequest来完成它

另外,您的第一个建议是使用HTTPS。如果我走那条路 返回会话密钥,如何阻止某人窥探会话 会话密钥

如果您使用SSL,是什么阻止某人嗅探会话?加密:一旦SSL连接建立,你和服务器之间来回的一切都将被加密,因此没有什么可窥探的。 但如果没有加密,这将成为一个大问题。还记得Firebug出现时facebook和嗅探会话cookies的所有模糊信息吗(或者是Firesheep?)


当然,您的SSL隧道可能会成为中间人的牺牲品,但像这样的公钥基础设施是最好的。SSLv3现在被认为是安全的。

在后端,我使用的是werkzeug python库中的标准salt+哈希。如果JS执行了相同的操作,然后传递了派生密码,那么这就足够了吗?如果是,什么js库是等效的?另外,您的第一个建议是使用HTTPS。如果我按此路线返回会话密钥,那么有什么办法阻止某人窥探会话密钥?