Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/knownsec/LSpider
LSpider 一个为被动扫描器定制的前端爬虫
https://github.com/knownsec/LSpider
python3 security spider
Last synced: 21 days ago
JSON representation
LSpider 一个为被动扫描器定制的前端爬虫
- Host: GitHub
- URL: https://github.com/knownsec/LSpider
- Owner: knownsec
- License: mit
- Created: 2021-01-19T07:00:57.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2022-11-10T10:57:23.000Z (about 2 years ago)
- Last Synced: 2024-08-05T17:45:16.492Z (4 months ago)
- Topics: python3, security, spider
- Language: Python
- Homepage:
- Size: 484 KB
- Stars: 342
- Watchers: 12
- Forks: 54
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-hacking-lists - knownsec/LSpider - LSpider 一个为被动扫描器定制的前端爬虫 (Python)
README
# LSpider
LSpider - 一个为被动扫描器定制的前端爬虫
# 什么是LSpider?
一款为被动扫描器而生的前端爬虫~
由Chrome Headless、LSpider主控、Mysql数据库、RabbitMQ、被动扫描器5部分组合而成。
(1) 建立在Chrome Headless基础上,将模拟点击和触发事件作为核心原理,通过设置代理将流量导出到被动扫描器。
(2) 通过内置任务+子域名api来进行发散式的爬取,目的经可能的触发对应目标域的流量。
(3) 通过RabbitMQ来进行任务管理,支持大量线程同时任务。
(4) 智能填充表单,提交表单等。
(5) 通过一些方式智能判断登录框,并反馈给使用者,使用者可以通过添加cookie的方式来完成登录。
(6) 定制了相应的Webhook接口,以供Webhook统计发送到微信。
(7) 内置了Hackerone、bugcrowd爬虫,提供账号的情况下可以一键获取某个目标的所有范围。
### 为什么选择LSpider?
LSpider是专门为被动扫描器定制的爬虫,许多功能都是为被动扫描器而服务的。
建立在RabbitMQ的任务管理系统相当稳定,可以长期在无人监管的情况下进行发散式的爬取。
### LSpider的最佳实践是什么?
**服务器1(2c4g以上)**: Nginx + Mysql + Mysql管理界面(phpmyadmin)
将被动扫描器的输出位置设置为web路径下,这样可以通过Web同时管理结果以及任务。
LSpider部署5线程以上,设置代理连接被动扫描器(被动扫描器可以设置专门的漏扫代理)
**服务器2**(非必要,但如果部署在服务器1,那么就需要更好的配置):RabbitMQ
### 还有什么问题?
LSpider从设计之初是为了配合像xray这种被动扫描器而诞生的,但可惜的是,在工具发展的过程中,深刻认识到爬虫是无法和被动扫描器拆分开来的。
强行将应该在被动扫描器实现的功能在爬虫端实现简直是舍本逐末,所以我们发起了另一个被动扫描器项目,如果有机会,后续还会开源出来给大家。
### 设计思路?
[为被动扫描器量身打造一款爬虫-LSpider](https://lorexxar.cn/2021/01/28/lspider-design/)
# Usage
[安装&使用](./docs/init.md)
你可以通过下面的命令来测试是否安装成功
```
python3 manage.py SpiderCoreBackendStart --test
```通过dockerfile安装(不推荐的安装模式)
```
cd ./dockerdocker-compose up -d
```[dockerfile 安装&使用](./docker/readme.md)
**使用dockerfile安装,推荐修改其中必要的配置信息以避免安全漏洞诞生。**
**值得注意的是,以下脚本可能会涉及到项目路径影响,使用前请修改相应的配置**
建议配合screen来挂起进程
启动LSpider webhook 与漏洞展示页面(默认端口2062)
```
./lspider_webhook.sh
```启动LSpider
```
./lspider_start.sh
```完全关闭LSpider
```
./lspider_stop.sh
```启动被动扫描器
```
./xray.sh
```# 一些关键的配置
[配置说明](./docs/config.md)
# 如何配置扫描任务 以及 其他的配置相关
其中包含了如何配置扫描任务、鉴权信息、webhook。
值得注意的是,文中提到的Cookie配置,格式为浏览器请求包复制即可。
[如何配置扫描任务 以及 其他的配置相关](./docs/manage.md)
扫描器结果输出到配置文件相同目录(默认为vuls/),则可以通过web界面访问。
![](./docs/6.png)
# 使用内置的hackerone、bugcrowd爬虫获取目标
使用hackerone爬虫,你需要首先配置好hackerone账号
```
python3 .\manage.py HackeroneSpider {appname}
```
![](./docs/4.png)同理,bugcrowd使用
```
python3 .\manage.py BugcrowdSpider {appname}
```![](./docs/5.png)
# Contributors
感谢如下贡献者对本工具发展过程中的贡献:
- [QGW](https://github.com/qboy0000)
# 404StarLink
![](https://github.com/knownsec/404StarLink-Project/raw/master/logo.png)LSpider 是 404Team [星链计划](https://github.com/knownsec/404StarLink-Project)中的一环,如果对LSpider有任何疑问又或是想要找小伙伴交流,可以参考星链计划的加群方式。
- [https://github.com/knownsec/404StarLink-Project#community](https://github.com/knownsec/404StarLink-Project#community)