52AV手機A片王|52AV.ONE
標題:
遊客站內搜尋的錯誤
[打印本頁]
作者:
IT_man
時間:
2015-3-23 16:24
標題:
遊客站內搜尋的錯誤
本帖最後由 IT_man 於 2015-3-23 16:27 編輯
5 Q/ r0 Z4 @7 i: R7 Q' n3 i$ c
+ r: q; I, K& I
遊客站內搜尋時出現 error message :
2 \( P7 b# E/ n: g+ n" _4 C4 d5 `
- |* t- y0 R; v n: J+ \9 V
102505fovgvzt1w3i1biot.jpg.thumb.jpg
(37.49 KB, 下載次數: 296)
下載附件
保存到相冊
2015-3-23 16:17 上傳
6 n( [; F4 a# b; H) e
/ l: G8 }& v& {( x8 i2 B# Q) O
/ h; U0 o) l3 w& ?7 v
sol:
8 g* d4 L; l2 j7 x
\source\class\discuz的discuz_application.php 約第350行
h5 `$ N: u/ s" `
查找
/ x8 g0 X, M/ @ J! D$ v
private function _xss_check() {
. ?; s4 M. L7 z! a! ]. O% ]
: Z P5 q% U& I1 B8 a2 v. |- y
static $check = array('"', '>', '<', '\'', '(', ')', 'CONTENT-TRANSFER-ENCODING');
; t( q* |" k% z8 e+ _" c2 C* Y! W& Q
, t- P- s s! |7 |4 [3 {+ N5 `
if(isset($_GET['formhash']) && $_GET['formhash'] !== formhash()) {
7 r( J& c3 g2 n& S! B: w
system_error('request_tainting');
. I! |$ \5 V; o" S3 T$ ?# Y/ _
}
# w* P1 l$ D* t+ Q+ w. m, T9 o2 @
# n* [/ d9 E; A; j) ~/ B: M
if($_SERVER['REQUEST_METHOD'] == 'GET' ) {
1 d8 \/ } h9 b# m [$ N0 M3 _: E
$temp = $_SERVER['REQUEST_URI'];
, h: d% }3 ]5 m
} elseif(empty ($_GET['formhash'])) {
. w: n. {' V- Y9 g O0 T
$temp = $_SERVER['REQUEST_URI'].file_get_contents('php://input');
. Q! ~, E( z8 x- ?
} else {
/ c3 l* @1 a) W q# f7 v# R" w2 m
$temp = '';
! T" S( S. v1 b) {3 F) H! ?/ k
}
8 ^: y2 ], t: j- N o) w
2 @7 [# I7 X$ u: F4 Y
if(!empty($temp)) {
" z/ H! P$ A5 y: ^% h
$temp = strtoupper(urldecode(urldecode($temp)));
3 e" @0 E u6 N2 `: B5 J$ Z
foreach ($check as $str) {
' `4 O! j$ Q* s" p K' i8 X
if(strpos($temp, $str) !== false) {
- v$ T2 `6 P2 Y) ~
system_error('request_tainting');
8 k5 H, a& _' P# e6 U/ U1 S
}
2 R# b8 b$ ?: g# }3 ~7 n7 P; {
}
, D0 z) E, a$ K& U7 N# `
}
+ Z: ]$ _8 O. r3 k/ O/ D
) F! W; b& ^3 C6 @
return true;
- t6 d& O4 ^( N" A$ i
}
複製代碼
替换为:
& O r+ v1 u% X1 c7 }
" I; o/ [7 H( b
private function _xss_check() {
% T4 M7 {6 H+ A0 q7 G: q5 a) S
$temp = strtoupper(urldecode(urldecode($_SERVER['REQUEST_URI'])));
7 g/ t7 d+ m3 [% F
if(strpos($temp, '<') !== false || strpos($temp, '"') !== false || strpos($temp, 'CONTENT-TRANSFER-ENCODING') !== false) {
/ E3 e/ ?$ x' i6 Y3 m+ a7 I
system_error('request_tainting');
: ^! u4 T. Z0 w6 y! v: \- S
}
3 ~9 c3 h; Z4 @- [# f6 i/ u
return true;
: D. s g5 J/ ^/ t
}
複製代碼
* [$ B. B0 d: z
后台更新缓存 ===>ok
8 r3 O5 E2 C( A; S5 i' X$ \
但 有些 discuz代碼 內容在搜索結果內顯示,曝露在外,是不正常(會員搜索無此問題) ,研究中
$ G z- E* w$ M" J
3 }* X& X2 f7 I
5 A/ I: k# f0 E1 Z3 }' ]$ |
歡迎光臨 52AV手機A片王|52AV.ONE (https://www.52av.one/)
Powered by Discuz! X3.2