Discuz搜索报错

Discuz! System Error

Time: 2022-02-16 04:45:55 +0000 IP: 113.72.211.179 BackTraceID: 066b5104fb973d1ded8a4b2809ff27f4

您当前的访问请求当中含有非法字符,已经被系统拒绝

PHP Debug

Line: 0022\]search.php(discuz_application-\>init) \[Line: 0072\]source/class/discuz/discuz_application.php(discuz_application-\>_init_misc) \[Line: 0600\]source/class/discuz/discuz_application.php(discuz_application-\>_xss_check) \[Line: 0373\]source/class/discuz/discuz_application.php(system_error) \[Line: 0023\]source/function/function_core.php(discuz_error::system_error) \[Line: 0024\]source/class/discuz/discuz_error.php(discuz_error::debug_backtrace) ## **解决方法** ### **source/class/discuz/discuz_application.php** ##### 步骤 1:定位并替换 `_xss_check()` 函数 搜索下面的代码 static $check = array('"', '>', '<', '\'', '(', ')', 'CONTENT-TRANSFER-ENCODING'); **在代码下面新增(直接复制以下代码)** // 新增:放行 search.php 的搜索请求(核心修复) if(CURSCRIPT === 'search' || basename($_SERVER['SCRIPT_NAME']) === 'search.php') { // 仅拦截明显的XSS攻击字符,放行正常搜索关键词 $danger_pattern = '/、<` 等的普通搜索关键词。 2. **保留原有安全** :除了 `search.php` 外,其他页面(如登录、发帖、后台)仍使用原有的严格检查逻辑,不会降低论坛整体安全性。 3. **兼容性**:适配 Discuz! X3.5 的 CURSCRIPT 常量和 SCRIPT_NAME 两种判断方式,避免服务器环境差异导致失效。

相关推荐
云边云科技_云网融合5 小时前
AI 时代组网新范式:零信任软件定义组网,让连接更安全更灵活
网络·安全
简单点了5 小时前
全栈编程基础知识7
运维·服务器·网络
实心儿儿6 小时前
Linux —— 进程控制 - mini shell
linux·运维·服务器
房开民6 小时前
modbus相关学习
网络·学习
程序员黄老师6 小时前
Windows文件移动到Linux上的坑
linux·运维·服务器
mounter6256 小时前
【内核前沿】Linux IPC 迎来大变局?POSIX 消息队列增强、io_uring IPC 与 Bus1 十年回归
linux·运维·服务器·kernel·ipc·io_uring
2603_954708317 小时前
如何确保微电网标准化架构设计流程的完整性?
网络·人工智能·物联网·架构·系统架构
网络小白不怕黑7 小时前
2.1VMware部署Windows_server_2008_R2
运维·服务器
Bruce_Liuxiaowei8 小时前
Windows防火墙规则导出工具:让安全配置可备份、可迁移、可审计
运维·windows·安全·网络安全
liuyunshengsir9 小时前
linux 下新增用户后无法使用TAB补全功能的最佳解决方法
linux·运维·服务器