兔源码网 - 专注DZ模版分享、DZ插件分享!

 找回密码
 立即注册

QQ登录

只需一步,快速开始

广告
温馨提示:本站所有DZ相关模板、插件、教程(包括DZ应用中心已下架插件、模板)皆为提供免费下载,无任何收费模式(不包括VIP版块非DZ资源,VIP版块需充值兔币购买会员组方可下载),用户仅需手动前往【申请下载权限】申请用户组下载权限即可,如本站没有您需要的插件或模板,请自行前往淘宝互站网送吗网等第三方站点搜索相关插件或模板进行低价格购买下载本站非常不建议用户浪费金钱前往DZ应用中心购买。

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

[复制链接]
tuyuanma 发表于 2019-5-23 11:56:32 | 显示全部楼层 |阅读模式
温馨提醒:禁止内容附带广告图片、二维码图片,否则将在不通知情况下永久禁言账号!
欢迎加入兔源码站长交流群,您的加入是我们前行的动力!

DZ站长建站交流群:493651246

[ 温馨提示:点击上方群文字,可快速加入QQ群 ]


Discuz!系统的_xss_check()函数原本的意义是为了论坛安全,防止XSS攻击,一般网站使用是不会出现什么问题的,但是有些网站要接入第三方接口,当第三方接口向本站post数据的时候就会报"您当前的访问请求当中含有非法字符,已经被系统拒绝",本文介绍一种简单的修改方法避免此错误。
0 y* G9 q* E$ p$ @9 `. _/ k+ R! h5 h$ C! B
解决方案如下:
# n4 M  O5 v3 N4 z5 j/ G- t: E" P1 B! \9 V& I! J" Q4 ?+ G  ^( o6 l
\source\class\discuz的discuz_application.php+ x+ j/ t$ \. D% `1 t' B
查找
  1. private function _xss_check() {6 _( p& |1 a) \  o
  2.         static $check = array('"', '>', '<', '\'', '(', ')', 'CONTENT-TRANSFER-ENCODING');
    1 o+ G" g) H  |. i7 H5 K/ p
  3.         if(isset($_GET['formhash']) && $_GET['formhash'] !== formhash()) {
    $ e% |  ?  z8 P! W
  4.                         system_error('request_tainting');. ]8 D6 {6 d0 P7 i
  5.         }
    # g9 P* u6 v, e- J3 x( y/ `5 K
  6.         if($_SERVER['REQUEST_METHOD'] == 'GET' ) {  V, f# q  k" d7 ^
  7.                         $temp = $_SERVER['REQUEST_URI'];
    $ n  f, }: J4 p: U0 m+ |) G
  8.         } elseif(empty ($_GET['formhash'])) {  m1 F1 j, ~3 j" j
  9.                         $temp = $_SERVER['REQUEST_URI'].file_get_contents('php://input');
    2 ^+ b6 P+ x1 ^8 ^+ B
  10.         } else {, ^7 y( k( [. Y; k+ S
  11.                         $temp = '';
    * l1 j4 L1 H: I
  12.         }
    , ~/ v' y: B5 O" }: ?
  13.         if(!empty($temp)) {9 B: C  k8 P" w: y! \5 A, o
  14.                 $temp = strtoupper(urldecode(urldecode($temp)));
    1 o$ ]* p6 I' D  j
  15.                 foreach ($check as $str) {) x. |, i2 }* X( E2 z9 y1 k3 ~
  16.                                 if(strpos($temp, $str) !== false) {
    - W3 p; E) o7 Y: l
  17.                                                 system_error('request_tainting');
    ( ]7 A# W. w0 U
  18.                                 }& }  ~' |& {/ q# q; P
  19.                 }
    ; r6 V; i, m* D
  20.         }
    6 @( f* I8 }9 u' v
  21.         return true;# a6 @' m1 H$ k% F4 w
  22. }
复制代码
替换为:$ ^# O. z, c* E4 a
  1. private function _xss_check() {
    , Z  p+ Y9 v' R$ D' O0 T3 B" E
  2.         $temp = strtoupper(urldecode(urldecode($_SERVER['REQUEST_URI'])));
    ' Z, ^9 E0 E3 U1 u: Y! @
  3.         if(strpos($temp, '<') !== false || strpos($temp, '"') !== false || strpos($temp, 'CONTENT-TRANSFER-ENCODING') !== false) {4 Q4 d5 G9 T6 ^" b3 a
  4.                         system_error('request_tainting');1 u9 V8 p2 Q6 E
  5.         }
    # a5 y, i+ E! u& B- C+ a/ }
  6.         return true;
    / p! E' ]9 {; U7 E$ L- F
  7. }
复制代码

版权声明
1、转摘或引用本站内容资源须注明原网址,并标明本站网址(兔源码www.tuyuanma.com);
2、对于转摘或引用本站内容资源而引起的民事纠纷、行政处罚或其他损失,本站不承担责任;
3、对于不遵守本声明或其他违法、恶意使用本站内容者,本站保留其追究法律责任的权利。




自动排版 | 高级模式
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广告

兔源码网 ( 赣ICP备17001544号 公网安备36112102000036号 )

兔源码 QQ交流群:493651246  GMT+8, 2019-6-18 07:14
←站长统计工具 查看密码:tuyuanma

兔源码DZ模板下载 站长邮箱:tuyuanma@qq.com 站长QQ:3197813386 网站地图

© 2001-2013 本站内容皆来自互联网及用户分享,如需删除请提供软著或商标证书。

     
快速回复 返回顶部 返回列表