52AV手機A片王|52AV.ONE
標題:
遊客站內搜尋的錯誤
[打印本頁]
作者:
IT_man
時間:
2015-3-23 16:24
標題:
遊客站內搜尋的錯誤
本帖最後由 IT_man 於 2015-3-23 16:27 編輯
9 _6 h3 G' `! X& P- b
! f/ U6 E+ U- r! L
遊客站內搜尋時出現 error message :
0 s1 D8 Q! q: C) f2 g. q `: G
6 _/ L: b2 m" b# H4 |8 m' U- D3 r: i- f
102505fovgvzt1w3i1biot.jpg.thumb.jpg
(37.49 KB, 下載次數: 279)
下載附件
保存到相冊
2015-3-23 16:17 上傳
B6 N4 ?5 s1 T# L O- y; \. M+ P
: g ]& V8 ^3 B @# V
' m5 @& r2 `1 t4 o6 l! k& }9 b
sol:
/ u% x; @; K. D# M% |
\source\class\discuz的discuz_application.php 約第350行
2 d# s) ]6 E) k/ v. d: F* ^ n
查找
) i* g! @( V8 o9 F
private function _xss_check() {
1 j" p! C2 Y* Q/ ?
; F& ?3 }/ [* l3 |# u) k6 {
static $check = array('"', '>', '<', '\'', '(', ')', 'CONTENT-TRANSFER-ENCODING');
8 y' m/ {: h8 P9 h, r5 e3 K! m5 k
; @* o8 b) m- Z! d w M) g4 I
if(isset($_GET['formhash']) && $_GET['formhash'] !== formhash()) {
: ^) O" P0 ~, y3 r5 ^0 o
system_error('request_tainting');
; Y4 h3 j8 f! k7 \9 [
}
% G% n' O$ i- C j! c3 g7 R1 [
# w7 _$ V7 Z7 n/ U. N4 R
if($_SERVER['REQUEST_METHOD'] == 'GET' ) {
* X7 M2 I, M H$ }
$temp = $_SERVER['REQUEST_URI'];
* \. f4 U3 H& m* I
} elseif(empty ($_GET['formhash'])) {
4 d) G" [0 ~0 f! B) `/ p0 M6 x# Y
$temp = $_SERVER['REQUEST_URI'].file_get_contents('php://input');
) d- T0 K6 H: P, Q
} else {
; m7 x7 r7 Y7 f3 w" @! ~" P
$temp = '';
, T) v+ V$ W5 `/ b9 I
}
0 l+ m4 A" R; z7 m4 u! A' ^
2 e4 B, d* z6 p# {6 M) Y# q
if(!empty($temp)) {
T& R1 j: q( B% r# v
$temp = strtoupper(urldecode(urldecode($temp)));
+ j% {& T$ l* \
foreach ($check as $str) {
' _# v% R! d' o& b
if(strpos($temp, $str) !== false) {
6 S$ v$ \$ n0 S; B. l) S
system_error('request_tainting');
2 u/ @1 \5 F- B% _% z
}
( X( v4 z& j; L; ^% N
}
2 X7 Z z6 f& X) x
}
[. C/ n. I+ T2 i$ s2 l, y1 ] C
$ r4 R. L( K) @4 F l' y2 q; X; y8 H
return true;
8 V7 N- q h0 u* L4 y W# e+ l
}
複製代碼
替换为:
' E1 }+ @4 L8 \; h2 M
/ [( N* G! Y' @6 \' d
private function _xss_check() {
" `% d7 {; T5 b, L1 d" t
$temp = strtoupper(urldecode(urldecode($_SERVER['REQUEST_URI'])));
, w; U# {! E6 ] O- H7 y
if(strpos($temp, '<') !== false || strpos($temp, '"') !== false || strpos($temp, 'CONTENT-TRANSFER-ENCODING') !== false) {
1 d" b6 W: [* H) D2 e6 ?
system_error('request_tainting');
& f0 _9 d5 a0 B* V5 B
}
% j" S# F- c1 D- X! ^0 o# I
return true;
! X. L; J- @ B
}
複製代碼
' i- S F5 Z. D
后台更新缓存 ===>ok
$ K) q4 k% S) p& H/ `* F8 K
但 有些 discuz代碼 內容在搜索結果內顯示,曝露在外,是不正常(會員搜索無此問題) ,研究中
1 z c0 n* s1 w i9 q* k
' k, h3 P2 P; P7 I3 s
4 r' W6 n* ~4 ]2 A
歡迎光臨 52AV手機A片王|52AV.ONE (https://www.itech.casa/)
Powered by Discuz! X3.2