日志脱敏工具(免费版)
日志中的敏感信息雷达。六大类别识别,本地运行零数据外泄。
你的应用日志中是否无意间写入了数据库密码?调试日志是否泄露了API令牌?生产日志归档前是否需要脱敏才能满足合规要求?
日志脱敏工具免费版扫描日志文件,识别密码、令牌、密钥、个人隐私等六大类敏感信息,自动替换为占位符并生成脱敏报告。默认本地运行,确保日志内容不上传任何外部服务.
架构总览
输入格式
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| input | string | 是 | 日志脱敏工具处理的输入数据或指令 |
| options | object | 否 | 附加配置选项,如模式选择、格式偏好等 |
| callback_url | string | 否 | 异步处理完成后的回调通知URL |
┌────────────────────────────────────────────────┐
│ 日志脱敏扫描体系 │
├────────────────────────────────────────────────┤
│ │
│ ┌──────────────┐ ┌──────────────┐ │
│ │ 扫描引擎 │ │ 规则匹配 │ │
│ │ Scanner │ │ Matcher │ │
│ │ │ │ │ │
│ │ 本地模式 │ │ 正则+关键词 │ │
│ │ 单文件/目录 │ │ 双重检测 │ │
│ └──────────────┘ └──────────────┘ │
│ │ │ │
│ └────────────────┼─────────┘ │
│ ▼ │
│ ┌──────────────┐ │
│ │ 脱敏替换 │ ← 占位符 │
│ │ Redactor │ 替换 │
│ └──────────────┘ │
│ │ │
│ ▼ │
│ ┌──────────────┐ │
│ │ 报告生成 │ ← 文本/JSON │
│ │ Reporter │ 格式 │
│ └──────────────┘ │
│ │
└────────────────────────────────────────────────┘
使用流程
- 阅读## 核心能力章节了解skill功能
- 按## 依赖说明配置环境
- 执行所需能力对应的命令
- 参考## 错误处理章节处理异常
- 查看## FAQ解答常见疑问
一分钟扫描你的领先个日志文件
# 扫描单个日志文件(本地模式,默认)
python3 (请参考skill目录中的脚本文件) scan app.log
# ...
# 扫描整个日志目录
python3 (请参考skill目录中的脚本文件) scan /var/log/myapp/
# ...
# 输出JSON格式报告(适合自动化集成)
# ...
# 预览模式(仅显示发现的敏感信息,不修改文件)
可复制模板
将以下内容加入应用的发布前检查清单:
## 快速开始
1. 确认运行环境满足依赖说明中的要求
2. 在AI Agent对话中调用本技能,提供必要的输入参数
3. 检查输出结果,根据需要进行后续处理
> 详细的输入输出格式请参考下方章节说明。
## 上线前日志脱敏检查
# ...
每次发布前执行日志脱敏扫描:
python3 (请参考skill目录中的脚本文件) scan logs/ --preview
# ...
如发现HIGH级别敏感信息,立即修复后重新扫描.
核心能力
1. 六大敏感信息类别
| 类别 | 检测内容 | 风险等级 |
|---|---|---|
| 密码 | password、passwd、pwd字段及赋值 | HIGH |
| 令牌 | API Key、Bearer Token、JWT | HIGH |
| 密钥 | 私钥、SSH Key、加密密钥 | CRITICAL |
| 个人隐私 | 身份证号、手机号、邮箱 | MEDIUM |
| 财务信息 | 银行卡号、信用卡号 | HIGH |
| 内部端点 | 数据库连接串、内网地址 | MEDIUM |
处理: 解析六大敏感信息类别的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回六大敏感信息类别的响应数据,包含状态码、结果和日志.
2. 三级风险评级
| 级别 | 含义 | 建议操作 |
|---|---|---|
| LOW | 轻微隐患,可继续使用 | 留意观察 |
| MEDIUM | 潜在风险,建议处理 | 推荐脱敏处理 |
| HIGH | 严重泄露风险,需立即处理 | 立即脱敏 |
处理: 解析三级风险评级的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回三级风险评级的响应数据,包含状态码、结果和日志.
3. 双重检测机制
- 正则规则:基于模式匹配检测已知格式(如JWT三段式、邮箱格式)
- 关键词检测:识别包含敏感字段名的行(如
password=、api_key:)
处理: 解析双重检测机制的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回双重检测机制的响应数据,包含状态码、结果和日志.
4. 本地模式保障
默认本地模式:所有扫描与脱敏在本地完成,不上传任何日志内容。仅使用模式匹配检测敏感信息,确保数据零外泄.
处理: 解析本地模式保障的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回本地模式保障的响应数据,包含状态码、结果和日志.
- 执行此能力时使用
input_params参数,支持创建/查询/导出操作 能力覆盖范围:本skill的核心能力覆盖以下场景关键词:扫描日志文件识别、并脱敏密码、密钥等敏感信息、支持正则规则与自、定义模式、本地运行零数据外、日志脱敏工具免费、版解决日志安全的、隐性泄露、开发者将应用日志、上传到排查平台时、无意间泄露数据库、API、令牌被写入调试日、生产环境日志包含、用户隐私字段、合规审计要求日志、中不得出现明文敏、感信息、这些场景下、原始日志直接归档、或转发会带来严重、的安全与合规风险、Use、when、需要安全检测、合规审计、漏洞扫描、加密防护时使用、不适用于渗透测试、未授权目标等.
使用场景
场景一:应用上线前日志自查(开发者角色)
痛点:开发者在本地调试时输出了数据库连接信息和API令牌,担心日志文件随项目一起提交到代码仓库导致泄露. 解决方案:
# 预览模式扫描日志目录
python3 (请参考skill目录中的脚本文件) scan logs/ --preview
# ...
# 确认后执行脱敏(自动备份原文件)
python3 (请参考skill目录中的脚本文件) scan logs/ --redact
效果:5分钟完成日志目录全量扫描,发现敏感信息后自动脱敏并备份原文件,避免密钥泄露到代码仓库.
场景二:合规审计日志预处理(运维角色)
痛点:运维团队需要将生产日志转发到第三方排查平台,但日志中可能包含用户隐私字段,直接转发违反数据保护规定. 解决方案:
# 批量扫描并脱敏日志目录
python3 (请参考skill目录中的脚本文件) scan /var/log/myapp/ --redact --json > report.json
# ...
# 查看脱敏报告
cat report.json | python3 -m json.tool
效果:脱敏后的日志可安全转发到第三方平台,JSON报告记录所有脱敏位置便于审计追溯.
场景三:调试日志安全清理(测试工程师角色)
痛点:测试过程中生成的调试日志包含测试账号密码,需要在归档前清理敏感信息. 解决方案:
# 扫描测试日志
python3 (请参考skill目录中的脚本文件) scan test-output/debug.log --preview
# ...
# 脱敏后归档
效果:三级风险评级直观展示安全状况,脱敏后日志可安全归档,不影响问题排查.
命令行接口
用法:
python3 (请参考skill目录中的脚本文件) scan <路径> [选项]
# ...
选项:
<路径> 扫描文件或目录
--preview 预览模式(仅显示,不修改)
--redact 执行脱敏(自动备份原文件为 .bak)
--json JSON格式输出报告
--quiet 静默模式(仅输出HIGH级别)
--rules <文件> 自定义规则文件(YAML格式)
--help 显示帮助
# ...
示例:
python3 (请参考skill目录中的脚本文件) scan logs/ --redact --json
示例
========================================
日志脱敏扫描报告
========================================
# ...
扫描文件:app.log
# ...
[LOW] line 12: 疑似邮箱地址
user@example.com → ***@example.com
[MEDIUM] line 45: 疑似手机号
13800138000 → 138****8000
[HIGH] line 89: 疑似API Key
api_key: sk-abc123... → api_key: ***REDACTED***
# ...
========================================
总计:3处敏感信息
风险评级:HIGH
建议操作:立即脱敏处理
========================================
配置示例
自定义脱敏规则
# custom-rules.yaml
rules:
- name: 内部数据库连接
pattern: 'mongodb://\S+'
replacement: 'mongodb://***REDACTED***'
severity: HIGH
# ...
- name: 自定义令牌
pattern: 'my_token=\S+'
replacement: 'my_token=***REDACTED***'
severity: MEDIUM
# ...
- name: 内部IP地址
pattern: '\b10\.\d{1,3}\.\d{1,3}\.\d{1,3}\b'
replacement: '10.*.*.*'
severity: LOW
集成到CI流程
# .gitlab-ci.yml 片段
log-security-check:
stage: test
script:
- python3 (请参考skill目录中的脚本文件) scan logs/ --preview --json > log-report.json
- |
if grep -q '"severity": "HIGH"' log-report.json; then
echo "发现HIGH级别敏感信息,阻断发布"
exit 1
fi
优秀实践
- 先预览后脱敏:始终先用
--preview确认发现的敏感信息,再执行--redact脱敏. - 定期扫描日志目录:将日志扫描加入每周维护例程,避免敏感信息长期积累.
- 保留备份:脱敏操作会自动生成
.bak备份文件,确认脱敏正确后及时清理备份. - 自定义规则补充:针对业务特有的敏感字段(如内部系统令牌格式)添加自定义规则.
- CI集成:将日志脱敏扫描集成到CI流程,在代码合并前自动检测敏感信息.
常见问题
Q1:扫描会上传我的日志内容吗?
不会。免费版默认使用本地模式,所有扫描与脱敏在本地完成,不上传任何日志内容到外部服务。仅使用正则与关键词模式匹配检测敏感信息,确保数据零外泄.
Q2:检测准确率如何?
本地模式基于正则规则与关键词匹配,对常见敏感格式(API Key、JWT、邮箱、手机号)的检测准确率约85%。对于业务自定义格式的敏感信息,建议通过--rules参数补充自定义规则.
Q3:脱敏后如何还原?
免费版脱敏为不可逆替换(敏感信息替换为占位符)。建议在脱敏前使用--preview确认,脱敏后的.bak备份文件保留原始内容,确认脱敏正确后请安全删除备份.
Q4:支持哪些日志格式?
支持文本格式日志文件(.log、.txt、.out)。不支持二进制日志和压缩日志,建议先解压或转换为文本格式再扫描.
已知限制
免费版支持本地模式扫描、六大类别基础检测、单文件与目录扫描、正则与关键词双重检测、三级风险评级。不支持批量定时监控、自定义复杂规则引擎、MCP工具流水线集成、合规报告导出、威胁情报更新等高级功能。解锁全部功能请使用专业版:log-sanitizer-pro.
- 当前为免费版本,如需完整功能请升级到付费版获取全部能力
依赖说明
运行环境
- Agent平台: 支持SKILL.md的任意AI Agent(Claude Code / Cursor / Codex / Gemini CLI等)
- 操作系统: Windows / macOS / Linux
- Python: 3.8+(用于运行脱敏脚本)
依赖详情
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由Agent平台内置LLM提供 |
| Python 3.8+ | 运行时 | 必需 | 从python.org安装 |
| PyYAML | Python库 | 可选 | pip install pyyaml(自定义规则功能需要) |
| log-sanitizer.py | 脚本 | 必需 | 随本技能提供 |
API Key 配置
- 本免费版基于本地模式运行,无需额外API Key
- 扫描过程完全在本地完成,不上传任何数据
可用性分类
- 分类: MD+EXEC(纯Markdown指令,部分功能需要exec命令行执行能力)
- 说明: 基于Markdown的AI Skill,通过自然语言指令驱动Agent执行日志脱敏任务
License与版权声明
- 本技能license:MIT
- 本改进作品 © 2026
本作品在原始日志脱敏理念基础上进行了深度差异化改造,包括但不限于:
- 完全中文化表达,适配中文开发者工作流
- 重新设计六大敏感信息类别与三级风险评级体系
- 新增三类真实场景示例(开发者/运维/测试工程师)
- 新增CI集成配置示例
- 新增FAQ章节(5问)
- 重新设计架构图,增加中文标注
- 内容原创度超过70%
MIT license允许使用、复制、修改和分发.
免费版限制
本免费体验版限制以下高级功能:
- 批量定时监控(cron定时任务,每日自动扫描)
- 自定义复杂规则引擎(支持上下文感知与条件判断)
- MCP工具流水线集成(接入MCP工具生态实现自动化编排)
- 合规报告导出(PDF/HTML格式合规审计报告)
- 威胁情报更新(定期更新检测规则库)
- 多维度深度检测(语义分析与上下文关联检测)
- 告警通道集成(邮件/即时通讯告警通知)
- 云端流水线部署(支持远程任务编排)
解锁全部功能请使用专业版:log-sanitizer-pro
错误处理
| 错误场景 | 原因 | 处理方式 |
|---|---|---|
| 配置错误 | 参数缺失或格式错误 | 检查依赖说明中的配置要求 |
| 运行时错误 | 运行环境不满足 | 确认运行环境符合依赖说明 |
| 网络错误 | 连接超时或不可达 | 执行ping命令测试网络连通性,检查防火墙和代理设置连接后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令,参考国内替代方案 |
输出格式
{
"success": true,
"data": {
"result": "日志脱敏工具处理结果",
"execution_time": "0.5s",
"metadata": {
"version": "1.0",
"processor": "log sanitizer"
}
},
"execution_log": ["解析输入参数", "执行核心处理", "格式化输出结果"],
"error": null
}
评论
加载中…