52AV手機A片王|52AV.ONE

標題: 遊客站內搜尋的錯誤 [打印本頁]

作者: IT_man    時間: 2015-3-23 16:24
標題: 遊客站內搜尋的錯誤
本帖最後由 IT_man 於 2015-3-23 16:27 編輯 ; f& L; S  n- C
$ B% v4 I4 P: B& T. j3 m( }0 P
遊客站內搜尋時出現 error message :
% h* J" g% s5 Z7 K, k
( {1 y. s1 {& _# @: S' G' X
1 g* s( }+ L* [" S9 B' A, w7 P9 B1 E, L4 E
! j: x! a4 l4 x3 b
sol:$ [' [+ X& _! `. X8 H: Y+ F. P5 |; F
\source\class\discuz的discuz_application.php  約第350行# D. k$ y. P2 v. ?
查找# N5 S1 `1 i8 C0 d4 V* e/ ]
  1.         private function _xss_check() {/ }$ Y$ e: d( R) C
  2. & g0 i& D* i8 d# }1 X
  3.                 static $check = array('"', '>', '<', '\'', '(', ')', 'CONTENT-TRANSFER-ENCODING');
    / v+ D4 b- N$ ^4 ]+ {& n/ O
  4. ; G3 h' L8 D; B8 W0 X& f
  5.                 if(isset($_GET['formhash']) && $_GET['formhash'] !== formhash()) {! H5 `+ Z7 A6 @- ?) B; ~/ Q' E( w
  6.                         system_error('request_tainting');  v8 V+ f  g: P) L1 @# ^) ?: d
  7.                 }
    ) x! c8 D. m: }4 K4 ?: @

  8. 6 ^! t9 c" o4 j* {3 I. @% O8 q
  9.                 if($_SERVER['REQUEST_METHOD'] == 'GET' ) {+ n9 {1 Z% g) X& N' d5 W9 G5 |' o
  10.                         $temp = $_SERVER['REQUEST_URI'];
    5 S! x4 }0 X( {/ k% s" H5 O
  11.                 } elseif(empty ($_GET['formhash'])) {8 H2 l5 Q4 ^: F  Y. L# s' c, k+ ]
  12.                         $temp = $_SERVER['REQUEST_URI'].file_get_contents('php://input');* v# S  V/ t6 k2 D
  13.                 } else {) u9 f: d+ n* s, [' C; u8 x* W% T
  14.                         $temp = '';8 R/ F  K5 e$ y" v$ Y7 r
  15.                 }: b* h. S! [- o, l" x

  16. " T5 T; c# S6 A. M- A" n& `
  17.                 if(!empty($temp)) {4 A3 b# W5 }$ W5 g6 D/ o
  18.                         $temp = strtoupper(urldecode(urldecode($temp)));0 s7 ^- D4 H/ a9 y% V+ R( Q5 r) c
  19.                         foreach ($check as $str) {  Q; ]& _% A3 Z# C- \
  20.                                 if(strpos($temp, $str) !== false) {
    $ V7 w4 w6 m/ N* L) g1 \( Y. s/ S
  21.                                         system_error('request_tainting');
    ) i- O; {1 ?8 m2 p1 T
  22.                                 }
    + \# ~7 {* G2 G# P* l/ s* Z3 k+ u3 r: o6 [
  23.                         }, E% Y5 s. F% I! v% I0 z
  24.                 }
    % x& D2 O( Z* k: v
  25. 8 A. Q+ W8 N- t# m7 l* o
  26.                 return true;
    0 j- e2 f' [* ^
  27.         }
複製代碼
替换为:4 k( M6 @. {$ G

, ]* D$ x, Z5 I% B+ |- v9 V
  1.   private function _xss_check() {
    & r- k4 ?' C# ?, F; Z
  2.     $temp = strtoupper(urldecode(urldecode($_SERVER['REQUEST_URI'])));
    8 K  U* r3 K+ O: u+ ~0 O0 V
  3.     if(strpos($temp, '<') !== false || strpos($temp, '"') !== false || strpos($temp, 'CONTENT-TRANSFER-ENCODING') !== false) {$ [0 D& F( h3 V) Z( l; Z
  4.       system_error('request_tainting');) X4 Z2 d2 I$ o8 O
  5.     }6 Y% w% ?* e' S) C4 i4 i* E' |
  6.     return true;
    : n4 A& x- ?/ c9 H, \$ s% N
  7.   }
複製代碼
. G- D/ g* m4 R+ k& o) e
后台更新缓存   ===>ok9 B4 x  k* `' P  Y, T
但 有些 discuz代碼 內容在搜索結果內顯示,曝露在外,是不正常(會員搜索無此問題) ,研究中. d# a( @. r6 D. M* H* `

+ a0 K9 I6 s- {* {' |2 n0 |+ M- I& G( x# w7 F% }# W# p





歡迎光臨 52AV手機A片王|52AV.ONE (https://www.itech.casa/) Powered by Discuz! X3.2