域名联系人查找工具。输入一个域名,就能通过12个被动来源并行获取与之关联的所有邮箱、用户名和线索。
$ python disclo.py gitlab.com
disclo -> gitlab.com
----------------------------------------------------------------------
[hackerone]
https://hackerone.com/gitlab (url) <- Direct H1 handle match
[nvd_cve]
[email protected] (email) <- CVE sourceIdentifier (CVE-2021-22262)
[security.txt]
https://hackerone.com/gitlab/ (url)
https://about.gitlab.com/security/disclosure/ (url)
[twitter]
https://twitter.com/gitlab (twitter) <- GitLab - Build software faster...
Total: 30 contacts found
git clone https://github.com/Chaelsoo/disclo
cd disclo
pip install -r requirements.txt
python disclo.py <domain>
示例:
python disclo.py example.com
python disclo.py tawk.to
python disclo.py speakylink.com
自动读取,无需额外标志。
| 变量 | 作用 |
|---|---|
GITHUB_TOKEN | 提高 GitHub API 速率限制(5000 请求/小时 对比 60) |
LINKEDIN_USER + LINKEDIN_PASS | 通过会话 API 启用 LinkedIn 联系人丰富 |
TWITTER_BEARER_TOKEN | 启用 Twitter v2 API 搜索 |
export GITHUB_TOKEN=ghp_xxxxxxxxxxxx
python disclo.py target.com
email - 邮箱地址url - 平台或公告链接twitter - Twitter/X 用户名linkedin - LinkedIn 个人资料github - GitHub 个人资料other - 人员姓名disclo/
├── disclo.py
├── requirements.txt
├── disclo/
│ ├── core/
│ │ ├── runner.py # 异步编排器
│ │ ├── store.py # 联系人去重
│ │ └── utils.py # 邮箱验证
│ ├── sources/ # 每个数据源一个文件
│ │ ├── security_txt.py
│ │ ├── security_page.py
│ │ ├── dns_records.py
│ │ ├── crtsh.py
│ │ ├── hackerone.py
│ │ ├── github.py
│ │ ├── npm.py
│ │ ├── jobs.py
│ │ ├── nvd.py
│ │ ├── twitter.py
│ │ ├── sitecrawl.py
│ │ └── appstore.py
│ └── output/
│ └── printer.py
新增来源:在 disclo/sources/mysource.py 中创建一个 async def run(client, domain, store) 函数,然后将其导入并添加到 disclo/core/runner.py 中。
| 来源 | 获取内容 |
|---|
security.txt | 联系邮箱和网址 |
security_page | 从 /security、/contact、/about 页面提取的邮箱 |
dns_dmarc | 从 DMARC rua/ruf 记录中提取的邮箱 |
crtsh | 嵌入在证书 CN/签发者字段中的邮箱 |
hackerone | HackerOne 和 Bugcrowd 项目页面 |
github | 组织成员邮箱、SECURITY.md 链接 |
npm / pypi | 包维护者邮箱 |
job_posting | Lever 和 Greenhouse 上的职位链接 |
nvd_cve | CVE sourceIdentifier 邮箱、HackerOne/Bugcrowd 引用 |
twitter | 通过 syndication API(无需认证)获取的用户名 |
sitecrawl | 基于站点地图爬取得到的邮箱和作者姓名 |
appstore | 通过包 ID 匹配的 App Store 开发者信息 |