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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php# H3 g, q9 z9 ?5 s7 x
/**6 \4 ?( \2 @+ i4 J
* uploadFlash.php
2 v. A& B% @2 N; ]. a% L: q. ^ * Flash文件上传./ B- f' m3 K5 y& b9 p
*/
+ @9 K% F8 ~; o3 r) R4 k  yrequire_once('../global.inc.php');
/ t8 d/ a) o, F- {* D; K9 M7 i) s8 E9 ?4 J0 M( D
//operateId=1 上传,operateId=2 获取地址.9 h! f9 I$ W! D6 ]
$operateId = intval($_REQUEST['operateId']);# ?8 r7 V* J: x! Y  |; I
if(empty($operateId)) exit;+ ]; V: P* p' g! g4 ?8 W5 }
) f# }, h% @  \* ]: e9 [# G
if($operateId == 1){/ j# w" W, c& B5 ~) g1 N- a: s" V
$date = date("Ymd");. g$ D% i5 z. {& }) F$ C- G
$dest = $CONFIG->basePath."data/files/".$date."/";
- w) p2 Z& _9 f/ ~) T3 A0 m5 w; y1 {. r $COMMON->createDir($dest);
/ v% v5 {9 n: _ //if (!is_dir($dest)) mkdir($dest, 0777);# Z7 [2 z: C0 c: v  i

# ?' F! U* o4 v9 p $nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));0 `9 r% B0 S$ i) i9 ~4 B
# A8 `3 a* ^6 ~5 M! E, r* N
$allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');  ~6 g1 I2 u; q2 I

  f6 g, d: c: J+ E if(!in_array($nameExt, $allowedType)){
/ P9 B" e' T" K( E; }; I  $msg = 0;9 j7 F1 W. H+ K5 ~; Q" D8 B$ V
}2 e$ w6 A" k- b# o$ C5 X
if(empty($msg)){$ v6 R( W5 h  p  n4 y
  $filename = getmicrotime().'.'.$nameExt;/ ]. D1 V3 K- Y* K: N5 U/ L) \
  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);% e0 Z1 o4 e1 h4 x1 h* }8 Q: j) j" a
  1 z( ~, y' D' t2 a9 x5 ^& p) n
  $filename = $dest.$filename;7 F4 u7 }% K7 t: C9 _
  if(empty($_FILES['Filedata']['error'])){
" R9 [7 [$ d; z  ~/ v% u   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);8 V6 `0 @/ u6 D, {* A
  }
8 x, }4 a& o0 |5 K  
* _/ g0 w! L0 D8 ]% v+ }& V0 a  if (file_exists($filename)){4 N6 p2 K8 w4 C2 M5 o. U
   //$msg = 1;: ^! S$ N. E+ K1 S
   $msg = $file_url;* m' \: {3 e0 {% ^, T/ U
   @chmod($filename, 0444);* Q: h0 H5 ^5 S1 d% g
  }else{1 D, g' H6 `  |- |
   $msg = 0;  O2 Q7 a; U' R! H1 h& ~. B
  }# R, x9 B1 f+ E; ~1 c+ t# g" C
}
' f7 F( y- K  t; {; d $outMsg = "fileUrl=".$msg;* J+ u. n/ `7 f* }: i3 h/ L" v
$_SESSION["eoutmsg"] = $outMsg;1 Q1 D2 O4 z) O, C
exit;
2 ^( Q9 o/ z8 E0 E}else if($operateId == 2){+ U7 `6 g+ B; L- t
$outMsg = $_SESSION["eoutmsg"];
+ q% n- Q1 h. E3 g if(!empty($outMsg)){
) A# s# r+ x- V' T) e  session_unregister("eoutmsg");
; P- b- Q- n& Q9 o) ^) w8 v$ g2 t  echo '&'.$outMsg;
+ p* G! a6 r- z) W6 x  exit;5 O2 ?$ u) p9 ]' P1 ?0 a
}else{+ E3 {: c8 S, F+ v4 Z* [4 u
  echo "&fileUrl=0";
2 d  w& |9 P: e1 I$ a( s4 f8 o' n  exit;
, j4 j+ Q, B4 y# q0 ` }0 r& E" V  t, K  H/ v
}* y2 h/ F+ b7 E
2 Y, `! m) e5 l$ f. s: n; p3 }/ i9 T
function getmicrotime(){
8 B' k1 d! {& c    list($usec, $sec) = explode(" ",microtime());
) |2 T9 \1 C# P    return ((float)$usec + (float)$sec);
5 P3 ^, ~/ t3 H, a}' a! c+ h7 f6 X- B7 H* P

  ?. K) e# }4 a8 |?>
' B/ D; c1 _! `. U3 P% d
回复

使用道具 举报

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

本版积分规则

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