开源数据库敏感信息审计神器|命令行 + GUI 双端,全库一键扫描隐私数据
RuoJi6
RuoJi6
鹏组安全
2026年6月25日 20:30
江西
在小说阅读器读本章
去阅读
等保合规、内网渗透、数据安全自查时,最头疼的一件事:海量数据库里藏着身份证、手机号、密钥、银行卡等敏感数据,人工核对效率极低,商用扫描工具又成本高昂。今天给大家分享一款 Go 开源轻量工具database_scan,支持主流国内外数据库、Redis,自带可视化 GUI 面板,批量扫描、分级风险、导出 Excel 报告,渗透、运维、合规审计都能用。
一、工具简介
database_scan是纯 Go 开发的数据库敏感信息检索工具,核心定位是快速定位数据库内隐私 / 高风险敏感数据,兼顾命令行轻量化运行与可视化 GUI 任务管理,2026 持续更新迭代,新增 HaE 密钥识别规则,兼容绝大多数国产、国外主流数据库与 Redis 缓存。
工具界面预览
GUI审计工作台
核心解决痛点
- 内网资产多,MySQL/Oracle/Redis 等多类型数据库分散,逐个人工检查耗时;
- 无法区分风险等级,身份证、密钥等高危凭据与手机号、地址混在一起;
- 扫描结果无标准化报告,等保自查缺少可交付 Excel 台账;
- 部分目标在内网隔离环境,需要 SOCKS5/HTTP 代理拨号连接扫描;
- 渗透场景可直接解析 fscan 扫描结果,批量一键扫描所有数据库资产。
二、超强兼容:支持数据库清单
1. 原生直接支持
mysql/mariadb/mssql/sqlserver/postgres/oracle/redis
2. MySQL 协议兼容国产库
TiDB、OceanBase、PolarDB-MySQL、Doris、StarRocks、GBase-MySQL
3. PostgreSQL 协议兼容国产库
openGauss、GaussDB、人大金仓、瀚高、PolarDB-Postgres
4. Redis 专项扫描
枚举全部 Key,识别 String/Hash/List/Set/Zset 内所有敏感内容,独立 Redis 专属报表。
三、四大检索模式,灵活适配场景
- field-content(默认):先匹配敏感表 / 字段名,再抽样读取字段内容,兼顾速度与准确度;
- field-name:仅扫描表名、字段名,快速定位命名敏感字段,无数据读取;
- content:全量抽样字段内容,适合无规范命名、敏感值藏在普通字段的场景;
- all:字段名 + 内容双重扫描,完整全覆盖,适合合规深度审计。
四、三级风险分级,精准区分危害
High(高危,重点处置)
身份证、明文密码、数据库密钥、银行卡、云 AK/SK、JWT、JDBC 连接串、企微密钥、各类认证 Token;
Medium(中危)
手机号、邮箱;
Low(低危)
收货地址、普通账号用户名
执行扫描时可通过参数--level high仅扫描高危数据,快速排查泄露隐患。
五、核心实用功能
1. 双端运行:命令行 + 可视化 GUI
- 命令行:服务器无图形环境轻量化执行,支持隐藏输入密码,避免 shell 历史泄露凭据;
- GUI 工作台:新建批量扫描任务、多目标并行管理、任务进度可视化、结果筛选排序,操作直观。
2. 网络代理支持
- 兼容 SOCKS5、HTTP CONNECT 代理,内网隔离资产、外网渗透目标均可拨号扫描,代理账号密码支持 URL 编码兼容特殊符号。
3. 批量资产导入(渗透神器)
- 直接解析
fscan扫描结果文件,自动提取所有 MySQL、Oracle、Redis 等数据库账号密码,多线程并发批量扫描,支持拆分输出每个资产独立 Excel 报告。
4. 标准化报告导出
- 终端彩色表格实时输出,支持关闭颜色、脱敏敏感值(
--mask); - Excel 导出:每张表单独 Sheet,标记风险颜色,区分敏感字段与原始样例数据;
- Redis 专属报表,区分 Key 类型、TTL、命中规则。
5. 灵活扫描控制
- 指定单库、单表精准扫描,跳过系统库;
- 自定义单表采样条数、查询超时、并发扫描线程;
- 支持执行自定义 SQL 语句读取数据检测敏感内容;
- Ctrl+C 中断后自动保存已扫描完成结果,不会丢失数据。
六、快速上手实操
1。基础扫描示例
① MySQL 基础扫描(隐藏输入密码,安全无记录)
./database_scan --type mysql --host 127.0.0.1 --port 3306 --user root
执行后程序交互式输入密码,不会留存到命令行历史。
② 仅扫描高危敏感数据,导出 Excel 报告
./database_scan --type oracle --host 192.168.1.100:1521 --user system --password pass --database ORCL --proxy socks5://user:[email protected]:1080
③ 带代理扫描内网 Oracle 数据库
./database_scan --type oracle --host 192.168.1.100:1521 --user system --password pass --database ORCL --proxy socks5://user:[email protected]:1080
④ 解析 fscan 资产批量扫描(渗透常用)
./database_scan --type redis --host 127.0.0.1 --port 6379 --password redis123 --output redis-risk.xlsx
⑤ Redis 缓存敏感 Key 扫描
./database_scan --type redis --host 127.0.0.1 --port 6379 --password redis123 --output redis-risk.xlsx
2。 GUI 启动说明
编译后自带 GUI 程序,macOS 打开提示安全拦截执行命令放行:
sudo xattr -rd com.apple.quarantine /路径/database_scan_gui.app
Windows/Linux 直接双击运行,可视化创建多任务、批量管理扫描目标。
七、工具使用注意事项
- 默认完整展示原始敏感数据样本,若需降低数据暴露风险,扫描参数添加
--mask开启内容脱敏; - 扫描生产业务库建议控制
--workers并发数,避免大量查询拖慢业务性能; - 代理地址包含
@ / :等特殊符号时,账号密码需做 URL 编码; - 仅用于企业自有资产安全自查、授权渗透测试,禁止用于未授权目标扫描,遵守网络安全相关法律法规;
- macOS GUI 首次打开会触发系统隔离限制,需执行官方提供的 quarantine 解除命令。
github:https://github.com/RuoJi6/database\_scan
鹏组安全社区站:您身边的安全专家-情报 | 攻防 | 渗透 | 线索 | 资源社区
扫码关注
社区
鹏组安全社区:comm.pgpsec.cn
专注网络技术与骇客的一个综合性技术性交流与资源分享社区
老用户续费88折扣
社区首页
互助中心
免责声明
由于传播、利用本公众号鹏组安全所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号鹏组安全及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!
好文分享收藏赞一下最美点在看哦
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论