github.com/chainreactors/fingers@v1.2.1/cmd/README.md (about) 1 # CMD 工具集 2 3 Fingers 库提供了一系列命令行工具,用于指纹验证、测试和转换等操作。 4 5 ## 可用工具 6 7 ### validate - 指纹验证工具 8 9 **位置**: `cmd/validate/` 10 **功能**: 验证 fingers 和 alias 格式文件的语法正确性 11 12 **主要特性**: 13 - 支持 fingers 指纹文件验证 14 - 支持 alias 别名文件验证 15 - 生成 JSON Schema 16 - 详细的错误报告和统计 17 18 **快速使用**: 19 ```bash 20 cd cmd/validate 21 # 验证指纹文件 22 go run main.go -engine fingers fingerprints.yaml 23 # 验证别名文件 24 go run main.go -engine alias aliases.yaml 25 # 查看帮助 26 go run main.go -help 27 ``` 28 29 ### test - 指纹测试工具 30 31 **位置**: `cmd/test/` 32 **功能**: 对实际目标进行指纹检测和验证 33 34 **主要特性**: 35 - 通用指纹检测 36 - Alias 配置测试 37 - 目标覆盖功能 38 - 指纹匹配验证 39 - 详细的测试报告 40 41 **快速使用**: 42 ```bash 43 cd cmd/test 44 # 通用指纹检测 45 go run main.go -target https://nginx.org -detect-all 46 # Alias测试 47 go run main.go -alias aliases.yaml -name nginx_test 48 # 查看帮助 49 go run main.go -help 50 ``` 51 52 ### transform - 数据转换工具 53 54 **位置**: `cmd/transform/` 55 **功能**: 转换不同格式的指纹数据 56 57 **主要特性**: 58 - 支持多种指纹格式转换 59 - 批量处理能力 60 - 数据清洗和标准化 61 62 **快速使用**: 63 ```bash 64 cd cmd/transform 65 go run transform.go [options] 66 ``` 67 68 ### nmap - Nmap 服务探测 69 70 **位置**: `cmd/nmap/` 71 **功能**: 基于 Nmap service-probes 的服务指纹识别 72 73 **主要特性**: 74 - TCP/UDP 服务探测 75 - 基于 nmap-service-probes 数据库 76 - 端口服务识别 77 78 **快速使用**: 79 ```bash 80 cd cmd/nmap 81 go run nmap.go [target] [port] 82 ``` 83 84 ### engine - 引擎示例 85 86 **位置**: `cmd/engine/` 87 **功能**: 展示如何使用 Fingers 引擎的示例代码 88 89 **主要特性**: 90 - 引擎初始化示例 91 - Web 指纹检测示例 92 - Service 指纹检测示例 93 94 **快速使用**: 95 ```bash 96 cd cmd/engine 97 go run example.go 98 ``` 99 100 ## 工具链使用流程 101 102 ### 1. 开发阶段 103 使用 `validate` 工具验证指纹文件格式: 104 ```bash 105 cd cmd/validate 106 go run main.go -engine fingers new_fingerprints.yaml 107 ``` 108 109 ### 2. 测试阶段 110 使用 `test` 工具测试指纹准确性: 111 ```bash 112 cd cmd/test 113 go run main.go -alias test_aliases.yaml -name new_fingerprint_test 114 ``` 115 116 ### 3. 部署阶段 117 集成到应用程序中使用 Fingers 引擎进行实际检测。 118 119 ## 注意事项 120 121 - 所有工具都支持 `-help` 参数查看详细使用说明 122 - 工具需要在对应目录下运行,或使用完整路径 123 - 部分工具需要网络连接进行实际测试 124 - 建议在测试环境中先验证功能后再用于生产环境 125 126 ## 贡献 127 128 如需添加新的命令行工具,请: 129 1. 在 `cmd/` 下创建新目录 130 2. 实现相应功能 131 3. 添加使用文档 132 4. 更新本 README 文件