【Github开源】🔍敏感信息提取工具

【开源项目】:magnifying_glass_tilted_left:敏感信息提取工具

写它是因为市面上貌似只有js敏感信息提取的工具,没有对于内网渗透过程中的敏感信息收集相关的工具,故有了这个工具。

项目地址 GitHub - muyuanlove/sensitive_info_extractor: 一个强大的敏感信息扫描工具,支持多线程处理和友好的GUI界面,可以扫描指定目录下的文件并提取敏感信息。

请确保在有书面渗透测试授权的环境中使用该工具

下面是介绍

一个强大的敏感信息扫描工具,支持多线程处理和友好的GUI界面,可以扫描指定目录下的文件并提取敏感信息,主要解决内网渗透过程中,目标敏感文件过多,收集效率过低的问题。

:sparkles: 主要特性

  • :bullseye: 智能文件识别:自动识别文本文件,跳过二进制文件
  • :rocket: 多线程处理:支持2/4/8/16线程并发扫描,提升处理速度
  • :framed_picture: 用户友好界面:基于tkinter的GUI界面,实时显示扫描进度
  • :gear: 配置文件分离:正则表达式规则存储在JSON配置文件中,便于修改
  • :bar_chart: 详细报告:生成格式化的Markdown报告,包含文件位置和行号
  • :locked: 风险等级:根据敏感信息类型标记风险等级(高/中/低)
  • :globe_showing_europe_africa: 多平台支持:支持Windows、Linux、macOS打包成可执行文件

:package: 项目结构

sensitive_info_extractor/
├── sensitive_extractor.py   # 主程序
├── patterns.json            # 正则表达式配置文件
├── build_script.py          # 打包脚本
├── requirements.txt         # 依赖列表
├── README.md                # 说明文档
└── release/                 # 发布包目录
    ├── windows/
    ├── linux/
    └── macos/

:rocket: 快速开始

方法一:直接运行Python脚本

  1. 克隆项目:

    git clone https://github.com/muyuanlove/sensitive_info_extractor
    cd sensitive_info_extractor
    
  2. 安装依赖:

    pip install -r requirements.txt
    
  3. 运行程序:

    python sensitive_extractor.py
    

方法二:使用预编译可执行文件

  1. 下载对应平台的可执行文件 windows
  2. 解压到任意目录
  3. 双击运行 SensitiveInfoExtractor

:wrench: 使用说明

基本操作

  1. 选择扫描目录:点击"浏览"按钮选择要扫描的目录
  2. 设置输出文件:指定报告文件的保存位置
  3. 选择线程数:根据CPU核心数选择合适的线程数
  4. 开始扫描:点击"开始扫描"按钮
  5. 查看结果:扫描完成后查看结果页面或生成的报告

界面介绍

  • :file_folder: 扫描设置:配置扫描参数和查看进度
  • :bar_chart: 扫描结果:查看统计信息和详细结果
  • :gear: 配置管理:管理正则表达式规则

:memo: 配置文件说明

patterns.json 结构

{
  "规则名称": {
    "regex": "正则表达式",
    "description": "规则描述",
    "risk_level": "风险等级",
    "enabled": true
  }
}

支持的敏感信息类型

类型 描述 风险等级
大陆手机号 中国大陆手机号码 :red_circle: 高
身份证 中国居民身份证号码 :red_circle: 高
银行卡 银行卡号 :red_circle: 高
JWT JWT令牌 :red_circle: 高
密钥 各类密钥 :red_circle: 高
邮箱 电子邮箱地址 :yellow_circle: 中
OSS 对象存储服务地址 :yellow_circle: 中
域名 域名地址 :green_circle: 低
URL 网址链接 :green_circle: 低

自定义规则

  1. 打开 patterns.json 文件
  2. 添加新的规则或修改现有规则
  3. 在程序中点击"重新加载配置"
  4. 重新开始扫描

:hammer_and_wrench: 开发和打包

开发环境设置

# 创建虚拟环境
python -m venv venv

# 激活虚拟环境
# Windows
venv\Scripts\activate
# Linux/Mac
source venv/bin/activate

# 安装依赖
pip install -r requirements.txt

打包为可执行文件

# 执行打包脚本
python build.py

打包脚本会自动:

  • 检查并安装PyInstaller
  • 创建spec文件
  • 构建可执行文件
  • 创建发布包

:bar_chart: 性能优化

线程数选择建议

  • 2线程:适合单核或双核CPU
  • 4线程:适合四核CPU
  • 8线程:适合八核CPU(推荐)
  • 16线程:适合高性能CPU

扫描效率

  • 支持的文件类型:.txt, .py, .js, .json, .yml, .md 等
  • 自动跳过二进制文件:.exe, .jpg, .zip 等
  • 多编码支持:UTF-8, GBK, GB2312 等

:locked: 安全说明

  1. 隐私保护:生成的报告可能包含敏感信息,请妥善保管
  2. 文件权限:程序只读取文件内容,不会修改任何文件
  3. 网络安全:程序不会上传任何数据到网络
  4. 数据存储:所有数据都存储在本地,不会泄露

:clipboard: 支持的平台

  • :white_check_mark: Windows 10/11
  • :white_check_mark: Linux (Ubuntu, CentOS, Debian等)
  • :white_check_mark: macOS 10.15+

:bug: 常见问题

Q: 扫描速度很慢怎么办?

A: 可以增加线程数到8或16,跳过不必要的大文件夹。

Q: 配置文件修改后不生效?

A: 需要点击"重新加载配置"按钮或重启程序。

Q: 报告文件无法打开?

A: 确保输出路径有写入权限,报告格式为Markdown。

Q: 可执行文件打包失败?

A: 检查是否安装了PyInstaller,确保Python环境正常。

:handshake: 贡献指南

  1. Fork 项目
  2. 创建特性分支
  3. 提交更改
  4. 推送到分支
  5. 创建 Pull Request

:page_facing_up: 许可证

本项目采用 MIT 许可证 - 详见 LICENSE 文件

:folded_hands: 致谢

感谢所有为此项目做出贡献的开发者!


:warning: 免责声明:此工具仅用于安全检测和学习目的,请确保在合法合规的范围内使用

81 个赞

佬友太强了 :+1:,这个很实用 :+1:,感谢佬友分享 :folded_hands:

2 个赞

一楼一楼!!!
给个star吧,球球啦

2 个赞

我来抄正则表达式了 :smiling_face_with_three_hearts:

2 个赞

大佬star啦 :face_savoring_food:

1 个赞

你太猛了!

是通过正则匹配的吗?

厉害很实用

佬太强了

大佬下个版本可以把UI再优化下

mark学习一下

让我打开项目 狠狠地抄regex

很好pattens.json 使我的re旋转

AIzaSy.{33} 也不错 就是国内应该不怎么常用

1 个赞

佬太强了

1 个赞

好东西啊…

大佬太猛了

2 个赞

站在巨人的肩膀上

佬,太强了,还是太全能了

1 个赞

我感觉佬用不了多久,都能写个nmap出来了 :joy:

1 个赞

感谢佬的分享

很实用的项目,正则 :south_korea:了