正则灾难性回溯:二十几个字符就能让匹配跑满一秒
文章简介:本文用 4 个正则模式与 6 档输入长度测回溯爆炸与四种防御:n=20 时三个危险模式的耗时是 103 毫秒、74 毫秒、52 毫秒,n=24 时交替分支与双重嵌套撞上 1 秒超时上限,而安全写法全程低于 1 毫秒;输入长度上限对 27 字符的输入完全无效,改写为线性正则把耗时压回毫秒级。
原文:https://www.freebuf.com/articles/web/505154.html
文章简介:本文用 4 个正则模式与 6 档输入长度测回溯爆炸与四种防御:n=20 时三个危险模式的耗时是 103 毫秒、74 毫秒、52 毫秒,n=24 时交替分支与双重嵌套撞上 1 秒超时上限,而安全写法全程低于 1 毫秒;输入长度上限对 27 字符的输入完全无效,改写为线性正则把耗时压回毫秒级。
原文:https://www.freebuf.com/articles/web/505154.html