AllainDB/Brokerscan
GitHub: AllainDB/Brokerscan
扫描 30+ 数据中介网站检测个人信息暴露并提供退出链接的隐私管理工具。
Stars: 0 | Forks: 0
# BrokerScan
**数据中介暴露扫描器。** 检查 30 个数据中介网站以查找您的个人信息,并记录退出 (opt-out) 链接,以便您快速采取行动。
专为那些厌倦了每隔几个月就要对相同网站重新进行退出操作的注重隐私的用户而构建。
## 功能
- 扫描 30 个已知的数据中介(人物搜索、B2B/招聘、背景调查、聚合器)
- 检测您的姓名 + 城市是否出现在列表中
- 将带有时间戳的结果记录到本地 SQLite 数据库中
- 为发现您信息的任何网站显示直接退出链接
- 重新扫描调度程序:标记需要在 90 天后重新检查的中介
- 将结果导出为 CSV
## 文件
| 文件 | 用途 |
|------------------|----------------------------------------------|
| `brokerscan.py` | 核心扫描器 — 基于 Playwright,CLI |
| `index.html` | Dashboard UI — 演示模式,离线可用 |
| `brokerscan.db` | 自动创建的 SQLite 数据库 |
## 设置
```
pip install playwright rich sqlite-utils
playwright install chromium
```
## 用法
**基本扫描:**
```
python brokerscan.py --name "John Doe" --city "Miami" --state "FL"
```
**完整资料扫描:**
```
python brokerscan.py \
--name "John Doe" \
--city "Miami" \
--state "FL" \
--email "john@example.com" \
--phone "3055550000"
```
**仅高优先级中介:**
```
python brokerscan.py --name "John Doe" --city "Miami" --state "FL" --priority HIGH
```
**导出为 CSV:**
```
python brokerscan.py --name "John Doe" --city "Miami" --state "FL" --export results.csv
```
**仅扫描需要进行复查的网站(距离上次扫描超过 90 天):**
```
python brokerscan.py --name "John Doe" --city "Miami" --state "FL" --due-only
```
## 状态值
| 状态 | 含义 |
|-----------|--------------------------------------------------|
| `FOUND` | 在此中介网站上检测到您的信息 |
| `CLEAN` | 未检测到列表 |
| `BLOCKED` | 网站返回 CAPTCHA 或频率限制响应 |
| `ERROR` | 超时或导航失败 |
## 中介优先级等级
| 优先级 | 示例 | 重要性 |
|----------|--------------------------------------------------|-----------------------------------|
| HIGH | ZoomInfo, Spokeo, Whitepages, Acxiom, Intelius | 面向招聘人员,被广泛抓取 |
| MED | FastPeopleSearch, Pipl, Epsilon, CoreLogic | 影响范围适中 |
| LOW | ClustrMaps, AnyWho, Xlek, Classmates | 流量较低但仍然会汇总数据 |
## 局限性
- **CAPTCHAs**:许多高优先级中介(ZoomInfo, Spokeo)会阻止自动化请求。`BLOCKED` 状态意味着您需要手动检查。
- **电子邮件验证**:大多数退出流程需要电子邮件确认——自动化只能帮您到达表单,而无法替您完成提交。
- **重新列出**:中介通常会重新添加已删除的数据。请每 90 天重新扫描一次。使用 `--due-only` 跳过已检查过的网站。
- **漏报**:如果中介重构了其 HTML,选择器可能会遗漏列表。请将 `CLEAN` 视为“未检测到”,而不是“绝对没有被列出”。
## 法律声明 (佛罗里达州)
佛罗里达州的 **Digital Bill of Rights (FDBR)**(2024 年 7 月生效)赋予您以下权利:
- 请求删除您个人数据的权利
- 选择退出数据销售的权利
- 通过佛罗里达州总检察长办公室进行执法
如果中介无视已验证的删除请求,请向 [myfloridalegal.com](https://www.myfloridalegal.com/) 提交投诉。
对于不需要的电话/短信,请向 FTC 的 [reportfraud.ftc.gov](https://reportfraud.ftc.gov/) 提交报告,并在 [donotcall.gov](https://www.donotcall.gov/) 注册。
## 路线图
- [ ] 阶段 2:为非 CAPTCHA 网站自动填写退出表单
- [ ] 阶段 3:电子邮件监控 — 检测“您的退出请求已处理”的确认邮件
- [ ] 阶段 4:通过 cron 计划重新扫描 + 电子邮件摘要
- [ ] Web UI:通过 Flask/FastAPI 将 Dashboard 连接到实时的 Python 后端
## 技术栈
- Python 3.10+
- [Playwright](https://playwright.dev/python/) — 浏览器自动化
- [Rich](https://github.com/Textualize/rich) — 终端输出
- SQLite — 本地扫描历史
- 原生 HTML/CSS/JS — Dashboard UI
标签:BeEF, C++, Playwright, Python, SQLite, 后端开发, 数据擦除, 无后门, 爬虫, 特征检测, 网络安全, 逆向工具, 隐私保护