脸谱网 Google + 推特 LinkedIn YouTube RSS 菜单 搜索 资源——博客 资源-网络研讨会 资源-报告 资源-事件 icons_066 icons_067 icons_068 icons_069 icons_070

JSDom不当加载本地资源

媒介

剧情简介

JSDom不当允许加载本地资源。现代浏览器的最佳实践要求的加载本地资源应该默认不允许。

从文档、JSDom并不在默认情况下,任何子资源负载。用户必须使资源/子资源的加载。例如,当创建一个新的JSDOM对象,资源项可以设置为“可用”,允许外部资源的加载:

const dom = new JSDOM(来源,{url: http://localhost: 8080 /,资源:“可用”});

这里的问题是,这个设置还支持本地资源的加载。例如,下面的代码片段检查JSDOM试图访问本地资源通过使用一个不存在的文件抛出一个错误:

const jsdom =要求(“jsdom”);const {JSDOM} = JSDOM;源= ' < iframe的src = " file: / / / does_not_exist " / > ';const dom = new JSDOM(来源,{url: http://localhost: 8080 /,资源:“可用”});console.log (dom.window。document.body.parentElement。outerHTML);

输出上述运行时:

~ / r / b / u / poc❯❯❯节点- v;npm - v;npm列表| grep jsdom;v15.8.0 v7.5.1 pocs@ /用户/用户/研究/浏览器/ jsdom / poc└──(电子邮件保护)~ / r / b / j / poc❯❯local_resources❯节点。js < html > <头> < /头> <身体> <iframe的src = " file: / / / does_not_exist " > <身体/ iframe > < / > < / html >错误:无法加载iframe:“文件:/ / / does_not_exist”onErrorWrapped(/用户/用户/研究/浏览器/ jsdom / poc / node_模块/ jsdom / lib / jsdom /浏览器/资源/ / -document-resource-loader.js:38:19)对象。检查(/用户/用户/研究/浏览器/ jsdom / poc / node_模块/ jsdom / lib / jsdom /浏览器/资源/资源-queue.js: 72:23) /用户/用户/研究/浏览器/ jsdom / poc / node_模块/ jsdom / lib / jsdom /浏览器/资源/资源-队列中。js: 124:14 processTicksAndRejections(节点:内部/过程/ task_队列:94:5)[错误:ENOENT:没有这样的文件或目录,打开' / does_not_exist '] {errno: 2,代码:“ENOENT”,系统调用:“开放”,路径:/ does_not_exist的}

虽然这个问题本身并不是很严重,当搭配脚本启用(runScripts参数被设置为“危险”),这可能让这些本地资源不仅仅是在恶意的方面,如漏出敏感信息。我们明白文档警告对启用这个特性不受信任的输入,但许多下游库和应用程序依赖于这个特性(如zombie.js)。在其他更多的复杂的应用程序,可能其他漏出向量可能没有启用脚本,如侧信道攻击通过CSS请求。我们了解后一种情况是不太可能,但把它说明仅仅离开脚本残疾并不一定是缓解。

我们强烈建议添加一个额外的参数,如“localResources”来启用这个功能与现有的“资源”参数。例如,在Google chrome启用本地资源,它必须使用“——allow-file-access-from推出文件”旗帜。

注意:JSDom争端这一发现的维护者(s)和不同意这是一个安全问题。维护者的:“当你显式地选择加载的数据通过资源:“可用的”,你选择在漏出。当你在与runScripts脚本执行显式地选择:“危险”,你更倾向于运行任意节点。js代码在您的机器上。”

解决方案

更新来解决这一问题还没有引入JSDom时写作。为了缓解这个问题,成立和JSDom维护者建议禁用资源加载或运行您的应用程序只对熟悉和信任的输入。站得住脚的建议JSDom维护者添加额外的国旗(“localResources”)与现有的“资源”标记,控制加载本地资源。

披露时间表

2020年2月5日,站得住脚的发现问题。
2020年2月10日—站得住脚的披露,Tidelift JSDom(披露中介)。
2020年2月10日—Tidelift承认。
2020年2月11日—JSDom维护者纠纷发现。
2020年2月11日—站得住脚的请求澄清测试场景。
2020年2月12日—Tidelift传递请求。
2020年2月12日—维护者、合理的安全问题上存在分歧。
2020年2月12日—维护者确认更新不会对图书馆。

交易报告内的所有信息提供了“是”,没有任何形式的保证,包括适销性的隐含保证和健身为特定目的,并没有保证的完整性、准确性、及时性。个人和组织负责评估任何实际或潜在的安全漏洞的影响。

站得住脚的非常重视产品安全。如果你认为你已经找到一个漏洞在一个我们的产品,我们要求您请与我们共同努力,快速解决它为了保护客户。站得住脚的相信迅速应对这样的报道,与研究人员保持沟通,并提供解决方案。

提交漏洞信息的更多细节,请参阅我们的漏洞报告指南页面。

如果你有问题或修正咨询,请电子邮件(电子邮件保护)

风险信息

成立咨询ID
- 2021 - 05
CVSSv3基地/时间的分数
5.6/5.3
CVSSv3向量
AV: N /交流:H /公关:UI: N / N / S: U / C: L /我:L / L
受影响的产品
JSDom
风险因素
媒介

咨询时间

2021年2月16日——最初版本

站得住脚的脆弱性管理

以前Tenable.io


享受完全访问一个现代的、基于云的脆弱性管理平台,使您能够看到并追踪你所有的资产与无与伦比的精度。

你站得住脚的脆弱性管理试验Lumin还包括成立,成立网络应用扫描和站得住脚的云安全。

站得住脚的脆弱性管理

以前Tenable.io

享受完全访问一个现代的、基于云的脆弱性管理平台,使您能够看到并追踪你所有的资产与无与伦比的精度。今天购买你的年度订阅。

65年资产

选择你的订阅选项:

1年
2275美元
2年
4436美元
3年
6483美元
现在购买
免费试 现在购买

尝试成立Nessus专业免费的

免费7天

站得住脚的Nessus是当今市场上最全面的漏洞扫描器。

新成立Nessus专家
现在可用

Nessus专家增添了更多的功能,包括外部攻击表面扫描,和添加域和扫描云基础设施的能力。点击这里尝试Nessus专家。

填写下面的表格继续Nessus Pro的审判。

买站得住脚的Nessus专业

站得住脚的Nessus是当今市场上最全面的漏洞扫描器。站得住脚的Nessus专业将帮助自动化漏洞扫描过程,节省时间在你的合规周期,让你与你的团队。

买一个多年的许可并保存。高级支持访问添加到手机、社区和聊天支持一天24小时,一年365天。

选择您的许可

买一个多年的许可并保存。

添加的支持和培训

免费试 现在购买
Tenable.io

享受完全访问一个现代的、基于云的脆弱性管理平台,使您能够看到并追踪你所有的资产与无与伦比的精度。

你站得住脚的脆弱性管理试验Lumin还包括成立,成立网络应用扫描和站得住脚的云安全。

Tenable.io

享受完全访问一个现代的、基于云的脆弱性管理平台,使您能够看到并追踪你所有的资产与无与伦比的精度。今天购买你的年度订阅。

65年资产

选择你的订阅选项:

1年
2275美元
2年
4436美元
3年
6483美元
现在购买
免费试 现在购买

尝试站得住脚的Web应用程序扫描

以前Tenable.ioWeb Application Scanning

享受完全访问我们的最新的web应用程序扫描提供专为现代应用程序的一部分的一个管理平台。安全扫描整个在线组合漏洞具有高精确度没有重体力工作或中断关键web应用程序。现在报名。

你站得住脚的Web应用程序扫描试验还包括站得住脚的脆弱性管理,成立Lumin站得住脚的云安全。

买站得住脚的Web应用程序扫描

以前Tenable.ioWeb Application Scanning

享受完全访问一个现代的、基于云的脆弱性管理平台,使您能够看到并追踪你所有的资产与无与伦比的精度。今天购买你的年度订阅。

5 fqdn

3578美元

现在购买

免费试 联系销售

尝试成立Lumin

可视化和探索你的风险管理,跟踪风险降低随着时间的推移和基准与站得住脚的Lumin你的同行。

你站得住脚的Lumin审判还包括站得住脚的脆弱性管理,站得住脚的Web应用程序扫描和站得住脚的云安全。

买站得住脚的Lumin

联系销售代表如何站得住脚的Lumin可以帮助你了解你的整个组织和管理网络的风险。

免费试 联系销售

尝试站得住脚的云安全

以前Tenable.cs

享受完全访问检测和修复云基础设施配置错误和查看运行时的漏洞。现在注册你的免费试用。了解更多关于审判过程请点击这里。

你站得住脚的云安全试验还包括站得住脚的脆弱性管理,成立Lumin和站得住脚的Web应用程序扫描。

联系销售代表购买站得住脚的云安全

联系销售代表来了解更多关于站得住脚的云安全,看是多么容易机载云账户和获得可见性都几分钟内云配置错误和漏洞。

免费试 现在购买

尝试成立Nessus专家免费

免费7天

现代修建的攻击表面,Nessus专家使您能够看到更多和保护您的组织从漏洞从云。

已经成立Nessus专业吗?
升级到Nessus专家免费7天。

买站得住脚的Nessus专家

现代修建的攻击表面,Nessus专家使您能够看到更多和保护您的组织从漏洞从云。

选择您的许可

买一个多年的执照和存更多的钱。

添加的支持和培训

免费试 现在购买

尝试Nessus专家免费

免费7天

现代修建的攻击表面,Nessus专家使您能够看到更多和保护您的组织从漏洞从云。

已经有了Nessus专业?
升级到Nessus专家免费7天。

买站得住脚的Nessus专家

现代修建的攻击表面,Nessus专家使您能够看到更多和保护您的组织从漏洞从云。

选择您的许可

买一个多年的执照和存更多的钱。

添加的支持和培训

Baidu
map