---
title: 异常SQL检测
description: "本安全检测是对SQL语句进行检测，分析是否具有高危特征，最后对高危事件进行日志记录。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengcctrustzone/tee/ragsecgate/kunpengrag_16_0003.html
sourcePath: /source/zh/kunpengcctrustzone/tee/ragsecgate/kunpengrag_16_0003.html
indexId: 7399885940e0141903c0b8fa7332b4269c2470c196b5f9423f96d3baec86baf968
---
# 异常SQL检测

本安全检测是对SQL语句进行检测，分析是否具有高危特征，最后对高危事件进行日志记录。

1. 基于静态规则的高危SQL指令检测： 本SDK基于数据库SQL语法结构及DCL（Data Control Language）、DDL（Data Definition Language）、DML（Data Manipulation Language）及高斯数据库指令语法定义黑名单规则。SQL高危指令检测基于SQL语法结合黑名单规则采用正则表达式方式自动识别高危指令，在运行过程中直接拦截高危SQL指令。
2. 基于语义分析的恶意SQL检测：SQL词法分析（SQL Lexical Analysis）是编译器技术中的一个过程，它将SQL代码分解成基本的词素（tokens）。词法分析器读取输入的SQL代码，并将其分解成标记，如关键字、标识符、操作符、常量等。这些标记是语法分析的基础。

#### dbsd_type.h中的结构体介绍


**表1 消息结构体**

| 域类型 | 域名称 | 说明 |
| --- | --- | --- |
| unsigned int | userId | 用户ID |
| unsigned int | sqlStatementLen | 待检SQL长度 |
| char \* | sqlStatement | 待检SQL |
| char \* | userAddress | 用户IP地址 |


**表2 内存管理结构体**

| 域类型 | 域名称 | 说明 |
| --- | --- | --- |
| MemAlloc | memAlloc | 内存申请 |
| MemFree | memFree | 内存释放 |
