gpt4 book ai didi

google-chrome-extension - 使用 iframe 的 chrome 扩展登录安全

转载 作者:行者123 更新时间:2023-12-02 02:00:46 26 4
gpt4 key购买 nike

请注意,我不是 Chrome 扩展专家。但是,我正在寻找一些建议或高级解决方案来解决我的 chrome 扩展程序存在的安全问题。我搜索了很多,但似乎找不到具体的答案。

情况

我有一个 chrome 扩展,需要让用户登录到我们的后端服务器。

但是,出于设计原因,决定不希望使用默认的 chrome 弹出气球。因此,我使用模态对话框和 jquery 来制作注入(inject)了内容脚本的样式化弹出窗口。

因此,弹出窗口被注入(inject)到您正在访问的页面的 DOM 中。

问题

一切正常,但是现在我需要实现登录功能,我注意到一个漏洞:
如果我们注入(inject)弹出窗口的网站知道密码字段 ID,他们可以运行脚本来持续监控密码和用户名字段并存储该数据。叫我偏执,但我认为这是一种风险。事实上,我编写了一个模拟攻击站点,可以在输入给定字段时正确提取用户和密码。

我设计的解决方案

我查看了其他一些 chrome 扩展程序,例如 Buffer,并注意到他们所做的是从他们的网站加载弹出窗口,而是嵌入一个包含弹出窗口的 iFrame。弹出窗口将与 iframe 内的服务器交互。

我的理解是 iframe 与其他网站一样受同源脚本策略的约束,但我可能错了。

因此,做同样的事情会安全吗?

长见识

为简化起见,如果我通过 chrome 扩展程序将我们服务器的 https 登录表单嵌入到给定的 DOM 中,是否存在密码嗅探的安全问题?

如果这不是处理 chrome 扩展登录的最佳方式,您对什么是最好的有什么建议吗?也许有一种方法可以声明 javascript 无法与之交互的文本字段?不太确定!

非常感谢您的宝贵时间!我很乐意澄清任何需要的东西。

最佳答案

同源策略确实保护了主页上 iframe 的内容。

但是。用户无法知道页面中的 iframe 是否属于您的扩展程序。流氓页面可能会复制您的设计并冒充您的扩展程序,并最终窃取凭据。

让用户输入凭据的唯一安全方法是通过单独的窗口、弹出窗口或选项卡。
Chrome 提供了一个 API 来打开一个具有所需属性的窗口,它应该足够灵活以满足您的设计要求。请参阅此示例,该示例也是关于在弹出窗口中获取凭据:https://stackoverflow.com/a/10341102/938089

关于google-chrome-extension - 使用 iframe 的 chrome 扩展登录安全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17347884/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com