JavaScript中的SonarQube正则表达式漏洞问题
无论我在JavaScript代码中使用Regex,SonarQube都会显示漏洞问题。在JavaScript中是否有其他正则表达式 错误:JavaScript中的SonarQube正则表达式漏洞问题,javascript,sonarqube,Javascript,Sonarqube,无论我在JavaScript代码中使用Regex,SonarQube都会显示漏洞问题。在JavaScript中是否有其他正则表达式 错误:确保在此处使用正则表达式是安全的。 示例正则表达式:'(^(?=[A-Za-z0-9\.-]*$)(?=.[A-Za-z0-9]).*$)这不是一个真正的问题,而是一个安全警告 你检查过错误的描述了吗 根据输入字符串计算正则表达式可能是一个非常复杂的问题 非常CPU密集的任务。巧尽心思构建的正则表达式 例如(a+)+s将需要几秒钟来计算输入字符串 aaaaaa
确保在此处使用正则表达式是安全的。
示例正则表达式:
'(^(?=[A-Za-z0-9\.-]*$)(?=.[A-Za-z0-9]).*$)
这不是一个真正的问题,而是一个安全警告
你检查过错误的描述了吗
根据输入字符串计算正则表达式可能是一个非常复杂的问题
非常CPU密集的任务。巧尽心思构建的正则表达式
例如(a+)+s将需要几秒钟来计算输入字符串
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabs
问题是,每增加一个字符,就会在
输入时,计算正则表达式所需的时间加倍。但是,
等价正则表达式,a+s(无分组)有效
以毫秒为单位计算,并随输入大小线性缩放
计算这样的正则表达式为正则表达式打开了大门
表达式拒绝服务(重做)攻击。在网络环境中
在应用程序中,攻击者可以强制web服务器花费其所有时间
资源评估正则表达式,从而使服务
真正的用户无法访问
此规则标记硬编码正则表达式的任何执行
具有至少3个字符和至少两个
以下字符:*+{
示例:(a+)*
问问自己,执行的正则表达式是否敏感
用户可以提供一个字符串,该字符串将由该正则表达式进行分析
表达式。•正则表达式引擎性能下降
使用精心编制的输入和正则表达式
如果您对这些问题中的任何一个回答为“是”,您可能会面临风险
要解决此问题,您需要人工检查正则表达式是否存在风险。如果没有,您可以将其标记为假阳性,否则,检查正则表达式可能是强制性的。您可以将SonarQube错误添加到您的问题中吗?对于正则表达式,我到目前为止只看到了正则表达式的安全热点。主要问题是您需要避免正则表达式允许这样做更新了我的代码