# SQL注入检测器

检测输入字符串中的常见SQL注入攻击模式

> 标准页面: https://elysiatools.com/zh/tools/sql-injection-detector

- **分类:** Security

- **关键词:** sql, injection, security, database, attack, detector, SQL Injection Detector

## 概述

### SQL注入检测器

此工具帮助识别输入中潜在的SQL注入漏洞：

**检测类别：**
- **SQL关键字**：SELECT、INSERT、UPDATE、DELETE、DROP、UNION、EXEC
- **SQL注释**：--、/*、*/、#
- **SQL运算符**：OR、AND、=、==、!=、<>
- **条件注入**：' OR '1'='1、" OR "1"="1
- **时间注入**：WAITFOR DELAY、SLEEP()、BENCHMARK()
- **布尔注入**：AND 1=1、OR 1=1
- **UNION注入**：UNION SELECT

**风险等级：**
- **低**：没有执行上下文的基本SQL关键字
- **中**：SQL运算符和条件模式
- **高**：高级注入技术（UNION、时间注入）
- **严重**：完整的可执行注入payload

**攻击模式示例：**
- `' OR '1'='1`
- `" OR "1"="1`
- `1' UNION SELECT NULL--`
- `'; DROP TABLE users; --`
- `' AND SLEEP(5)--`

**使用场景：**
- 在数据库查询前验证用户输入
- 扫描日志文件中的注入尝试
- 审查代码中的潜在漏洞
- 安全测试和渗透测试
- 学习SQL注入的教育工具

## 输入项

- **待分析文本** (textarea): Enter text or code to scan for SQL injection patterns...
- **区分大小写** (checkbox): Enable case-sensitive pattern matching
- **检查SQL注释** (checkbox): Detect SQL comment patterns (--, /*, */, #)
- **检查UNION注入** (checkbox): Detect UNION-based SELECT injection
- **检查时间注入** (checkbox): Detect time-based injection (WAITFOR DELAY, SLEEP, BENCHMARK)
- **检查布尔注入** (checkbox): Detect boolean-based injection patterns
- **白名单模式** (text): Patterns that should be considered safe (comma-separated)

## 适用场景

- 在将用户提交的表单数据或API请求参数传入数据库查询之前，需要快速验证其安全性。
- 审计系统日志、Web应用防火墙（WAF）拦截记录或异常流量，排查是否存在SQL注入攻击尝试。
- 进行安全渗透测试或代码审计，快速识别代码片段中硬编码的潜在SQL注入漏洞。

## 工作原理

- 在输入框中粘贴需要检测的文本、SQL查询语句或可疑的代码片段。
- 根据需要配置检测规则，如是否区分大小写，以及是否开启注释、UNION、时间或布尔注入的专项检测，并可设置白名单过滤安全模式。
- 工具通过内置的启发式规则和特征匹配算法对文本进行扫描，识别出匹配的攻击模式。
- 实时输出检测报告，标明发现的注入类型、匹配的特征字符以及相应的风险等级（低、中、高、严重）。

## 使用案例

- API输入验证测试：开发人员在部署接口前，模拟输入恶意Payload（如 ' OR '1'='1）测试检测器的识别率。
- 安全日志分析：安全运维人员批量导入Web服务器的访问日志，快速筛选出包含 UNION SELECT 或 SLEEP() 等高危攻击特征的请求。
- 教学与演示：网络安全讲师在课堂上演示不同类型的SQL注入原理，通过直观的风险分级帮助学生理解漏洞危害。

## 常见问题

### 这个工具能完全代替专业的Web应用防火墙（WAF）吗？

不能，它主要用于静态文本和代码片段的快速特征检测，建议与WAF及参数化查询结合使用。

### 什么是白名单模式，如何使用？

您可以输入以逗号分隔的安全SQL模式（如特定的SELECT语句），检测时将忽略这些符合白名单的文本，避免误报。

### 工具支持检测哪些类型的SQL注入？

支持检测SQL关键字、注释符、布尔注入、时间盲注、UNION联合查询注入以及常见的恒真条件注入。

### 为什么有些正常的SQL语句会被标记为低风险？

因为工具会识别SELECT、INSERT等标准SQL关键字，在没有执行上下文时，这些关键字通常会被归类为低风险提示。

### 检测过程会把我的数据上传到服务器吗？

不会，所有文本分析和特征匹配均在本地浏览器中安全运行，确保您的敏感代码和数据隐私。

## 相关工具

- [Mock Data 命名前缀 / 缩写冲突检测器](https://elysiatools.com/zh/tools/mock-data-naming-conflict-detector): 检测 CSV、JSON 或 schema 中视觉易混淆的字段名和前缀冲突，并给出更清晰的改名建议
- [XSS Payload检测器](https://elysiatools.com/zh/tools/xss-payload-detector): 检测输入字符串中的XSS（跨站脚本）攻击向量
- [BOM字符移除器](https://elysiatools.com/zh/tools/data-bom-remover): 从文本和文件内容中移除BOM（字节顺序标记）字符。非常适合清理有编码问题的文本文件、修复CSV导入和为处理准备数据。 功能特点： - 检测并移除UTF-8 BOM (EF BB BF) - 检测并移除UTF-16 BOM (FE FF 或 FF FE) - 检测并移除UTF-32 BOM (00 00 FE FF 或 FF FE 00 00) - 支持多种输入格式 - 可视化BOM字符显示 - 详细检测报告 - 支持批量文本处理 常见用途： - 修复CSV文件导入错误 - 清理文本文件编码问题 - 为JSON解析准备数据 - 修复XML解析问题 - 解决API数据编码冲突 - 标准化文本数据格式
- [数据噪声注入器](https://elysiatools.com/zh/tools/data-noise-injection): 向文本数据注入各种类型的噪声用于测试目的。非常适合压力测试数据处理系统、测试数据质量算法和创建真实的测试数据集。
- [去除重复行](https://elysiatools.com/zh/tools/remove-duplicate-lines): 对列表或文本块中的行去重。保留每行的首次或最后一次出现，支持区分大小写、比较前修剪空白和忽略空行。
- [结构化日志解析器](https://elysiatools.com/zh/tools/structured-log-analyzer): 自动识别常见日志格式，提取核心字段并推断字段类型，支持导出为 JSON、CSV 或 SQL。
- [AI Markdown 文章翻译器](https://elysiatools.com/zh/tools/ai-markdown-article-translator): 使用 AI 翻译整篇 Markdown 文章，并保留标题、表格、链接、图片与代码块结构，适合直接发布
- [声码器](https://elysiatools.com/zh/tools/audio-vocoder): 使用载波和调制器应用声码器效果

## 示例

- [SQL注入示例](https://elysiatools.com/zh/samples/sql-injections): 用于安全测试、漏洞评估和防御编码实践的SQL注入载荷教育集合
- [SQL 脚本示例](https://elysiatools.com/zh/samples/sql-samples): 各种场景和用例的 SQL 查询示例和数据库脚本
- [SQL 查看器样本](https://elysiatools.com/zh/samples/sql-viewer-samples): 用于浏览器内 SQL 查看器的样本文件
- [PostgreSQL 高级示例](https://elysiatools.com/zh/samples/postgresql-advanced): 高级 PostgreSQL 数据库示例，包括优化策略、复杂查询、索引和性能调优

## 相关内容

- [SQL 查询性能与完整性审查](https://elysiatools.com/zh/hubs/sql-query-review-performance-and-integrity): 围绕查询构建、JOIN、格式化、性能计划、注入风险、外键完整性和 schema 差异，形成可审批的 SQL 审查证据。
