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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php
9 J. d$ Z0 b0 ~/ C, y6 G9 L, J/**
/ ~- V/ I; M% O4 K * uploadFlash.php
4 F2 N2 Z' ~" z$ O * Flash文件上传.
1 ~' `7 [* v* I$ m, P% G4 I */9 r6 O! f0 _& Q8 C' ~/ G
require_once('../global.inc.php');
/ _& O7 G& V( d0 H0 K# d9 t4 I2 _* F& [& x& J
//operateId=1 上传,operateId=2 获取地址.
% E: `7 u: C# n) }6 j& m$operateId = intval($_REQUEST['operateId']);
, e+ j0 V8 w& u& x1 Zif(empty($operateId)) exit;
8 D& z7 y' M9 q9 `8 a& g6 B& @; i2 ]6 K9 g
if($operateId == 1){
1 O9 a& h* y) |2 Y9 y $date = date("Ymd");
1 ]8 H! r5 L( S $dest = $CONFIG->basePath."data/files/".$date."/";  n( ]; `# k/ z( A) T  _9 j
$COMMON->createDir($dest);
. a2 k$ k# H4 w //if (!is_dir($dest)) mkdir($dest, 0777);
/ z. W/ L8 y! @  k5 f
& U  n3 u! X- h' g0 d  Q! k* e $nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));) e) M9 s" H# Q

7 B$ G5 f9 M* _ $allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');
. ^6 X: \4 V3 q, ~+ E! Q' E - t3 w. Q. T" ]+ H
if(!in_array($nameExt, $allowedType)){
( S$ F0 V. a& U" `. k" @  $msg = 0;
  y0 B2 I" V  A; X8 h }) A9 P5 D7 S8 y4 Z' E3 }
if(empty($msg)){, U- d( V% {" K/ Z/ Y& ]
  $filename = getmicrotime().'.'.$nameExt;0 c( R  P9 c, n: z* n
  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);/ c9 @9 O- T; J7 J
  ) r7 T$ f$ ]! L5 n1 t6 V. g
  $filename = $dest.$filename;
0 y, F, \% b6 f( Y- J. \  if(empty($_FILES['Filedata']['error'])){% b5 l& P7 l( N5 V
   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);
1 N, f) m4 I6 f, m, p, A  }! \0 s9 H( q8 L* r  U' V
  
+ v$ W) s5 l  ?9 T  if (file_exists($filename)){# x9 E# L. w- P/ R4 r: |
   //$msg = 1;
/ c0 i, B, D3 o   $msg = $file_url;
5 E! Y" i' w( v: O% L$ e   @chmod($filename, 0444);4 j$ H8 e' c# H3 C
  }else{
* H* `3 d% U1 e   $msg = 0;
6 D+ P; y7 l/ @# ^6 m  }
0 p4 t: T' d2 k. K8 i+ [$ ~ }) m; U' K) ~# |
$outMsg = "fileUrl=".$msg;
" B" h2 A5 Q0 o. T* V% t% j  J" t $_SESSION["eoutmsg"] = $outMsg;8 S0 G5 ?' r4 D1 `
exit;% C) L) v: H$ p$ n9 ^9 R: E
}else if($operateId == 2){
. v- e$ g$ r) j6 l! I0 m $outMsg = $_SESSION["eoutmsg"];1 h) q+ J. `4 U- r& m, }& e2 \
if(!empty($outMsg)){
7 n: V8 B# A/ y" n1 D8 x  session_unregister("eoutmsg");
% [' q2 K8 V  c5 n- L# C& I8 K  echo '&'.$outMsg;
2 v# H* x( C! p) A+ Z% j' u0 s  exit;
5 N  E) P& ?) ~/ x/ e* [ }else{
  l9 q/ k% I, b+ k7 E  C  echo "&fileUrl=0";: C' g7 O, k1 o
  exit;  ?0 u% q" @+ L' }
}7 c3 E# i6 \% o! R: p3 Q6 W5 b, p
}( w9 M& k/ P; N' r0 J! ]: N2 Z) a5 d3 G

2 K" [6 G0 L# P' N. V. F! pfunction getmicrotime(){ & \* M1 F" k2 ^* {6 V* z) Y
    list($usec, $sec) = explode(" ",microtime()); ' A* M  A& Q6 Y. B
    return ((float)$usec + (float)$sec);
. Q7 |  s+ _9 u4 s}$ \' ~; u( w' N7 R/ B

  \1 u7 @( c& \! ]?>
2 n! c, A% C9 Z  g
回复

使用道具 举报

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

本版积分规则

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