Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/CHINA-china/Unauthorized
前端未授权访问检测工具,自动提取JS泄露的接口进行测试。
https://github.com/CHINA-china/Unauthorized
hack hacks python3 security security-tools unauthorized
Last synced: 21 days ago
JSON representation
前端未授权访问检测工具,自动提取JS泄露的接口进行测试。
- Host: GitHub
- URL: https://github.com/CHINA-china/Unauthorized
- Owner: CHINA-china
- Created: 2023-03-07T08:25:36.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2023-08-25T13:52:45.000Z (over 1 year ago)
- Last Synced: 2024-08-05T17:43:41.450Z (4 months ago)
- Topics: hack, hacks, python3, security, security-tools, unauthorized
- Language: Python
- Homepage:
- Size: 745 KB
- Stars: 31
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-hacking-lists - CHINA-china/Unauthorized - 前端未授权访问检测工具,自动提取JS泄露的接口进行测试。 (Python)
README
# Unauthorized
### 一款高效率的前端未授权访问检测工具
![logo](https://github.com/CHINA-china/Unauthorize/blob/master/static/logo.png?raw=true)
## 免责声明
- 工具仅可用作学习,以及经过授权的渗透测试,否则后果自负。## 工具特点
- 内置常见高频未授权访问路径字典
- 自动从前端js文件中提取泄露的接口进行测试
- 采用selenium框架实现对“#”传参网址的测试## 环境搭建
- **安装依赖库**
```
pip install -r requirements.txt
```- **下载浏览器driver驱动**
- 查看浏览器版本
![chrome](https://github.com/CHINA-china/Unauthorize/blob/master/static/picture/Install/chrome.png?raw=true)
- 下载对应版本驱动(若没有对应版本,可下载相近版本)
```
下载地址:https://registry.npmmirror.com/binary.html?path=chromedriver/
```![chrome](https://github.com/CHINA-china/Unauthorize/blob/master/static/picture/Install/drive1.png?raw=true)
![chrome](https://github.com/CHINA-china/Unauthorize/blob/master/static/picture/Install/drive2.png?raw=true)
- 将driver移动到python3根目录
![chrome](https://github.com/CHINA-china/Unauthorize/blob/master/static/picture/Install/python3.png?raw=true)## 使用
- **简单使用**
- ❌使用姿势-->直接传入域名
- ✔使用姿势-->将需要测试的网址先用浏览器访问一遍,再复制地址传入
```
cd Unauthorized
python Unauthorized.py -u http://example.com
```
- **扩展使用**- 自定义常见未授权路径字典
```
将需要添加的路径按格式添加到dict目录下的dict.txt即可
参数解释:
"info":提示信息。
"method":请求方法。
"url":测试未授权访问的路径。
"state":响应码,作为判断未授权的条件之一。
"re":正则匹配关键字,作为判断未授权的条件之一。
```
- 不匹配某些js、path
```
将需要去除的js关键字加入到key目录下的JsKey.txt即可
将需要去除的path关键字加入到key目录下的PathKey.txt即可
```- 设置超时时间(-t,默认为0.5秒)
```
cd Unauthorized
python Unauthorized.py -u http://example.com -t 3# 该参数会影响到检测结果,请根据网页打开速度的快慢适当调节
# 当网址打开较慢时可将超时间调大,确保网址正常打开
```- 设置线程数量(-T,默认为50线程)
```
cd Unauthorized
python Unauthorized.py -u http://example.com -T 100
```
- 只检测字典内路径(-c,程序会爬取path依次与字典内url拼接)
```
cd Unauthorized
python Unauthorized.py -u http://example.com -c
```- 对单个js内泄露的path检测(-d,程序会将path与参数值拼接)
```
cd Unauthorized
# 网站为 http://example.com 普通格式
python Unauthorized.py -u http://example.com/js/test.js -d http://example.com
# 网站为 http://example.com/#/login #号格式
python Unauthorized.py -u http://example.com/js/test.js -d http://example.com/#
# 网站为 http://example.com/web/ 目录格式
python Unauthorized.py -u http://example.com/js/test.js -d http://example.com/web
```- **效果展示**
![demo1](https://github.com/CHINA-china/Unauthorize/blob/master/static/picture/demo/demo1.png?raw=true)
![demo2](https://github.com/CHINA-china/Unauthorize/blob/master/static/picture/demo/demo2.png?raw=true)## 更新
v20230825
1. 优化了输出结果。
2. 新增只对字典内路径进行拼接测试。v20230325
1. 优化了path匹配正则。
2. 新增对单个js文件内的path未授权测试。v20230319
1. 修复一些问题,增加进度条可视化。v20230315
1. 增加自定义超时时间、线程数量功能。
2. 增加自定义关键字功能,程序将不匹配含关键字的js、path。v20230308
1. 优化js提取,解决js重复提取问题。
2. 去除自定义字典功能,新增自动输出html报告功能。## 引用
- 默认字典来自以下优秀项目:
1. RouteVulScan (https://github.com/F6JO/RouteVulScan)