做ppt的动图下载哪些网站通辽住房和城乡建设厅网站
2026/6/6 7:10:45 网站建设 项目流程
做ppt的动图下载哪些网站,通辽住房和城乡建设厅网站,珠海做网站的公司,网站模板站扩容一、正则表达式基础语法 1. 基本元字符 . 匹配任意单个字符#xff08;除了换行符#xff09; * 匹配前一个字符0次或多次匹配前一个字符1次或多次 ? 匹配前一个字符0次或1次 {n} 匹配前一个字符n次 {n,} 匹配前一个字符至少n次 {n,m} 匹配前一个字符n到m次2…一、正则表达式基础语法1.基本元字符. 匹配任意单个字符除了换行符 * 匹配前一个字符0次或多次 匹配前一个字符1次或多次 ? 匹配前一个字符0次或1次 {n} 匹配前一个字符n次 {n,} 匹配前一个字符至少n次 {n,m} 匹配前一个字符n到m次2.字符类[abc] 匹配a、b或c中的任意一个 [^abc] 匹配除了a、b、c以外的任意字符 [a-z] 匹配a到z的任意小写字母 [0-9] 匹配数字 [[:alnum:]] 字母数字 [[:alpha:]] 字母 [[:digit:]] 数字3.预定义字符类\d 数字 [0-9] \D 非数字 [^0-9] \s 空白字符 [ \t\r\n\f] \S 非空白字符 [^ \t\r\n\f] \w 单词字符 [a-zA-Z0-9_] \W 非单词字符 [^a-zA-Z0-9_]4.边界匹配^ 字符串开始 $ 字符串结束 \b 单词边界 \B 非单词边界5.转义字符\\ 反斜线 \. 点号 \* 星号 \ 加号 \? 问号 \( 左括号 \) 右括号 \[ 左方括号 \] 右方括号 \{ 左花括号 \} 右花括号二、Suricata专用语法1.十六进制表示\xHH HH为两位十六进制数 \x{HHHH} 四位十六进制数示例\x27 单引号 \x26 与符号 \x2d 减号-\x23 井号#2.URL编码匹配# 匹配URL编码的单引号%27|\x27# 匹配URL编码的注释(\x2d|%2d){2}# 匹配 --3.PCRE标志/P 启用PCRE库 /i 不区分大小写 /s 让.匹配换行符 /m 多行模式 /U 非贪婪模式三、Suricata规则中正则的用法基本格式pcre:/正则表达式/标志;常用模式示例1.SQL注入检测# 匹配基础SQL关键词pcre:/(select|union|insert|update|delete|drop|create|alter)\s/Pi;# 匹配SQL注释pcre:/(--|\x23|\/\*.*?\*\/)/sPi;# 匹配单引号注入pcre:/[\x27%27].*?[\x27%27]/Pi;# 匹配时间盲注pcre:/(waitfor\sdelay|sleep\s*\(|benchmark\s*\()/Pi;2.XSS攻击检测# 匹配script标签pcre:/script[^]*.*?\/script/sPi;# 匹配JavaScript事件pcre:/on\w\s*/Pi;# 匹配alert函数pcre:/alert\s*\(.*?\)/Pi;3.文件包含/路径遍历# 匹配目录遍历pcre:/(\.\.\/|\.\.\\\\)/Pi;# 匹配绝对路径pcre:/(\/etc\/|\/bin\/|C:\\\\)/Pi;# 匹配文件包含pcre:/(include|require)(_once)?\s*\(/Pi;4.命令注入# 匹配系统命令pcre:/(system|exec|shell_exec|passthru|popen)\s*\(/Pi;# 匹配管道符pcre:/(\||\x3b||\|\|)/Pi;# 匹配反引号pcre:/.*?/Pi;四、性能优化技巧1.使用content先行过滤# 先使用content快速过滤content:select; nocase; content:from; nocase;# 再用pcre精确匹配pcre:/select\s.*?\sfrom\s/Pi;2.限制匹配长度# 避免长字符串匹配pcre:/pattern[^\r\n]{0,100}/Pi;3.使用非贪婪匹配# 贪婪匹配默认pcre:/script.*\/script/sPi;# 非贪婪匹配更高效pcre:/script.*?\/script/sPi;4.避免复杂回溯# 避免 - 复杂分组pcre:/(a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z)/Pi;# 推荐 - 使用字符类pcre:/[a-z]/Pi;五、实战示例示例1检测URL参数中的SQL注入alert http any any-any any (msg:SQLi in URL Parameter; \ flow:established,to_server; \ http.uri; \ pcre:/\?.*?[^]*?(union\sselect|select\s.*?\sfrom|waitfor\sdelay|[\x27].*?[\x27])/Pi; \ sid:1001; rev:1;)示例2检测POST数据中的XSSalert http any any-any any (msg:XSS in POST Body; \ flow:established,to_server; \ http.request_body; \ pcre:/script[^]*|javascript:|on\w\s*|alert\s*\(/Pi;\ sid:1002; rev:1;)示例3检测路径遍历攻击alert http any any-any any (msg:Path Traversal Attack; \ flow:established,to_server; \ http.uri; \ pcre:/(\.\.%2f|\.\.\/|\.\.%5c|\.\.\\\\)/Pi; \ sid:1003; rev:1;)示例4检测命令注入alert http any any-any any (msg:Command Injection; \ flow:established,to_server; \ http.request_body; \ content:cmd; nocase; \ pcre:/cmd.*?[;|].*?(ls|cat|id|whoami|netstat)/Pi;\ sid:1004; rev:1;)六、调试与测试1.测试正则表达式# 使用pcretest工具echoyeah1waitfor delay0:0:3--|pcretest -i# 在线测试网站# regex101.com# regextester.com2.Suricata测试命令# 测试规则语法suricata -T -c suricata.yaml# 测试特定规则suricata -c suricata.yaml --luaprint(require(rule).load(your_rule.rules))3.查看匹配日志# 实时查看匹配tail-f /var/log/suricata/fast.log# 查看详细匹配信息tail-f /var/log/suricata/eve.json|jq. | select(.alert)七、常见问题解决1.规则不匹配检查flow:established,to_server确认http.uri或http.request_body使用正确检查正则表达式标志是否正确2.性能问题使用content先行过滤避免过于复杂的正则限制匹配范围3.误报率高精确匹配路径/参数增加白名单机制使用阈值限制4.漏报问题考虑多种编码方式覆盖更多变体使用多重规则检测八、最佳实践分层防御先用简单规则过滤再用复杂正则测试验证所有规则都要经过测试性能监控监控Suricata的CPU和内存使用定期更新更新正则表达式库日志分析定期分析告警日志优化规则黑白名单结合使用减少误报九、资源推荐PCRE官方文档http://www.pcre.org/Suricata规则文档https://suricata.readthedocs.io/正则测试工具https://regex101.com/OWASP正则库https://owasp.org/www-community/OWASP_Validation_Regex_Repository掌握这些内容后你就能编写高效、准确的Suricata正则规则了

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询