Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过扩展进行登录操作_Javascript_Google Chrome Extension_Passwords_Firefox Addon - Fatal编程技术网

Javascript 通过扩展进行登录操作

Javascript 通过扩展进行登录操作,javascript,google-chrome-extension,passwords,firefox-addon,Javascript,Google Chrome Extension,Passwords,Firefox Addon,大多数密码管理器都有一个web扩展。扩展从桌面应用程序(如Dashlane)或浏览器中关联的vault(如LastPass)获取登录详细信息。这些扩展然后用相应的详细信息填写登录表单。但是,总是有可能通过其他方式从登录表单中破解凭据 因此,我想知道扩展是否可以在不填写表单的情况下直接登录应用程序。也就是说,假设我构建了一个扩展和一个密码管理器。我的扩展应该从密码管理器获取登录详细信息,并自行执行登录操作,而无需填写网页的登录表单。在这种情况下,凭证被盗的可能性并没有完全消除,但是降低了 如果我能

大多数密码管理器都有一个web扩展。扩展从桌面应用程序(如Dashlane)或浏览器中关联的vault(如LastPass)获取登录详细信息。这些扩展然后用相应的详细信息填写登录表单。但是,总是有可能通过其他方式从登录表单中破解凭据

因此,我想知道扩展是否可以在不填写表单的情况下直接登录应用程序。也就是说,假设我构建了一个扩展和一个密码管理器。我的扩展应该从密码管理器获取登录详细信息,并自行执行登录操作,而无需填写网页的登录表单。在这种情况下,凭证被盗的可能性并没有完全消除,但是降低了


如果我能对此有一些想法,那将非常有帮助

我认为你的问题有一些缺陷。考虑一下下面的内容

表单自动填充很容易由扩展处理,因为您只需要检测与跟踪的特定于域的页面相关联的表单元素。如果表单不在等式中,则扩展应该自动将数据发布到为登录表单提供服务的服务控制器,而不是自动填充表单。为了做到这一点,您需要跟踪与您管理的登录表单相关联的所有POST URL(当然,在检测到它们之后)

让我们假设您以某种方式跟踪表单POST端点。然后,您需要实际将数据发布到服务,以便对用户进行身份验证。由于扩展(与登录表单相反)不符合同源策略,因此需要添加一些COR才能执行请求。但在扩展范围内,这当然很容易

这就引出了下一个问题。登录表单请求是有状态的,因此成功的登录响应会在客户端上设置一个cookie,用于会话管理。由于扩展在沙盒环境中运行,因此无法修改来自第三方域的cookie


长话短说。你的想法听起来可能很酷,因为它消除了流程中的一个步骤,但我的经验法则是,如果某个范例已经存在太久,那么背后肯定有不止一个好的理由。

你实际上在寻找的是一个直接的POST请求。然而,这在需要验证码的情况下可能不起作用。@Manos Forsaken感谢您的评论。但并不是大多数网站都使用验证码。是否有其他方法可以实现此目的。您可能希望检查此相关信息,其中建议您始终使用此信息进行身份验证,并且永远不要传递用户名/密码,因为攻击者可以简单地窃取此类信息。有关详细信息,请参阅。