快速刷分!数据库敏感信息检索工具
RuoJi6
RuoJi6
HACK之道
2026年6月10日 08:47
重庆
在小说阅读器读本章
去阅读
工具介绍
database_scan 是一个 Go 编写的数据库敏感信息检索工具,用于检查开发数据库中是否存在手机号、身份证、地址、账号、密码、邮箱、银行卡、token/secret 等敏感信息。默认终端表格输出。
支持能力
- 数据库:MySQL/MariaDB/TiDB、MSSQL、PostgreSQL、Oracle,以及多种 MySQL/PostgreSQL 协议兼容国产数据库
- 代理:直连、SOCKS5、HTTP CONNECT
- 认证:命令行密码或隐藏交互输入
- 输出:连接信息、按表分组的敏感字段、存在行数和类似 SQL 查询结果的整行真实样例值
-
检索模式:
-
field-content:根据表/字段名定位敏感字段,再检索字段内容 -
field-name:只检索敏感表名/字段名 content:扫描字段内容-
all:执行全部模式 -
敏感级别:
-
high:身份证、密码/密钥、银行卡 -
medium:手机号、邮箱 low:地址、用户名/账号all:全部级别,默认值
支持数据库类型
- 原生支持:
mysql、mariadb、mssql、sqlserver、postgres、postgresql、oracle、go-ora、redis - MySQL 协议兼容:
tidb、oceanbase、oceanbase-mysql、polardb-mysql、doris、starrocks、gbase-mysql - PostgreSQL 协议兼容:
opengauss、gaussdb、kingbase、kingbasees、highgo、polardb-postgres - 默认端口:MySQL 协议族
3306,MSSQL1433,PostgreSQL 协议族5432,Oracle1521,Redis6379
Redis 会按 SCAN 枚举 key,并按类型读取 string、hash、list、set、zset 的样例内容。终端和 Excel 使用 Redis 专用输出结构,列为 Target、DB、Key、Type、TTL、Path/Field、Value、命中类型、敏感级别、判断依据;Excel 会生成 Redis 汇总 和 Redis Keys 两个 Sheet。
协议兼容数据库会复用 MySQL 或 PostgreSQL 的连接协议、代理拨号和元数据扫描方式。达梦 DM、GBase 8s、神通等需要专用驱动、ODBC、CGO 或无法确认代理拨号能力的数据库暂不内置,避免破坏当前多平台发布包。
效果预览
以下截图中的数据库、表名和敏感样例值均为演示数据,不包含真实生产信息。
GUI运行:
检索数据:
注意
默认会完整展示敏感样例值,用于截图证明数据存在;如需降低暴露风险,请加 --mask。 扫描过程中按 Ctrl+C 会停止后续扫描,并尽量输出和写入已经扫描完成的表结果。 GitHub Actions 仅在推送 v* tag 时触发自动测试、构建和 Release;普通 main push 不触发发布流程。 macOS 首次打开下载的 GUI 应用如提示无法打开,可执行:sudo xattr -rd com.apple.quarantine /path/to/database_scan_gui.app
项目地址
https://github.com/RuoJi6/database\_scan
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论