
5分钟写出第一条HaE规则标记与提取的实用实战指南【免费下载链接】HaEHaE - Highlighter and Extractor, Empower ethical hacker for efficient operations. 赋能白帽高效作战项目地址: https://gitcode.com/gh_mirrors/ha/HaE抓包时想从海量响应体里捞出散落的密钥、令牌逐条翻看既慢又容易漏。HaEHighlighter and Extractor就是干这件事的它是网络安全领域的框架式工具采用积木式模块化设计对本地文件和 HTTP 消息含 WebSocket做精细化的标记与提取。跟着下面的步骤你会用正则和一份 YAML 规则文件写出自己的第一条提取规则并一步步搭出一套能用的敏感信息提取规则集。第一次使用 HaE先看效果再懂原理规则数据用 YAML 持久化结构分两层规则组Group和组内规则Info。仓库是品牌主仓src/下挂着两个产品子模块分别对应两种场景HaENet网络版处理 HTTP 消息的标记与提取HaEFile文件版处理本地文件的标记与提取想拉完整源码跑一遍git clone --recurse-submodules https://gitcode.com/gh_mirrors/ha/HaE看到效果的最短路径规则管理界面点 Add 打开编辑对话框填规则名称和 regex1主正则再设 format 模板与高亮颜色选匹配范围和正则引擎需要的话勾选敏感标记点 OK 保存编辑对话框里还有 Test 按钮可以先验证正则再保存界面上规则与规则组的增删改在 Rule.java 和 Rules.java正则的解析与执行则由 RuleProcessor.java 完成。用一条规则读懂全部字段与其背字段不如看一条真实的规则。从最简单的提取邮箱开始rules: - name: 基础提取 rules: - enabled: true name: 邮箱提取 regex1: [a-zA-Z0-9._%-][a-zA-Z0-9.-]\\.[a-zA-Z]{2,} regex2: format: 邮箱: {0} color: 0000FF scope: response engine: nfa sensitive: false每个规则可以读成在哪找、找什么、怎么显示regex1是真正干活的匹配正则标准 Java 正则语法regex2是辅助正则对匹配结果做二次筛选format是显示模板{0}、{1}分别引用第 1、2 个分组scope决定找请求、找响应还是都找engine选 dfa快或 nfa功能全sensitive打开后该规则命中的内容会被当作敏感信息在 UI 显示时走脱敏逻辑字段定义见 Info.java 模型类照着它就不会填错字段名。三个让规则更好用的技巧用 regex2 做二次筛选 regex1 匹配到一大块内容时regex2 可以从中再抠出关键部分。比如先用 regex1 框出整个 title 标签再用 regex2 取第 1 个分组- enabled: true name: HTML标题提取 regex1: title(.*?)/title regex2: $1 format: 页面标题: {0} color: 0000FF scope: response engine: nfa sensitive: false这种外层框选 内层提取的组合解析 HTML、JSON 这类嵌套结构时很常用。让 format 模板引用多个分组正则里带多个分组时format 里就能分别引用。提取 URL 参数时参数名和值一次拿齐- enabled: true name: URL参数提取 regex1: (\\w)(\\w) regex2: format: 参数名: {0}, 值: {1} color: FFFF00 scope: request engine: nfa sensitive: false如何加快匹配速度用非贪婪.*?代替.*把匹配范围收小scope 只开真正需要的一侧别动辄 both长文本、简单模式用 dfa需要分组提取等特性再用 nfa规则按功能分组管理不用的先关掉减少开销实战演练搭一套密钥提取规则集目标从响应体中自动标记并提取常见的云服务 API 密钥。第 1 步在规则管理界面新建一个规则组命名云服务密钥提取。第 2 步在组内添加 AWS 密钥规则。它的特征非常严格AKIA前缀加 16 位大写字母数字简单模式配 dfa 引擎正合适- enabled: true name: AWS密钥 regex1: AKIA[0-9A-Z]{16} regex2: format: AWS Access Key: {0} color: FF0000 scope: response engine: dfa sensitive: true第 3 步照葫芦画瓢再加一条 Google 密钥规则regex1 换成AIzaSy[a-zA-Z0-9_-]{33}color 换成FFC107其余照旧。第 4 步保存后发一条含密钥的请求命中的内容会被高亮标出敏感标记的规则会在显示层做特殊处理这套逻辑对应 RuleProcessor 的 rulesFormatAndSave 方法。常见坑与快速排查 规则完全不命中先在编辑界面的 Test 按钮里单独验证正则通过了再检查 scope——目标在响应里、scope 却设成了 request 是最常见的错位。正则有语法错误未闭合括号和非法转义最多写进规则前先用在线正则工具验证一遍。匹配太卡多半是贪婪.*引发大量回溯改非贪婪、长文本换 dfa或者把一条复杂规则拆成几条简单的。敏感结果想脱敏勾选sensitive: trueUI 显示时就会对结果做脱敏处理不敏感的数据不用开。字段与参数速查写规则时随手可查字段类型作用enabledboolean规则是否启用namestring规则名称用于界面标识regex1string主正则负责主匹配regex2string辅助正则做二次筛选formatstring显示模板{0}/{1}引用分组colorstring高亮颜色RGB 十六进制scopestring匹配范围request / response / bothenginestring正则引擎dfa / nfasensitiveboolean是否标记为敏感信息scope 和 engine 是最容易选错的两个参数选项特点适用场景scope: request只匹配请求提取参数、命令等请求侧内容scope: response只匹配响应密钥、令牌等敏感信息大多在响应里engine: dfa速度快、内存占用低简单模式、长文本engine: nfa支持分组提取等特性复杂模式、需要引用分组HaE 的玩法说到底就是正则负责找、规则文件负责记住一次编写后续每条消息自动标记提取。下一步可以去 规则示例目录 导入一套现成规则直接上手遇到问题通过项目的 issues 系统反馈即可。【免费下载链接】HaEHaE - Highlighter and Extractor, Empower ethical hacker for efficient operations. 赋能白帽高效作战项目地址: https://gitcode.com/gh_mirrors/ha/HaE创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考