yogsec/CorsScanner
GitHub: yogsec/CorsScanner
一个用于自动化检测 Web 应用 CORS 配置错误的安全 Bash 脚本工具。
Stars: 4 | Forks: 2
# CorsScanner
CorsScanner 是一个强大且高效的 Bash 脚本,旨在检测 Web 应用程序中的跨域资源共享(CORS)漏洞。CORS 配置错误可能导致严重的安全风险,包括未经授权的数据访问和利用。CorsScanner 帮助您有效识别和解决这些漏洞。

## 问题陈述
CORS 是 Web 应用程序中的一个关键机制,用于允许或限制不同源之间的资源共享。CORS 头部配置错误可能导致:
- 向未授权的源暴露敏感数据。
- 允许不安全的 HTTP 方法,如 `PUT` 或 `DELETE`。
- 允许攻击者绕过同源策略(SOP)。
手动检测这些问题可能耗时且容易出错。开发者和安全研究人员需要一种工具来自动化这一过程,同时保持准确性。
## 解决方案
CorsScanner 自动化检测给定 URL 列表中的 CORS 漏洞。它检查以下内容:
- `Access-Control-Allow-Origin` 头部中的通配符 `*`。
- `Access-Control-Allow-Origin` 头部中是否反射了源。
- `Access-Control-Allow-Methods` 头部中的不安全方法,如 `PUT` 或 `DELETE`。
- `Access-Control-Allow-Headers` 中是否允许所有头部。
- `Access-Control-Allow-Credentials` 中凭证的误用。
通过并发处理,CorsScanner 确保快速且可靠的结果,而不会牺牲质量。
## 功能
- **横幅显示**:启动时显示用户友好的横幅。
- **并发执行**:同时处理多个 URL 以提高速度。
- **详细检测**:检查 CORS 配置错误的多个方面。
- **可定制**:易于适应不同的使用场景。
## 使用方法
### 先决条件
- Bash(大多数 Linux 和 macOS 系统已预装)。
- `curl` 命令行工具。
### 安装
1. 克隆仓库:
git clone https://github.com/YogSec/CorsScanner.git
cd CorsScanner
2. 使脚本可执行:
chmod +x cors.sh
### 用法
#### 显示帮助部分
```
./cors.sh -h
```
输出:
```
##########################################
# CorsScanner #
# CORS Vulnerability Scanner #
##########################################
Usage: ./cors.sh [OPTIONS]
Options:
-h Show help section.
-w Execute the code with the specified wordlist path.
-s Save the output to the specified file.
-v Show script version.
```
#### 使用单词列表执行脚本
提供一个包含要检查的 URL 列表的文件:
```
./cors.sh -w path/to/wordlist
```
示例:
```
./cors.sh -w urls.txt
```
#### 将输出保存到文件
指定要保存输出的文件:
```
./cors.sh -w path/to/wordlist -s output.txt
```
示例:
```
./cors.sh -w urls.txt -s results.txt
```
#### 显示版本
```
./cors.sh -v
```
## 示例
### 示例单词列表
**urls.txt**:
```
https://example.com
https://test.com
https://vulnerable.com
```
### 示例输出
运行:
```
./cors.sh -w urls.txt
```
输出:
```
https://vulnerable.com has CORS misconfiguration: wildcard (*) in Access-Control-Allow-Origin
https://test.com reflects the origin in Access-Control-Allow-Origin
https://example.com allows unsafe methods in Access-Control-Allow-Methods: DELETE
https://vulnerable.com allows credentials with Access-Control-Allow-Credentials: true
```
## 好处
- **提高安全性**:快速识别和解决 CORS 漏洞。
- **节省时间**:自动化繁琐的手动过程。
- **可扩展**:高效处理大量 URL 列表。
- **可定制**:修改脚本以满足特定测试需求。
## 关于我
嗨!我是 Abhinav Singwal,一名安全研究员,致力于帮助社区保护他们的应用程序。欢迎您与我联系:
- 邮箱:[abhinavsingwal@gmail.com](mailto:abhinavsingwal@gmail.com)
- LinkedIn:[https://www.linkedin.com/in/cybersecurity-pentester/](https://www.linkedin.com/in/cybersecurity-pentester/)
## 支持
如果您发现 CorsScanner 有用,请考虑通过购买一杯咖啡来支持我的工作:
[](https://buymeacoffee.com/yogsec)
标签:Access-Control-Allow-Credentials, Access-Control-Allow-Headers, Access-Control-Allow-Methods, Access-Control-Allow-Origin, CORS, URL发现, Web安全, Wildcard, 反射漏洞, 同源策略, 威胁情报, 安全检测, 安全漏洞, 应用安全, 开发者工具, 开源安全工具, 蓝队分析, 跨域资源共享, 逆向工程平台