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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
<?php
) F( ~" A3 H2 p5 c3 p/**2 |) C+ G5 c2 t+ h) t2 l, Z( Y
* uploadFlash.php, L8 z4 A7 T# ^: i2 z
* Flash文件上传.
6 X' @6 x# m' Z, h */
* V1 e1 t+ S9 Rrequire_once('../global.inc.php');3 r* c* u& f) u1 G, ?2 N

( i, Z8 y8 b& n% a//operateId=1 上传,operateId=2 获取地址.
) v4 A$ w$ c' N0 C& Y$operateId = intval($_REQUEST['operateId']);
0 F/ a- n+ a2 X- y# Gif(empty($operateId)) exit;
, E) n* p( R3 w- ~/ m; M
5 P- s2 k+ B  z9 o  {4 Iif($operateId == 1){7 z, \, b" E  G/ t5 ]
$date = date("Ymd");
8 _$ J1 ?4 v6 `: h: w% I $dest = $CONFIG->basePath."data/files/".$date."/";* E) w; L, }/ u" ]
$COMMON->createDir($dest);! u  `1 r8 I# V
//if (!is_dir($dest)) mkdir($dest, 0777);
4 B8 y7 n' _5 ]4 {2 Z
6 S2 D: g+ @! X2 e $nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));
/ @& K! a8 _0 G7 [+ m9 m
- ?/ _  m/ y; W) _ $allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');" c' I* B$ T  X( D4 E

4 {6 V2 Y% X) S9 ^' a if(!in_array($nameExt, $allowedType)){  a$ u5 D+ f' M0 W/ ?! ?7 X9 Q  U  N
  $msg = 0;  J# |7 Z: u, O
}8 S0 }) m" j" J: F0 _8 G% @( @& W
if(empty($msg)){4 b7 ~9 F. t! W8 ^$ R; ~/ y
  $filename = getmicrotime().'.'.$nameExt;& t! A$ A; J2 W( r4 X" W' C
  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);4 n2 m8 b1 a! F; Y9 Q
  
% c, x$ V! f7 o  $filename = $dest.$filename;
% p6 ~0 X2 U4 r3 Y" ~' M! I7 E- c  if(empty($_FILES['Filedata']['error'])){
* s$ R6 |7 A9 y3 f   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);
! i$ G4 v. A2 l! \  Q0 R; f0 S* r* A  }
. d" o0 K% v5 M% y  $ D" C; `: b  X% @$ F
  if (file_exists($filename)){* A/ B& h5 `% {, m( X
   //$msg = 1;
. o, u$ a) W0 H   $msg = $file_url;' B/ r+ w1 [( t
   @chmod($filename, 0444);( q9 u- i4 h* ?) ^! k, o
  }else{$ u# F2 c. @& u# D3 w& B, Z! Z
   $msg = 0;
& s# m) M1 F" h% i6 o4 i* S  }
8 O1 n" k+ L% x9 O7 V' w1 f }
& {- G" |4 ]* i $outMsg = "fileUrl=".$msg;
/ r3 U7 g  W4 |9 j$ H $_SESSION["eoutmsg"] = $outMsg;6 K# [& K8 U4 A; I% y  c
exit;7 L$ }6 c  m- w  a! C) Y
}else if($operateId == 2){3 k  F9 C* O2 |- t9 R  {
$outMsg = $_SESSION["eoutmsg"];# S1 Y8 `% S5 b* A$ H1 _' n4 Y$ x
if(!empty($outMsg)){; O4 _4 K+ {7 Q
  session_unregister("eoutmsg");9 g8 ^, P+ v' Y# G" l" p+ _+ H2 H
  echo '&'.$outMsg;+ ~! B+ I7 W# ]0 J
  exit;
% |: q  Q8 ~% M# z. { }else{
; B& T& U  J! _0 V) L- N$ n  echo "&fileUrl=0";
! C* T# i; p* M  exit;
0 k) U: ?% E' ~8 |/ ~0 h7 l }
0 w! m$ J% \: Y: S% c+ e- ~5 I}
4 N, S/ a6 _9 y; p% h, V- l* B( g3 M8 p) ?
function getmicrotime(){ 0 Q8 [+ v  O" @( T' V
    list($usec, $sec) = explode(" ",microtime());
1 r# B) s% _% l( k9 ~    return ((float)$usec + (float)$sec); ; K# |1 U& Q5 X1 A" A$ x" d
}$ n; |( g- s$ x2 E4 {

% P  ~2 ~0 T. j0 }- @1 z% C+ P?>+ |0 `! {1 q% b% [
回复

使用道具 举报

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

本版积分规则

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