🔍 检测规则清单

Discuz! 插件代码扫描器 - 全面覆盖安全、规范与兼容性检测

46
检测规则总数
12
安全性检测
15
Discuz! 规范
11
PHP8 兼容性
8
代码质量

一、安全性检测(12 项)

# 规则名称 检测内容 风险等级
1 CSRF 跨站请求伪造检测 检测数据库/文件写操作未验证 formhash,存在 CSRF 风险 🔴 严重
2 危险函数检测 检测 eval/assert/create_function 等代码执行函数 🔴 严重
3 $_REQUEST 超全局变量检测 检测使用 $_REQUEST 混合 GET/POST/COOKIE 数据 🔴 严重
4 XSS 输出检测 检测直接输出 HTML 内容未转义 🟡 中等
5 已弃用 GPC 方式检测 检测使用 $_G['gp_xxx'] 获取请求数据 🟡 中等
6 SQL 注入风险检测 检测字符串拼接 SQL 语句 🟡 中等
7 Header 跳转后未退出检测 检测 header() 跳转后未调用 exit 🟡 中等
8 submitcheck() 使用检测 检测 submitcheck() 使用不当 🟡 中等
9 用户 UID 验证检测 检测缺少用户 UID 验证 🟡 中等
10 非标准数组键检测 检测非标准数组键访问 🟡 中等
11 全局钩子查询检测 检测全局钩子中执行数据库查询 🟡 中等
12 extract() 函数检测 检测 extract() 函数可能导致变量覆盖 🟡 中等

二、Discuz! 规范检测(15 项)

# 规则名称 检测内容 优先级
13 ADMINSCRIPT 常量检测 检测使用 admin.php 而非 ADMINSCRIPT 常量 PASS1
14 HTTP_HOST 检测 检测直接使用 $_SERVER['HTTP_HOST'] PASS1
15 绝对 URL 检测 检测使用绝对 URL 路径 PASS1
16 钩子异步代码检测 检测钩子函数中使用异步代码 PASS1
17 curl 函数检测 检测原生 curl 函数,应使用 dfsockopen() PASS1
18 调试代码检测 检测 print_r/var_dump 等调试代码未清理 PASS1
19 动态包含检测 检测动态 include/require PASS1
20 钩子返回值检测 检测钩子函数缺少返回值 PASS1
21 IN_ADMINCP 常量检测 检测后台文件缺少 IN_ADMINCP 检测 PASS1
22 IN_DISCUZ 常量检测 检测缺少 IN_DISCUZ 常量检测 PASS1
23 PHP4 构造函数检测 检测 PHP4 风格构造函数 PASS1
24 preg_replace /e 描述符检测 检测 preg_replace 中使用/e 描述符(PHP7 废弃) PASS1
25 setcookie() 函数检测 检测直接调用 setcookie() 函数 PASS1
26 表名前缀检测 检测表名未使用 DB::table() 包装 PASS1
27 循环查询检测 检测循环中执行数据库查询 PASS1

三、PHP8 兼容性检测(11 项)

# 规则名称 检测内容 PHP8 变更
28 数组下标引号检测 检测数组下标未加引号(PHP8 Warning) ⚠️ Warning
29 未定义常量检测 检测使用未定义常量(PHP8 Warning) ⚠️ Warning
30 构造函数属性提升检测 检测 PHP8 构造函数属性提升语法 ❌ 不兼容
31 联合类型检测 检测联合类型声明 (Type1|Type2) ❌ 不兼容
32 空安全操作符检测 检测空安全操作符 (?->) ❌ 不兼容
33 match 表达式检测 检测 match 表达式 ❌ 不兼容
34 命名参数检测 检测命名参数 ❌ 不兼容
35 Attributes 注解检测 检测 PHP8 Attributes 注解语法 ❌ 不兼容
36 新增字符串函数检测 检测 str_contains/str_starts_with/str_ends_with ❌ 不兼容
37 可变变量检测 检测可变变量 ($$var) ⚠️ 严格模式
38 字符串连接优先级检测 检测字符串连接运算符优先级变化 ⚠️ 行为变更

四、代码质量与维护性检测(8 项)

# 规则名称 检测内容 影响
39 HTML 绝对 URL 检测 检测 HTML 中使用绝对 URL 可维护性
40 HTML 输出后退出检测 检测 HTML 输出后未退出 逻辑完整性
41 HTML 非 ASCII 字符检测 检测 HTML 中包含非 ASCII 字符 编码规范
42 PHP 非 ASCII 字符检测 检测 PHP 文件包含非 ASCII 字符 编码规范
43 install.php 检测 检测 install.php 中的问题 安装脚本规范
44 缓存文件检测 检测缓存文件保存问题 性能优化
45 上传文件检测 检测上传文件处理问题 安全性
46 uninstall.php 检测 检测 uninstall.php 卸载脚本问题 卸载规范