-
Notifications
You must be signed in to change notification settings - Fork 129
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #18 from ki9mu/dev
Dev
- Loading branch information
Showing
64 changed files
with
358 additions
and
348 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,171 @@ | ||
## ARL(Asset Reconnaissance Lighthouse)资产侦察灯塔系统 | ||
[](https://www.python.org/) | ||
[](https://hub.docker.com/r/tophant/arl) | ||
[](https://github.com/TophantTechnology/ARL/issues) | ||
[](https://github.com/TophantTechnology/ARL/stargazers) | ||
|
||
资产灯塔,不仅仅是域名收集 | ||
|
||
### 简介 | ||
|
||
旨在快速侦察与目标关联的互联网资产,构建基础资产信息库。 | ||
协助甲方安全团队或者渗透测试人员有效侦察和检索资产,发现存在的薄弱点和攻击面。 | ||
|
||
在开始使用之前,请务必阅读并同意[免责声明](Disclaimer.md)中的条款,否则请勿下载安装使用本系统。 | ||
|
||
### 特性 | ||
1. 域名资产发现和整理 | ||
2. IP/IP 段资产整理 | ||
3. 端口扫描和服务识别 | ||
4. WEB 站点指纹识别 | ||
5. 资产分组管理和搜索 | ||
6. 任务策略配置 | ||
7. 计划任务和周期任务 | ||
8. Github 关键字监控 | ||
9. 域名/IP 资产监控 | ||
10. 站点变化监控 | ||
11. 文件泄漏等风险检测 | ||
12. nuclei PoC 调用 | ||
13. [WebInfoHunter](https://tophanttechnology.github.io/ARL-doc/function_desc/web_info_hunter/) 调用和监控 | ||
|
||
### 系统要求 | ||
|
||
目前暂不支持Windows,初次体验可采用Docker方式运行,长期使用建议采用源码安装方式运行。系统配置建议:CPU:4线程 内存:8G 带宽:10M。 | ||
由于自动资产发现过程中会有大量的的发包,建议采用云服务器可以带来更好的体验。 | ||
|
||
### Docker 启动 | ||
|
||
|
||
``` | ||
cd /opt/ | ||
mkdir docker_arl | ||
wget -O docker_arl/docker.zip https://github.com/TophantTechnology/ARL/releases/download/v2.6.2/docker.zip | ||
cd docker_arl | ||
unzip -o docker.zip | ||
docker volume create arl_db | ||
docker compose pull | ||
docker compose up -d | ||
``` | ||
|
||
|
||
Ubuntu 下可以直接执行 `apt-get install docker.io docker-compose -y` 安装相关依赖 | ||
|
||
详细说明可以参考: [Docker 环境安装 ARL](https://tophanttechnology.github.io/ARL-doc/system_install/) | ||
|
||
### 截图 | ||
|
||
1. 登录页面 | ||
默认端口5003 (https), 默认用户名密码admin/arlpass | ||
 | ||
|
||
2. 任务页面 | ||
 | ||
|
||
3. 子域名页面 | ||
 | ||
|
||
4. 站点页面 | ||
 | ||
|
||
5. 资产监控页面 | ||
 | ||
详细说明可以参考:[资产分组和监控功能使用说明](https://github.com/TophantTechnology/ARL/wiki/%E8%B5%84%E4%BA%A7%E5%88%86%E7%BB%84%E5%92%8C%E7%9B%91%E6%8E%A7%E5%8A%9F%E8%83%BD%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E) | ||
|
||
6. 策略页面 | ||
 | ||
|
||
7. 筛选站点进行任务下发 | ||
 | ||
详细说明可以参考: [2.3-新添加功能详细说明](https://github.com/TophantTechnology/ARL/wiki/ARL-2.3-%E6%96%B0%E6%B7%BB%E5%8A%A0%E5%8A%9F%E8%83%BD%E8%AF%A6%E7%BB%86%E8%AF%B4%E6%98%8E) | ||
|
||
8. 计划任务 | ||
 | ||
详细说明可以参考: [2.4.1-新添加功能详细说明](https://github.com/TophantTechnology/ARL/wiki/ARL-2.4.1-%E6%96%B0%E6%B7%BB%E5%8A%A0%E5%8A%9F%E8%83%BD%E8%AF%A6%E7%BB%86%E8%AF%B4%E6%98%8E) | ||
|
||
9. GitHub 监控任务 | ||
 | ||
|
||
### 任务选项说明 | ||
| 编号 | 选项 | 说明 | | ||
| --- | -------------- | -------------------------------------------------------------------------------- | | ||
| 1 | 任务名称 | 任务名称 | | ||
| 2 | 任务目标 | 任务目标,支持IP,IP段和域名。可一次性下发多个目标 | | ||
| 3 | 域名爆破类型 | 对域名爆破字典大小, 大字典:常用2万字典大小。测试:少数几个字典,常用于测试功能是否正常 | | ||
| 4 | 端口扫描类型 | ALL:全部端口,TOP1000:常用top 1000端口,TOP100:常用top 100端口,测试:少数几个端口 | | ||
| 5 | 域名爆破 | 是否开启域名爆破 | | ||
| 6 | DNS字典智能生成 | 根据已有的域名生成字典进行爆破 | | ||
| 7 | 域名查询插件 | 已支持的数据源为13个,`alienvault`, `certspotter`,`crtsh`,`fofa`,`hunter` 等 | | ||
| 8 | ARL 历史查询 | 对arl历史任务结果进行查询用于本次任务 | | ||
| 9 | 端口扫描 | 是否开启端口扫描,不开启站点会默认探测80,443 | | ||
| 10 | 服务识别 | 是否进行服务识别,有可能会被防火墙拦截导致结果为空 | | ||
| 11 | 操作系统识别 | 是否进行操作系统识别,有可能会被防火墙拦截导致结果为空 | | ||
| 12 | SSL 证书获取 | 对端口进行SSL 证书获取 | | ||
| 13 | 跳过CDN | 对判定为CDN的IP, 将不会扫描端口,并认为80,443是端口是开放的 | | ||
| 14 | 站点识别 | 对站点进行指纹识别 | | ||
| 15 | 搜索引擎调用 | 利用搜索引擎搜索下发的目标爬取对应的URL和子域名 | | ||
| 16 | 站点爬虫 | 利用静态爬虫对站点进行爬取对应的URL | | ||
| 17 | 站点截图 | 对站点首页进行截图 | | ||
| 18 | 文件泄露 | 对站点进行文件泄露检测,会被WAF拦截 | | ||
| 19 | Host 碰撞 | 对vhost配置不当进行检测 | | ||
| 20 | nuclei 调用 | 调用nuclei 默认PoC 对站点进行检测 ,会被WAF拦截,请谨慎使用该功能 | | ||
| 21 | WIH 调用 | 调用 WebInfoHunter 工具在JS中收集域名,AK/SK等信息 | | ||
| 22 | WIH 监控任务 | 对资产分组中的站点周期性 调用 WebInfoHunter 工具在JS中域名等信息进行监控 | | ||
|
||
### 配置参数说明 | ||
|
||
Docker环境配置文件路径 `docker/config-docker.yaml` | ||
|
||
| 配置 | 说明 | | ||
| ----------------- | ------------------------------------ | | ||
| CELERY.BROKER_URL | rabbitmq连接信息 | | ||
| MONGO | mongo 连接信息 | | ||
| QUERY_PLUGIN | 域名查询插件数据源Token 配置 | | ||
| GEOIP | GEOIP 数据库路径信息 | | ||
| FOFA | FOFA API 配置信息 | | ||
| DINGDING | 钉钉消息推送配置 | | ||
| EMAIL | 邮箱发送配置 | | ||
| GITHUB.TOKEN | GITHUB 搜索 TOKEN | | ||
| ARL.AUTH | 是否开启认证,不开启有安全风险 | | ||
| ARL.API_KEY | arl后端API调用key,如果设置了请注意保密 | | ||
| ARL.BLACK_IPS | 为了防止SSRF,屏蔽的IP地址或者IP段 | | ||
| ARL.PORT_TOP_10 | 自定义端口,对应前端端口测试选项 | | ||
| ARL.DOMAIN_DICT | 域名爆破字典,对应前端大字典选项 | | ||
| ARL.FILE_LEAK_DICT | 文件泄漏字典 | | ||
| ARL.DOMAIN_BRUTE_CONCURRENT | 域名爆破并发数配置 | | ||
| ARL.ALT_DNS_CONCURRENT | 组合生成的域名爆破并发数 | | ||
| PROXY.HTTP_URL | HTTP代理URL设置 | | ||
| FEISHU | 飞书消息推送配置 | | ||
| WXWORK | 企业微信消息推送 | | ||
|
||
|
||
### 忘记密码重置 | ||
|
||
当忘记了登录密码,可以执行下面的命令,然后使用 `admin/admin123` 就可以登录了。 | ||
``` | ||
docker exec -ti arl_mongodb mongo -u admin -p admin | ||
use arl | ||
db.user.drop() | ||
db.user.insert({ username: 'admin', password: hex_md5('arlsalt!@#'+'admin123') }) | ||
``` | ||
|
||
|
||
### 源码安装 | ||
|
||
仅仅适配了 centos 7 ,且灯塔安装目录为/opt/ARL | ||
如果在其他目录可以创建软连接,且安装了四个服务分别为`arl-web`, `arl-worker`, `arl-worker-github`, `arl-scheduler` | ||
|
||
``` | ||
wget https://raw.githubusercontent.com/TophantTechnology/ARL/master/misc/setup-arl.sh | ||
chmod +x setup-arl.sh | ||
./setup-arl.sh | ||
``` | ||
|
||
|
||
### FAQ | ||
|
||
请访问如下链接[FAQ](https://tophanttechnology.github.io/ARL-doc/faq/) | ||
|
||
### 写在最后 | ||
|
||
目前ARL仅仅只是完成了对资产的部分维度的发现和收集,自动发现过程中难免出现覆盖度不全、不精准、不合理等缺陷的地方还请反馈至我们。 | ||
|
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,51 +1,26 @@ | ||
# ARL-plus-docker | ||
基于(https://github.com/TophantTechnology/ARL/) | ||
基于ARL-V2.6.2版本自研 | ||
ARL的安装这里就不多赘述了,可以看这里 https://github.com/ki9mu/ARL-plus-docker/blob/dev/ARL-README.md | ||
|
||
(新版本正在写,敬请关注) | ||
# 2.8.0版本以后无oneforall,如需要oneforall可以使用之前的版本 | ||
|
||
# 原版更新方式 | ||
进入原版的arl/docker目录,删除原版容器,直接删除即可,数据是存放在volume里,会直接更新到新版 | ||
```docker-compose down``` | ||
|
||
然后拉取本项目,启用即可 | ||
```docker-compose up -d``` | ||
|
||
修改OneForAll相关配置文件 | ||
|
||
# 新版更新方式 | ||
到本项目路径下`git pull` | ||
|
||
然后```docker-compose up -d``` | ||
# 免责声明 | ||
如果您下载、安装、使用、修改本系统及相关代码,即表明您信任本系统。在使用本系统时造成对您自己或他人任何形式的损失和伤害,我们不承担任何责任。 如您在使用本系统的过程中存在任何非法行为,您需自行承担相应后果,我们将不承担任何法律及连带责任。 请您务必审慎阅读、充分理解各条款内容,特别是免除或者限制责任的条款,并选择接受或不接受。 除非您已阅读并接受本协议所有条款,否则您无权下载、安装或使用本系统。您的下载、安装、使用等行为即视为您已阅读并同意上述协议的约束。 | ||
|
||
# 新增功能 | ||
### 新增OneForAll √ | ||
 | ||
### 新增中央数据库 √ | ||
使用中央数据库需要外联站点,私聊我加ip白名单,否则该功能无法使用 | ||
|
||
 | ||
|
||
### 智能子域名优化 √ | ||
改了下altDNS | ||
|
||
# Q&A | ||
Q: 什么是中央数据库 | ||
|
||
A: A设备对域名abc.com扫描,发现了子域名aaa.abc.com,会将aaa子域名上传至中央数据库。B设备在进行子域名爆破的时候,会拉取中央数据库中的子域。如果同时也在扫描abc.com,基本子域名不会遗漏。(为啥加这个功能,我发现ARL很多次扫描子域结果都不太一样,也不知道是咋回事,变多还可以理解,变少就不应该吧) | ||
|
||
Q: 如何确定自己是否在中央数据库白名单里 | ||
|
||
A: 随便开启一个域名的扫描,看`domain_brute: 300`属性是否比较大,一般是几百,如果个位数或者十几秒就结束了,说明数据库连接失败了。 | ||
|
||
Q: 如何使用OneForAll | ||
|
||
A: 文件目录下有个oneforall-config文件夹,修改其中配置即可 | ||
|
||
Q: 为什么扫描aaa.abc.com会出现bbb.abc.com | ||
|
||
A: 因为OneForAll的API接口设置,输入aaa.abc.com会有响应bbb.abc.com,介意的话关闭OneForAll模块即可(目前对oneforall结果进行了过滤,已无该bug) | ||
|
||
Q: 任务为什么有时候会卡死 | ||
|
||
A: 多种原因。可以看下当前目录下arl_web.log/arl_worker.log日志文件是否过大,删除容器及日志文件重新拉取项目。启用oneforall的时候可能导致该问题。低配置服务器运行也可能导致该问题(本人是4c4g基本正常使用) | ||
1. 中央数据库,上传子域名数据,或拉取子域名数据 | ||
2. 修改了rabbitmq的超时时间,可能重型任务不会挂?(实测4c8g跑qq.com,跑了1个月都没挂,最终跑完了,如果还挂应该是服务器配置不行,加钱解决一切问题) | ||
3. 没了...(有需求提issue,视情况开发) | ||
|
||
# 中央数据库介绍 | ||
默认关闭 | ||
开启方式: | ||
``` | ||
vim config-docker.yaml | ||
# 最底部的center_option设置为true即可,默认为false | ||
# 如果有不想上传的扫描,可以在扫描前设置为false,执行docker-compose restart重启容器,扫描完成后再改回true并重启容器即可。 | ||
``` | ||
|
||
# 写在最后 | ||
n久没写了,几乎重写,难顶 | ||
|
||
# 团队微信 | ||
 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +0,0 @@ | ||
|
||
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +0,0 @@ | ||
|
||
Oops, something went wrong.