找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 1943|回复: 0
打印 上一主题 下一主题

.用友ICC网站客服系统远程代码执行漏洞EXP

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php
2 u3 t. Q' y3 W0 u5 Z: F/**
" I4 N# G3 N* O" D  } * uploadFlash.php
7 q* f; `0 G0 h+ T2 k * Flash文件上传.
# V. J" Z. L% a1 e7 [ */
. P" z' C$ D+ R" e* W$ w5 W1 drequire_once('../global.inc.php');5 H( a. b2 |) ^- O9 t* S
4 Z4 f! Y$ Y+ ?- J& ]9 x# J8 J
//operateId=1 上传,operateId=2 获取地址.
% W" V7 O/ F- I# O$operateId = intval($_REQUEST['operateId']);5 k; [# h$ F+ }6 ^4 r, c8 J
if(empty($operateId)) exit;
, |2 X2 C' f  N/ z/ u) A* \$ q  R
if($operateId == 1){
" U% h3 l; k" Z- Z8 m $date = date("Ymd");4 g4 K( ~* W! R  M4 O( x
$dest = $CONFIG->basePath."data/files/".$date."/";/ `" a6 U, l' f! V
$COMMON->createDir($dest);
1 x. s9 g0 v7 C6 p1 m, z( m //if (!is_dir($dest)) mkdir($dest, 0777);+ H; p' c6 A% _, L! C, P6 e

7 m3 w; O* @8 i; t5 N7 d( c0 W3 M $nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));  @. p" K' P. x- C) _+ p+ S
) D8 n9 j# `) Q6 d7 }- y/ _
$allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');
5 m2 m$ Y' t) z( j+ k 2 ]- e' H5 v: b7 \* l8 R
if(!in_array($nameExt, $allowedType)){
2 w# `* v- \1 P0 n  $msg = 0;
- `; T1 c* q' c4 [8 z& P# p }- p. z4 a+ k/ M! \7 G# }0 ]5 M
if(empty($msg)){/ |8 o4 `0 {4 i- Q- C$ t( k3 t
  $filename = getmicrotime().'.'.$nameExt;' Z3 s( N  M2 v4 N
  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);, J" W& E9 K6 h; d# k
  0 h2 _8 v  o- z: r* N
  $filename = $dest.$filename;
" N6 N2 D* Y* ?  if(empty($_FILES['Filedata']['error'])){
: I- {* U' ?/ k7 W: S6 a+ V   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);* ]/ x/ a6 l; |* {6 a) `: z: F
  }0 C1 M. X2 l, N. P
  2 |9 Q" F) u( i& g
  if (file_exists($filename)){
% L: U& D! u2 ]: I, ~7 p: e/ G   //$msg = 1;
6 |' U% L5 N- y/ Z   $msg = $file_url;2 p- z+ D# ~( d  M* _* Y+ w+ X/ p
   @chmod($filename, 0444);) t' E) D# p. [0 V# Q
  }else{
, y4 t$ d5 L$ C1 N# y0 K+ Q, x% L- }   $msg = 0;
/ f+ Z* `7 `5 p% g  }! H, ]+ ?8 f5 u$ ~/ W! D' G4 n& N
}, X2 w& M, t% c! {# p) m
$outMsg = "fileUrl=".$msg;8 Z: G9 _, ^4 `+ n5 q/ S* C
$_SESSION["eoutmsg"] = $outMsg;
3 M1 }: v/ J7 V& J6 L7 U. o exit;) Z0 _5 Q7 e3 q& a! f
}else if($operateId == 2){+ Y1 D6 B% e8 ]* T7 U- m5 u
$outMsg = $_SESSION["eoutmsg"];1 `6 v3 Q, q7 C! e
if(!empty($outMsg)){
, u& F+ y% a3 c1 g* r9 Q* q3 L  session_unregister("eoutmsg");' y: Y# g/ ?- \: L5 G  z7 J
  echo '&'.$outMsg;
7 C$ i7 ?2 E, L0 T& A) @" r  exit;
- Z- H, M6 O( q& ?4 d/ W }else{1 |7 A" O8 C+ d6 C" D2 _* R, d
  echo "&fileUrl=0";
/ C4 |& y- {/ d7 h  A2 i4 ?$ \  exit;
: c- ?7 P  |) @9 h; A6 Z+ \ }" W4 ]2 u; t) F) W+ H
}
' d! Y. C+ R! l* C4 D1 Z( ~7 ^& Y; v9 O2 x7 L
function getmicrotime(){ 1 \, h* E- D$ E4 [% j
    list($usec, $sec) = explode(" ",microtime());
4 g. b* J8 _# h, u    return ((float)$usec + (float)$sec); ! A/ I1 }  e+ t8 q- O+ v
}
8 T$ L$ R% h, O8 c+ S) p, P
/ z8 m: n. j% F?>) t4 @: {6 @4 K' v% H* J9 L- }: {3 L
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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