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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php5 E: N0 O) o) x5 u3 }
/**
. e0 J+ K& s: E * uploadFlash.php
: R9 I1 W' |, p2 m * Flash文件上传.
6 c1 f, w1 t0 Y: J */" l: N( {4 P/ s  T8 f5 J6 i
require_once('../global.inc.php');
- e$ B+ C: @6 |' p8 L$ W* t* k5 D0 P6 H2 f$ a0 a% L
//operateId=1 上传,operateId=2 获取地址.
0 M8 k9 ?! h1 s" d2 C* c) I$operateId = intval($_REQUEST['operateId']);
  n$ V; j/ g# g$ F; V+ w" g$ Wif(empty($operateId)) exit;
$ s3 E7 o+ e; z  W. w3 ?7 r2 I/ t5 [
if($operateId == 1){7 g* Z8 M! z0 a' K
$date = date("Ymd");/ i8 u# a5 R) k* P' ~4 F
$dest = $CONFIG->basePath."data/files/".$date."/";
3 c+ Q: `* G7 L6 b& X0 q  k) H $COMMON->createDir($dest);8 X* L+ V+ Y0 M9 @( `) Q
//if (!is_dir($dest)) mkdir($dest, 0777);
3 B) T+ x7 l: s2 }. T
7 q* |$ Y/ [$ r  t$ p; g  z $nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));
8 D3 V  O" g) A+ _3 L: a
- ^. X' ?3 [  F2 e0 {; |$ B/ } $allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');$ H/ g* h. ^$ z3 n7 L3 V

8 y4 z7 H/ U( W! V( l if(!in_array($nameExt, $allowedType)){3 g1 ^! a! w  Y2 R
  $msg = 0;
! w% i; N3 y/ f. t5 H8 Z }
9 ~3 h% i" \6 e5 h. k; v# m if(empty($msg)){: P7 M1 W# L  x/ W" F' o
  $filename = getmicrotime().'.'.$nameExt;: I+ L' w1 v% z$ V  ~* W1 N
  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);! ~% q, w0 ?2 _* C
  ; X) M+ [% n# K: y8 m' k
  $filename = $dest.$filename;* f, u  F/ G( b* T* w
  if(empty($_FILES['Filedata']['error'])){  F( i! m. E5 K* _* v; l
   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);
- v4 K1 w" E/ E1 w  }
, J, T7 p; X# k. U( B  # _& Q* b1 v# x/ N5 D9 \: E
  if (file_exists($filename)){
; q2 ~+ _- x8 c2 w( P/ }: B   //$msg = 1;, m$ }4 Y( C  D* c  z/ x, u
   $msg = $file_url;
( ?5 g* e8 o$ @$ |* l  c   @chmod($filename, 0444);
1 h+ s3 H7 A( z! J) f( O  }else{8 R& u4 }. \/ w6 C5 n; l8 x4 U9 g# X
   $msg = 0;+ X: T- }$ g* e) m% h8 [; s
  }# m* Q; ~# I* P' o$ }8 `+ O
}! S( r! {: Y1 N2 q9 f* u0 a1 ~4 m* ]
$outMsg = "fileUrl=".$msg;
  m6 ~7 I. }+ Z6 G% T $_SESSION["eoutmsg"] = $outMsg;
' ]  q; E! V) W& t% } exit;
! Z& g9 I; j9 [7 F5 h$ ?}else if($operateId == 2){
: _4 p" E6 I% e/ s& z# N+ Y. z $outMsg = $_SESSION["eoutmsg"];# |" q6 v* U) \, j
if(!empty($outMsg)){
" d; R/ k1 ^! P2 `! Z6 ~4 c  session_unregister("eoutmsg");
; L" H2 U1 }( J, j( ]' f1 k9 P! [- k  echo '&'.$outMsg;
" C/ g" ^5 H  q6 h/ |5 O  exit;
( O& }. p! _( }; S+ U6 r }else{( \. J1 X' P, I; a' D1 w1 S
  echo "&fileUrl=0";
8 h8 f- I3 b2 L, p' @/ f" ], g  exit;
9 t9 b3 D% k, k0 D; e8 q }
$ |9 ~$ }, }! X9 `3 ?' l}4 y5 D% h) ?2 W- K+ L

$ n  Z5 V9 t5 r+ V5 \function getmicrotime(){ . G, t' o. f! ]2 _) g/ m
    list($usec, $sec) = explode(" ",microtime());
/ d) q# h' G- w    return ((float)$usec + (float)$sec);
- t2 A9 g/ L$ ?; J9 e9 E. V}1 s/ L; O% L# {3 q7 O* ~0 w$ G, d- L

5 @1 M! I3 `( q  W( L% K; y/ \?>; `: ^1 e8 U7 ]! t) w+ Q) m
回复

使用道具 举报

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

本版积分规则

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