bateMD/exchange-spray
GitHub: bateMD/exchange-spray
针对 Microsoft Exchange Autodiscover 端点的轻量级密码喷射安全测试工具,支持 NTLM 认证和 Telegram 实时通知推送。
Stars: 1 | Forks: 0
# Exchange Spray - 密码喷射工具
## 介绍
Exchange Spray 是一款针对 Microsoft Exchange Server 的轻量级安全测试工具(密码喷射)。
## 功能特性
- **密码喷射攻击**:支持带有延迟的暴力破解,以避免账户被锁定
- **NTLM 认证**:支持 Exchange Server 的 NTLM 认证
- **并发处理**:多线程处理,支持自定义并发数
- **Telegram 通知**:发现有效账户时通过 Telegram 实时发送通知
- **代理支持**:支持为请求配置代理
- **自动发现**:自动检测 Exchange endpoint
- **速率限制**:在一定次数的尝试后自动延迟,以避免被检测
- **轻量级**:无需数据库 - 结果将直接发送至 Telegram
## 安装说明
### 1. 克隆仓库
```
git clone
cd exchange-spray
```
### 2. 安装依赖
```
go mod download
```
## 配置说明
### 1. 从模板创建配置文件
```
cp config.example.yaml config.yml
```
### 2. 配置参数
编辑 `config.yml` 文件:
```
environment: development
exchange_spray:
endpoint:
- "https://mail.example.com/autodiscover/autodiscover.xml"
delay: 15m
concurrency: 16
consecutive: 3 # x consecutive attempts then delay
verbose: false
insecure: false
proxy_url: ""
user_agent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36"
username_list: "./dict/username.txt"
password_list: "./dict/password.txt"
notify:
type: telegram
bot_token: your_bot_token_here
chat_id: your_chat_id_here
interval: 0s
```
### 4. 配置 Telegram Bot
1. 通过 [@BotFather](https://t.me/BotFather) 创建一个新 bot
2. 获取 Bot Token
3. 获取 Chat ID:
- 向你的 bot 发送一条消息
- 访问:`https://api.telegram.org/bot/getUpdates`
- 从响应中获取 `chat.id`
## 使用说明
### 运行工具
```
# 直接运行
go run main.go
# 或构建并运行
go build -o exchange-spray.exe
./exchange-spray.exe
```
## 工作原理
1. **启动**:工具读取配置并连接到 Telegram
2. **发送启动通知**:通过 Telegram 发送包含配置信息的消息
3. **密码喷射**:
- 从本地文件读取用户名和密码列表
- 通过速率限制尝试每个组合
- 每完成 `consecutive` 次尝试后,延迟 `delay` 时长
- 使用 `concurrency` 个 goroutine 进行并行处理
4. **发送结果**:当发现有效账户时:
- 记录到控制台
- 通过 Telegram 发送包含凭证的通知
5. **完成**:测试完所有组合后结束
## 输出格式
当发现有效账户时,你将收到包含以下内容的 Telegram 通知:
- 📝 用户名
- 🔑 密码
- 📊 HTTP 状态码
- ⏰ 时间戳
- 🎯 Endpoint 类型
## 参考链接
- [Microsoft Exchange AutoDiscover](https://docs.microsoft.com/en-us/exchange/client-developer/exchange-web-services/autodiscover-for-exchange)
- [NTLM Authentication](https://docs.microsoft.com/en-us/windows/win32/secauthn/microsoft-ntlm)
标签:Autodiscover, EVTX分析, Go语言, NTLM认证, Telegram通知, VEH, 代理支持, 企业安全, 告警, 字典攻击, 安全测试, 密码喷射, 微软Exchange, 攻击性安全, 日志审计, 程序破解, 网络安全, 网络资产管理, 自动发现, 轻量级工具, 邮件安全, 限速, 隐私保护