找回密码
 立即注册
查看: 2408|回复: 0
打印 上一主题 下一主题

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
<?php
9 U$ A, m/ P$ b/**
: Y6 r$ e/ g: W1 X; d  N) _8 { * uploadFlash.php
  [; U! K6 n7 n6 K" ]) x2 D * Flash文件上传.7 M( U% d$ V; ]3 \. N$ v5 n. I" Z: c0 E
*/, n8 b% O, w4 L! {# ]+ G3 E0 E
require_once('../global.inc.php');8 l4 l" B' f0 p7 y  x
2 v$ \, B/ k! A6 R
//operateId=1 上传,operateId=2 获取地址.
! I& X# z) H/ m! a. S% ]2 @4 w4 T$operateId = intval($_REQUEST['operateId']);
( I1 j- p4 D$ ^# eif(empty($operateId)) exit;
: _( T  \1 o- W7 Y+ N4 W7 r8 d0 S& A; f9 h8 Q
if($operateId == 1){  R* l0 ^3 |8 b% C9 w
$date = date("Ymd");
1 p& X9 t- J% q# c $dest = $CONFIG->basePath."data/files/".$date."/";
" p2 J" g& s4 w8 H $COMMON->createDir($dest);
  ^; A: q0 h* ~( p( j8 r //if (!is_dir($dest)) mkdir($dest, 0777);
1 o8 L5 w2 g7 W   n9 Y  j% ]0 ^3 p+ E( _# I
$nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));
$ T, k0 _/ G/ O # z/ t: F# N4 |: `
$allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');
+ x! B4 z" H8 @- b* j. J: b0 J5 h& \
" A' f  I* v; m" s. V" X if(!in_array($nameExt, $allowedType)){% w6 V7 x  n2 J
  $msg = 0;
1 w* B4 P8 l: E% A+ ?: e }
$ V' a! g6 V4 j4 ^5 f( T if(empty($msg)){+ w0 ^$ T! A$ P" B
  $filename = getmicrotime().'.'.$nameExt;
7 m3 ^6 i5 B+ L' x( V  H  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);8 b* A" q2 K7 G9 k. Y
  5 q2 f( a; ~* Y& A6 n, U$ }; D) F+ {
  $filename = $dest.$filename;- x2 z2 d% \  s% k9 L  h
  if(empty($_FILES['Filedata']['error'])){
# f0 ?! g" i& G: ^1 Z8 S+ u- I   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);) w0 R2 z( g! G3 ^" k9 G
  }
1 W+ O/ c# j& E2 h1 v" n% S  , n8 A, J# w3 `% w/ N
  if (file_exists($filename)){
; x4 w* l& a1 x1 D   //$msg = 1;% O3 _  s* g+ U8 b& k1 l2 v, p( Q
   $msg = $file_url;6 p* f+ B3 g' b: a# l. i% @
   @chmod($filename, 0444);
1 X, o9 ^, H3 K( ^* m# u  }else{
4 @+ L& }4 m: I* J* R( [7 J8 f   $msg = 0;$ ^3 A, D! c; U1 ~4 H8 A# q# `
  }7 t& ?  w2 e0 @/ K3 }' ?. `% {0 k, \
}* w& L$ n2 e3 l! p3 s+ \
$outMsg = "fileUrl=".$msg;
$ O1 w5 Q1 W; D5 G' a7 W/ W$ ?2 x $_SESSION["eoutmsg"] = $outMsg;9 ?( s2 j5 z2 y5 w2 W7 r5 w
exit;8 k9 q8 R/ s; X3 R
}else if($operateId == 2){; S9 y. K; Z5 K1 a
$outMsg = $_SESSION["eoutmsg"];
' e& G/ m: h9 J! J- T% } if(!empty($outMsg)){
3 \3 p! d. h  F; r+ I  session_unregister("eoutmsg");
6 J6 C) Y# p; ~* {! U. m  echo '&'.$outMsg;# u! V$ d6 a. o- {0 @8 Y  U$ N, N# }
  exit;& Q$ v6 I& f  h: ^, E0 _
}else{
0 T9 F6 W8 G) r/ L1 C5 O  echo "&fileUrl=0";
; p4 E! u7 T( b+ R9 v  exit;* z/ S3 Y3 L, G# V2 d& r1 t
}
  `3 @: ?7 E  l* x}
) l- r: N" f, m. O5 d: |
8 |0 I9 q4 }3 @function getmicrotime(){
( R" `! M; @! ~    list($usec, $sec) = explode(" ",microtime()); ; d! _2 j: n# `& @0 `+ P
    return ((float)$usec + (float)$sec); ! p/ q+ _: d3 V2 R: b7 n! s
}, v( ]& d0 X) ^$ g

1 r* c: b) S7 p" \5 v5 Q8 ?1 Y?>5 j3 H# W' X; S% t9 u
回复

使用道具 举报

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

本版积分规则

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