gpt4 book ai didi

javascript - 是否可以在 Web Worker 中安全地使用 eval 来执行任意用户代码?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:37:06 29 4
gpt4 key购买 nike

是否有可能以安全的方式将要评估的自定义用户代码卸载给 Web Worker?

Web Worker 的“仅与字符串通信”功能看起来很有前途,但评估用户代码几乎总是以有趣的方式存在危险。

我在网上找不到太多关于它的信息。是否有一种好的方法可以在客户端或通过一些服务器端清理或其他方式来做到这一点?

最佳答案

Web worker 无法更改 DOM,因此他们无法创建新元素并以这种方式创建 XSS 攻击。但是,它们可以创建 XMLHttpRequest,因此它们可以访问任何遵循同源策略的对象并从中请求数据。

只要您对与 worker 之间的消息进行清理,您就应该是安全的。只允许特定的字符串、对象或整数并阻止其他类型的消息。

此外,如果 Web Worker 仅针对每个用户而不是在用户之间分布,它们将不允许您的用户执行他们在开发人员控制台上无法执行的任何操作。

另见:

关于javascript - 是否可以在 Web Worker 中安全地使用 eval 来执行任意用户代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11810883/

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