以下用于解析指定为字符串的日期的正则表达式容易受到ReDoS的攻击:
/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i
减速幅度适中:在2秒的匹配时间内有50.000个字符。 但是,我仍然建议以下之一:
如果需要,我可以提供一个显示速度下降的实际示例。
为了澄清起见,这在matchWord
正则表达式中,在/src/lib/parse/regex.js
这里。
这是正则表达式的铁路图。 由此可见,重复分组与解析阿拉伯字符有关。 如果既懂正则表达式又懂阿拉伯语的人对此有所帮助,将很有帮助。
ReDoS概述也很有帮助。
不好意思,这还没有人开始
@hamiltondanielb所有你的:)
@cristianstaicu
如果需要,我可以提供一个显示速度下降的实际示例。
如果可能的话,我想看个例子:)
@ Drag0s通过您的私人电子邮件发送了它。
仅供参考,这已添加到NSP中(请参阅此处),因此这可能很快就会开始破坏人们的构建。
@hamiltondanielb-你有没有去研究这个?
刚刚完成构建build
令人遗憾的是,该问题必须在解决之前公开。 NSP公告于9月8日发行,今天已发布。 @cristianstaicu也许您应该提醒维护者有关披露的截止日期,以便为此
@mattgrande对此有一种
升级到nsp 3.1.0可以解决此问题,因为不再存在依赖关系-如果您不直接依赖时刻,请提防这一点。
有没有解决办法?
请告知任何可用的修复程序?
尚未发布任何修复程序。
请,如果您有兴趣从维护者那里获取更新,请单击右侧列中的“订阅”,以订阅有关此问题的更新的通知。
要为此添加nsp
例外,请添加.nsprc
文件:
{
"exceptions": [
"https://nodesecurity.io/advisories/532"
]
}
谢谢@ westy92 ! 保存了我的版本。
嗨@ westy92和@ jacob-go。 我有以下代码。
var taskMethods = require('gulpfile-ninecms');
gulp.task('nsp',tasksMethods.nsp);
它没有选择.nsprc文件异常。 暂时让我发现漏洞。
我将文件添加到项目的根目录。 我有什么想做的吗?
@Dexterslab我们正在使用gulp-nsp
,当.nsprc
在项目目录(与package.json
相同级别)中时,它可以正常工作。 也许尝试直接使用gulp-nsp
?
@cristianstaicu @mattgrande卢森堡也有这种情况吗?
我们很感激它能尽快解决此问题,因为它已被登录到nsp中,并且构建失败。
我可以建议维护者锁定此convo吗?
对于等待修复的每个人,只需点击订阅按钮,您就会收到通知。
如果有人要进行修复,请随时打开PR。
有人需要通知nsp
这已被修补吗? https://nodesecurity.io/advisories/532
此问题已在版本2.19.3中修复。 请相应地更新。
我不确定如何通知NSP-@cristianstaicu您或其他人可以在这里提供帮助吗?
我通过电子邮件发送了[email protected] :
你好,
当前突出的moment.js漏洞(https://nodesecurity.io/advisories/532)在最近补丁和修复发布在v.2.19.3。
报告咨询状态更新的过程是什么? 这个电子邮件地址是我能找到的最佳途径。
谢谢!
刚刚得到答复,应将NSP DB更新为固定版本2.19.3。
经过我的验证,2.19.3不再发出警报。
最有用的评论
我们很感激它能尽快解决此问题,因为它已被登录到nsp中,并且构建失败。