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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
<?php
" C  I  W# B9 O% S4 {/**
+ e* A) U. q2 x, v * uploadFlash.php
( m% m9 G7 E/ x  |8 n * Flash文件上传.- Y( [" X$ K, o$ w" y9 [0 w- Y
*/
/ P" f! b  }+ }. c0 q. Wrequire_once('../global.inc.php');
8 M5 k1 ]# S2 f  Q; v: g
( u: {& m: Q% o/ T//operateId=1 上传,operateId=2 获取地址.* H! j' m3 E/ ^4 ]
$operateId = intval($_REQUEST['operateId']);' V- }: [3 \6 Q; d
if(empty($operateId)) exit;
6 O: j8 |. ]4 R; \3 C
0 U3 G. N; U4 s/ Xif($operateId == 1){3 @9 {0 M+ [0 u" y, R/ N0 o
$date = date("Ymd");
# h' O, a8 [9 _; e+ X9 X( p1 Z $dest = $CONFIG->basePath."data/files/".$date."/";. c, a7 \' B/ L* `, ^7 C$ ^
$COMMON->createDir($dest);
1 u! f, y4 B( N% L3 X% n' r3 T //if (!is_dir($dest)) mkdir($dest, 0777);
1 g9 s4 b3 }9 U1 N# N
( Q; Z! X' V( \3 Y7 P2 x $nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));
1 O1 P. y# l" F2 q - K7 n3 i1 s  m, C, s
$allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');. ]9 L$ z. N9 s: H) L9 G0 R& c

9 a7 N0 b5 t- L8 L; U0 D5 V if(!in_array($nameExt, $allowedType)){
8 O* H! y3 h* T3 O  $msg = 0;
' `  \" C2 J' P3 y$ \ }$ v4 Y+ n% s* W0 o9 p
if(empty($msg)){. A- j1 c8 P+ V
  $filename = getmicrotime().'.'.$nameExt;3 {8 O. d& d7 o1 W+ ~% P
  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);
- J+ g) x5 ]0 Z, N  _3 K7 g  ( @* Z. T  y3 C1 l' ?3 F
  $filename = $dest.$filename;4 H+ J; b2 T. v7 ?
  if(empty($_FILES['Filedata']['error'])){
. O! {0 ^8 n& F1 x   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);. e+ l- S! \& c" e
  }3 Q0 Q" F% A* C" J
  
; j: O0 \  u6 }5 H/ u  if (file_exists($filename)){
; N5 r( U, A* L8 e/ Z   //$msg = 1;
& b1 Z  v; B: u9 d2 \) |   $msg = $file_url;! j3 }# a' X) y) t
   @chmod($filename, 0444);
) ]6 p0 W1 ?# h" r5 u  }else{# ?% v* X9 h! }: V8 n
   $msg = 0;
& p5 P! i# P9 M4 e( o+ C  }
; l6 s! ^( o% x! A2 Y7 f7 \. r8 J: G }0 ]' p" m. s/ W* i
$outMsg = "fileUrl=".$msg;/ |; t" b8 t$ {% S. M& o7 Z9 @$ q
$_SESSION["eoutmsg"] = $outMsg;
. b6 z/ p# _1 f# E: O$ N exit;0 O$ e4 e  r/ A+ y' C$ c8 g
}else if($operateId == 2){
0 _& E9 M3 g# p+ A4 Y9 a1 P. A $outMsg = $_SESSION["eoutmsg"];/ B  x5 L' p7 r7 q2 {# @  t  @
if(!empty($outMsg)){
$ ?' Q1 ^! H3 v- a8 C3 U  session_unregister("eoutmsg");
% h/ J& }+ L2 f2 J  echo '&'.$outMsg;
& X& Y% ^3 ?" R  exit;
/ P, d5 [3 l) y- g, f7 I }else{
, i, C: s. d6 r8 P8 ~2 n  echo "&fileUrl=0";: x2 C& ~- d( o
  exit;1 S4 C: L9 G& e
}+ x$ m, Z3 q+ f+ \6 O  t/ a2 J
}+ Q0 `$ w1 h/ H1 X; I; T
+ U* F6 p) P. {
function getmicrotime(){ 6 G; p& }3 {# H1 M4 {
    list($usec, $sec) = explode(" ",microtime()); - T7 O/ Z+ h# S+ u" m; Y- l) T6 O8 T& _
    return ((float)$usec + (float)$sec);
* J( v# Y% R: S; e! F) J}
3 G% U8 R- B$ i
/ Z0 y0 I+ J3 _3 Y# G% T  _?>
' Z: f0 G" x" g; u! D
回复

使用道具 举报

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

本版积分规则

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