Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ph4ntonn/Behold3r
👻Behold3r -- 收集指定网站的子域名,并可监控指定网站的子域名更新情况,发送变更报告至指定邮箱
https://github.com/ph4ntonn/Behold3r
cybersecurity information pentest-tool pentesting python redis redteam security-tools subdomain subdomain-scanner
Last synced: 21 days ago
JSON representation
👻Behold3r -- 收集指定网站的子域名,并可监控指定网站的子域名更新情况,发送变更报告至指定邮箱
- Host: GitHub
- URL: https://github.com/ph4ntonn/Behold3r
- Owner: ph4ntonn
- License: mit
- Created: 2019-09-20T10:04:08.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2020-01-03T08:59:17.000Z (almost 5 years ago)
- Last Synced: 2024-08-05T17:38:35.328Z (4 months ago)
- Topics: cybersecurity, information, pentest-tool, pentesting, python, redis, redteam, security-tools, subdomain, subdomain-scanner
- Language: Python
- Homepage:
- Size: 8.94 MB
- Stars: 35
- Watchers: 4
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-hacking-lists - ph4ntonn/Behold3r - 👻Behold3r -- 收集指定网站的子域名,并可监控指定网站的子域名更新情况,发送变更报告至指定邮箱 (Python)
README
# Behold3r
Behold3r是一个子域名收集工具,因为受到了sublert的启发,就想着写点小玩意自娱自乐hhh(仓促写成,远不够完善,持续改进中.....)
# 环境需求
RedisPython3
# 使用截图
(以下是最初的截图,当前查询来源已经增加,懒得再截图了hhh)对7k7k网站进行子域名收集,并检活后存放结果至redis中
![1](https://github.com/phantom11235/Behold3r/blob/master/example/1.png)
对7k7k网站进行子域名收集,不进行检活也不放入redis,仅展示
![2](https://github.com/phantom11235/Behold3r/blob/master/example/2.png)
将7k7k网站加入监控列表,并指定使用163邮箱接受监控邮件
![3](https://github.com/phantom11235/Behold3r/blob/master/example/3.png)
收到邮件提醒
![4](https://github.com/phantom11235/Behold3r/blob/master/example/4.png)
# 文件描述
Behold3r.py为主程序config.py为配置文件,redis相关配置、线程数配置及未来功能的配置都存放在此文件
其中包括邮箱设置:
sender:发件人邮箱
authcode:发件人授权码(在邮箱设置中可以找到)
receiver:收件人邮箱
Email.py 为邮件发送代码
# 参数设置
-u --url:设置要查找的域名,形如:```python Beholder.py -u http://www.example.com```-s --search:设置要查找的域名但不执行收集的操作,仅仅只是从redis数据库中查找保存的对应域名的子域名的历史数据,形如:```python Beholder.py -s http://www.example.com```
-o --output:将查询结果导出为txt文件, 需要与-s、-u等选项联用,不可单独使用(导出文件名为域名.txt)
-c --confirm:设置是否要对查找出来的子域名进行查活操作,形如:```python Beholder.py -u http://www.example.com -c```
-r --redis:设置是否需要将查找出来的子域名用redis进行保存,默认不保存。形如:```python Beholder.py -u http://www.example.com -r```
(注意,当-r参数与-c参数连用时,只保存存活的子域名)
-t --timeout:设置查活操作线程的超时时间,默认为5s-l --listing:显示所有正在被监控的域名,单独使用,不能和其他参数联用
-f --flush:移除指定邮箱下的所有监控域名,需要与-e选项联用,类似于-d选项
-p --pop:设置需要从监控列表里移除的域名,需要与-e选项联用,类似于-d选项
-e --email:设置接受监控信息的邮箱(现仅支持qq以及163邮箱),具体参数:-e 163(使用163邮箱) -e qq(使用qq邮箱)注意,此选项必须与-d选项联用
-d --domain:设置需要监控的域名,形如:```-d http://www.4399.com``` 注意,此选项必须与-e选项联用
如果-e与-d选项联用,形如:```python Beholder.py -d http://www.4399.com -e 163```(即监控```http://www.4399.com```,监控邮件发送至163邮箱,具体邮箱地址及授权码配置请至config.py文件中配置,授权码教程(以qq为例):https://service.mail.qq.com/cgi-bin/help?subtype=1&id=28&no=1001256)
# 注意事项
若使用了域名监控功能,请手动使用crontab -e 命令将其变为定时任务(不知道这是啥的请自行百度。。。):添加的内容类似如下:
\* * * * * cd ~/code/Beholder && python Beholder.py -x
(前面五个 * 号表示每过一分钟执行,不知道使用方法者请自行百度。之后的cd语句只需改成你代码所在的目录即可)
如上设置,即可在邮箱中每分钟收到一次子域名变化信息
(Important!!!!!!!!!!!!!!!)另外,使用了域名监控功能时请保持redis服务器正常运行,且在设置定时任务之前执行一次 python Beholder.py -u (你要监控的域名) -c -r 获得初始数据
PS: 163邮箱如使用海外ip,可能导致无法接收邮件,请使用qq邮箱接收(后期会加上gmail邮箱)
# Todo:加入更多好用的子域名查询来源
。。。。。。。。