代码之家  ›  专栏  ›  技术社区  ›  HBasiri

Regex:匹配恶意ASP会话ID

  •  1
  • HBasiri  · 技术社区  · 6 年前

    我想创造一个 MODSECURITY 用于将cookie标头中的ASP会话id密钥白名单的规则(使用PCRE)。到目前为止,我想到的是:

    ^(?!.*?ASP.NET_SessionId=[a-z0-9]+;.*?$).+  
    

    网站cookie标题如下所示:

    Cookie: PortalAlias=Portal; Language_PostPortal=en-US; ASP.NET_SessionId=opn4y4n1qja0mtzm4sx4514k; portalroles=50FA411EBBAC79
    

    所以任何带有字符的cookie值 [a-z0-9] 在ASP。必须阻止NET\u SessionId密钥。是否有一个最佳且更优化的正则表达式(PCRE)来实现这一点?

    1 回复  |  直到 6 年前
        1
  •  1
  •   revo shanwije    6 年前

    您可以通过替换方法来删除整个不需要的会话id,而不是进行匹配:

    ASP\.NET_SessionId=[a-z0-9]*[^a-z0-9;][^;]*;\s*
    

    Live demo