vmfunc/sif
GitHub: vmfunc/sif
sif 是一个用 Go 编写的模块化渗透测试工具包,整合了子域名枚举、目录扫描、端口探测、漏洞检测等多种侦察能力,支持单命令一键扫描和自定义 YAML 模块扩展。
Stars: 445 | Forks: 26
[](https://go.dev/)
[](https://github.com/vmfunc/sif/actions)
[](LICENSE)
[](https://aur.archlinux.org/packages/sif)
[](https://search.nixos.org/packages?query=sif)
[](https://github.com/vmfunc/homebrew-sif)
[](https://cloudsmith.io/~sif/repos/deb/packages/)
[](https://discord.gg/sifcli)
**[安装](#install) · [使用](#usage) · [模块](#modules) · [文档](docs/) · [贡献](#contribute)**
## sif 是什么?
sif 是一个用 Go 编写的模块化渗透测试工具包。它旨在快速、并发且可扩展。只需一条命令即可对目标运行多种扫描类型。
```
./sif -u https://example.com -all
```
## 安装
### Homebrew (macOS)
```
brew tap vmfunc/sif
brew install sif
```
### Arch Linux (AUR)
使用你常用的 AUR 助手进行安装:
```
yay -S sif
# 或
paru -S sif
```
### Nix
```
# nixpkgs (声明式 — 添加到 configuration.nix 或 home-manager)
environment.systemPackages = [ pkgs.sif ];
# 或命令式
nix profile install nixpkgs#sif
# 或直接运行而不安装
nix run nixpkgs#sif -- -u https://example.com -all
```
如果你想从源码构建,该仓库也提供了 flake:
```
nix run github:vmfunc/sif
```
### Debian/Ubuntu (APT)
```
curl -1sLf 'https://dl.cloudsmith.io/public/sif/deb/setup.deb.sh' | sudo -E bash
sudo apt-get install sif
```
### 从 Releases 安装
从 [releases](https://github.com/vmfunc/sif/releases) 获取最新的二进制文件。
### 从源码构建
```
git clone https://github.com/vmfunc/sif.git
cd sif
make
```
需要 Go 1.23+
### AUR (手动安装)
```
git clone https://aur.archlinux.org/sif.git
cd sif
makepkg -si
```
## 使用
```
# 基础扫描
./sif -u https://example.com
# 目录 Fuzzing
./sif -u https://example.com -dirlist medium
# 子域名枚举
./sif -u https://example.com -dnslist medium
# 端口扫描
./sif -u https://example.com -ports common
# JavaScript 框架检测 + 云错误配置
./sif -u https://example.com -js -c3
# Shodan 主机情报 (需要 SHODAN_API_KEY 环境变量)
./sif -u https://example.com -shodan
# Securitytrails 域名发现 (需要 SECURITYTRAILS_API_KEY 环境变量)
# 发现子域名 + 关联域名,然后扫描所有域名
./sif -u https://example.com -securitytrails -headers
# SQL 侦察 + LFI 扫描
./sif -u https://example.com -sql -lfi
# 框架检测 (含 CVE 查询)
./sif -u https://example.com -framework
# 全部
./sif -u https://example.com -all
```
运行 `./sif -h` 查看所有选项。
## 模块
sif 采用模块化架构。模块通过 YAML 定义,用户可自行扩展。
### 内置扫描标志
| 标志 | 描述 |
|------|-------------|
| `-dirlist` | 目录和文件模糊测试 (small/medium/large) |
| `-dnslist` | 子域名枚举 (small/medium/large) |
| `-ports` | 端口扫描 (common/full) |
| `-nuclei` | 使用 nuclei 模板进行漏洞扫描 |
| `-dork` | 自动化 Google Dorking |
| `-js` | JavaScript 分析 |
| `-c3` | 云存储错误配置检测 |
| `-headers` | HTTP 头部分析 |
| `-st` | 子域名接管检测 |
| `-cms` | CMS 检测 |
| `-whois` | WHOIS 查询 |
| `-git` | 暴露的 Git 仓库检测 |
| `-shodan` | Shodan 查询 (需要 SHODAN_API_KEY) |
| `-securitytrails` | 域名发现 + 目标扩展 (需要 SECURITYTRAILS_API_KEY) |
| `-sql` | SQL 侦察 |
| `-lfi` | 本地文件包含 (LFI) |
| `-framework` | 框架检测及 CVE 查询 |
### YAML 模块
列出可用模块:
```
./sif -lm
```
运行特定模块:
```
# 按 ID 运行
./sif -u https://example.com -m sqli-error-based,xss-reflected
# 按 Tag 运行
./sif -u https://example.com -mt owasp-top10
# 运行所有模块
./sif -u https://example.com -am
```
### 自定义模块
在 `~/.config/sif/modules/` 中创建你自己的模块。模块使用类似于 nuclei 模板的 YAML 格式:
```
id: my-custom-check
info:
name: my custom security check
author: you
severity: medium
description: checks for something specific
tags: [custom, recon]
type: http
http:
method: GET
paths:
- "{{BaseURL}}/admin"
- "{{BaseURL}}/login"
matchers:
- type: status
status:
- 200
- type: word
part: body
words:
- "admin panel"
- "login"
condition: or
```
有关完整的模块格式,请参阅 [docs/modules.md](docs/modules.md)。
## 致谢
- [projectdiscovery](https://projectdiscovery.io/) 提供的 nuclei 及其他安全工具
- [shodan](https://www.shodan.io/) 提供的基础设施情报
BSD 3-clause 许可证 · 由 vmfunc, xyzeva 及贡献者制作
标签:Blazing Fast, EVTX分析, EVTX分析, EVTX分析, Go语言, 密码管理, 并发扫描, 插件系统, 攻击框架, 数据展示, 日志审计, 模块化设计, 程序破解, 红队, 网络安全, 网络安全审计, 自动化修复, 隐私保护