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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php7 ]$ d7 [0 h# Z0 x- ^! Q3 _2 U
/**8 o, t* R2 R# [. B3 X
* uploadFlash.php& v# z4 }  G+ H
* Flash文件上传.
# F) m, Z, U! ~7 A- m! f */' X- F, [4 _, V3 X: ?: w
require_once('../global.inc.php');- m' T7 R' c4 d) i) ~, y) k

6 D7 c+ |2 t8 k. O//operateId=1 上传,operateId=2 获取地址.) b5 e4 U& F2 Y: d' ~+ O
$operateId = intval($_REQUEST['operateId']);
* P9 u; _# i7 Z$ t0 `8 N4 {if(empty($operateId)) exit;. b0 R$ s, F& L2 v3 F" x
3 n. M" |- q3 G/ W
if($operateId == 1){
1 ], d9 U+ s4 h+ z" _ $date = date("Ymd");
1 }/ _( h- b; [& F+ s* `; x $dest = $CONFIG->basePath."data/files/".$date."/";
+ j. v8 E1 W7 ?" v  F# J $COMMON->createDir($dest);* n' B# X9 ?: [6 ]3 `- W, U8 B9 o
//if (!is_dir($dest)) mkdir($dest, 0777);( N3 d" n/ i+ H
2 k; c  a& p4 m4 V2 i
$nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));
" {5 D+ V5 ?5 k5 q: ?' O( Z 9 t" B: \. a9 i) m& l2 v
$allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');3 O5 l' p  }7 X" Z" o6 Y6 q
& P& y/ K4 R2 O+ y7 Q' e. T- ?8 I1 S
if(!in_array($nameExt, $allowedType)){$ X: B  w; @1 P5 X3 s2 `
  $msg = 0;9 k/ l5 X0 `: H: F% d! l' z6 J& V7 v
}
1 K( R" k$ z6 [, J- P% w% u, m4 d+ Z if(empty($msg)){
: A/ g9 K! u1 z# R5 B: U  $filename = getmicrotime().'.'.$nameExt;
4 a* o5 \3 Q3 H9 [; h* d  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);2 r4 y8 N) ]: I
  
" F: F3 C3 T  P# G* Z  $filename = $dest.$filename;
! b7 v9 l; S4 d) }2 l+ s  if(empty($_FILES['Filedata']['error'])){! P- U/ P+ I( X4 I) M- `
   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);' Y7 ^( |1 v: `
  }
# z% p* c1 H# ^2 P1 ^  4 T) U% W7 h6 T$ x  q# ~3 B8 O
  if (file_exists($filename)){
6 y( O$ ~- d4 Z8 p. K$ F9 i; s  \+ R   //$msg = 1;
6 ^& u0 Q0 Q. K* G* S   $msg = $file_url;
7 j- }6 c( ^# J. S5 g- J  g/ s   @chmod($filename, 0444);
, @! O& Z  G( D0 C  }else{# j& ^( G  ?* C# X" Y
   $msg = 0;
( u0 Z. x% i$ u  }
; k; R; e# [" d. y2 I }4 @0 ~$ t2 j0 ^* J/ d
$outMsg = "fileUrl=".$msg;
- H$ L2 q& f' U! Q& r6 K2 x. O $_SESSION["eoutmsg"] = $outMsg;- G8 q' V  c; u/ M9 c: R6 p: A
exit;
8 U8 v% `6 `4 b! B9 k}else if($operateId == 2){
/ c' @4 h. I! B( _3 C& u $outMsg = $_SESSION["eoutmsg"];
/ ~- w0 K; L! G5 ~ if(!empty($outMsg)){9 ~* w; `5 h9 i1 E" w
  session_unregister("eoutmsg");
0 F5 [$ a& a6 N  echo '&'.$outMsg;
+ z7 f) A# U$ `4 E  J/ s! k+ \  exit;
6 H- P9 T' c& c }else{
% l3 g- L; O3 ]  echo "&fileUrl=0";. d  }  h6 H. u1 m: n( \* t
  exit;$ P. z0 W4 w* u' L5 Y- v7 F) z/ K
}
; U1 N% v4 C8 j  ]6 K7 S, j( t0 ]5 H}
. Y. Z% J9 Y! G8 v# C2 B6 o/ n0 k2 f8 t+ b8 H: j: b" Q
function getmicrotime(){
7 v; p9 l' O6 v8 O8 N    list($usec, $sec) = explode(" ",microtime()); 3 _  {% g: q* i" n7 N* Q0 k
    return ((float)$usec + (float)$sec);
' Z1 e' d# c; U2 h: o9 k4 W) K8 x}% H& R" ~1 C9 _: I
  v8 Q; T0 u% s9 ?+ D- s
?>, I0 K; g5 u( R, }
回复

使用道具 举报

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

本版积分规则

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