name: "sqlmap" command: "sqlmap" enabled: true # 简短描述(用于工具列表,减少token消耗) short_description: "自动化SQL注入检测和利用工具,用于发现和利用SQL注入漏洞" # 工具详细描述 description: | 自动化SQL注入检测和利用工具,用于发现和利用SQL注入漏洞。 **主要功能:** - 自动检测SQL注入漏洞 - 支持多种数据库类型(MySQL, PostgreSQL, Oracle, MSSQL等) - 自动提取数据库信息(表、列、数据) - 支持多种注入技术(布尔盲注、时间盲注、联合查询等) - 支持文件上传/下载、命令执行等高级功能 **使用场景:** - Web应用安全测试 - SQL注入漏洞检测 - 数据库信息收集 - 渗透测试和漏洞验证 **注意事项:** - 仅用于授权的安全测试 - 某些操作可能对目标系统造成影响 - 建议在测试环境中先验证 - 使用 --batch 参数避免交互式提示 # 参数定义 parameters: - name: "url" type: "string" description: | 目标URL,包含可能存在SQL注入的参数。 **格式要求:** - 完整的URL,包含协议(http:// 或 https://) - 必须包含查询参数,参数值用 * 标记注入点 - 或者直接提供完整的URL,sqlmap会自动检测参数 **示例值:** - 标记注入点: "http://example.com/page?id=1*" - 完整URL: "http://example.com/page?id=1" - POST数据: "http://example.com/login" (需要配合data参数) - Cookie注入: "http://example.com/page" (需要配合cookie参数) **注意事项:** - URL必须可访问 - 确保URL格式正确,包含协议前缀 - 如果使用POST请求,需要配合data参数 - 必需参数,不能为空 required: true flag: "-u" format: "flag" - name: "batch" type: "bool" description: | 非交互模式,自动选择默认选项,不需要用户输入。 **使用场景:** - 自动化测试脚本 - 批量扫描 - 避免交互式提示 **注意事项:** - 建议始终设置为true,避免工具等待用户输入 - 默认值为true required: false default: true flag: "--batch" format: "flag" - name: "level" type: "int" description: | 测试级别,范围1-5,级别越高测试越全面但耗时越长。 **级别说明:** - Level 1: 基本测试,快速但可能遗漏漏洞 - Level 2: 默认级别,平衡速度和覆盖率 - Level 3: 扩展测试,更全面的检测 - Level 4: 深度测试,包含更多payload - Level 5: 最全面测试,包含所有已知技术 **建议:** - 快速扫描使用1-2 - 常规测试使用3(默认) - 深度测试使用4-5 **注意事项:** - 级别越高,请求数量越多,可能被WAF拦截 - 默认值为3 required: false default: 3 flag: "--level" format: "combined" # --level=3 - name: "data" type: "string" description: | POST数据字符串,用于POST请求的SQL注入检测。 **格式:** - 表单数据格式,例如: "username=admin&password=123" - JSON格式,例如: '{"username":"admin","password":"123"}' **注意事项:** - 如果URL使用POST方法,需要提供此参数 - 参数值中的注入点用 * 标记 required: false flag: "--data" format: "flag" - name: "cookie" type: "string" description: | Cookie字符串,用于Cookie注入检测。 **格式:** - 标准Cookie格式,例如: "sessionid=abc123; user=admin" **注意事项:** - 如果存在Cookie注入,需要提供此参数 required: false flag: "--cookie" format: "flag" - name: "additional_args" type: "string" description: | 额外的SQLMap参数。用于传递未在参数列表中定义的SQLMap选项。 **示例值:** - "--dbs": 列出所有数据库 - "--tables -D database": 列出指定数据库的表 - "--dump -D database -T table": 导出表数据 - "--os-shell": 获取操作系统shell - "--risk 2": 风险级别(1-3) - "--threads 10": 并发线程数 - "--tamper space2comment": 使用tamper脚本绕过WAF **注意事项:** - 多个参数用空格分隔 - 确保参数格式正确,避免命令注入 - 此参数会直接追加到命令末尾 required: false format: "positional"