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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php
& R  M6 e) O1 M  F/**
9 l7 ?; Y9 A" d6 M8 y* Q0 w * uploadFlash.php9 c+ S5 z# \1 g4 D
* Flash文件上传.( [$ o6 N, r- Q1 b
*/
6 Y% K2 \+ I/ K3 T/ C/ c. w0 hrequire_once('../global.inc.php');7 ]2 [- P( m! Z- H; E- N6 H3 }' g: i
8 C3 c7 V  Y3 h* J, S
//operateId=1 上传,operateId=2 获取地址./ J3 P1 s0 h# D, P
$operateId = intval($_REQUEST['operateId']);
2 X3 S  C8 j+ X0 fif(empty($operateId)) exit;+ T5 [  H5 D( |; M. D% V- p
/ G& C# }! D1 L7 f  E  I+ P6 ?
if($operateId == 1){. t/ `) Y* g( [2 [  h
$date = date("Ymd");
% f( W7 e9 o: c5 n9 L: d1 |2 b $dest = $CONFIG->basePath."data/files/".$date."/";
4 T( I" y# L$ G+ ]2 m4 X5 |# p $COMMON->createDir($dest);! U/ I9 h9 N6 U$ X$ ~+ D
//if (!is_dir($dest)) mkdir($dest, 0777);! S! r/ i& P& m
$ p, _/ V- V0 z) P
$nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));0 I' ]$ w  o- E- ~8 ^% T& ~2 `* D

" h3 `9 _1 v. t' d $allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');  F# Q+ H' X6 U5 G7 p* e" r
) ^: z% P- b" x! U4 Z/ p
if(!in_array($nameExt, $allowedType)){, j- h6 o. G  N5 L# O+ |) c1 a
  $msg = 0;
7 i0 v, Y. J1 }* z% ? }
9 p3 m$ O( I4 p7 E* ~8 I9 y4 s if(empty($msg)){& \. N/ U4 y2 D
  $filename = getmicrotime().'.'.$nameExt;
- Y. p; f7 l+ _, A7 t1 y( y& o  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);
/ a- ]- J* Z8 v5 _/ ~  1 @! K9 @  D' v$ @0 Q/ |+ h
  $filename = $dest.$filename;
- Q- v2 z- w1 J, a% Z  if(empty($_FILES['Filedata']['error'])){
! G# i0 o% D8 d: X4 G   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);
$ F$ Q  Y6 L" z1 A  }
/ Q8 f: y+ b$ H/ }9 g. ~. e- w+ N  
" X/ W2 r$ D4 `$ s0 y1 V% m/ ~8 d  if (file_exists($filename)){
7 o8 m7 A$ I4 Q1 t5 }2 t   //$msg = 1;
: V. J$ q0 `+ U3 Y/ l* s0 K" d8 C2 i) y; b   $msg = $file_url;
" A9 `/ B4 |* ]+ G# s   @chmod($filename, 0444);! X( {& a8 f$ V: A. ^
  }else{
1 p  C) ?4 @  f5 s   $msg = 0;
5 A1 r/ |. u4 x% p/ }  }
2 }! v7 F. M5 |, F% Y" { }
6 R3 _, I8 z' u) y$ S- W% J, A& I: e& x $outMsg = "fileUrl=".$msg;  l4 [  v) V$ d0 a4 y, W
$_SESSION["eoutmsg"] = $outMsg;$ `9 e1 H0 l1 O$ G
exit;$ o! U; F, q/ \' M* p. K
}else if($operateId == 2){
/ X) |. ^; `8 l& _2 `7 k0 o2 |+ F $outMsg = $_SESSION["eoutmsg"];
3 P1 [+ y$ s, H2 ]; j# f if(!empty($outMsg)){
' f* K! Y7 K- q0 @- G  session_unregister("eoutmsg");8 h6 G* o9 t* [. `
  echo '&'.$outMsg;4 @5 q; f( S7 t, }
  exit;
0 F/ R4 A! {; r- m }else{4 W& u& j9 F2 K! H  f
  echo "&fileUrl=0";
4 c$ g4 d" W4 o% U4 j; f1 m; x4 i3 ]  exit;
. ~" c: J: ?/ x. h  I }
$ B& |: q8 Z6 {* }$ `  F}6 U( c) I  g+ s5 d9 R
4 S. {, Q) h( s% l6 L
function getmicrotime(){ % _! H* J' B; m- ?' B! c: F
    list($usec, $sec) = explode(" ",microtime());
+ w/ [; Z3 U4 E2 k    return ((float)$usec + (float)$sec);
8 k9 U$ f& N1 Q4 q% \% @2 g}# n/ h! D9 ^1 l/ K( R
7 J0 t9 i  ?5 A: ^2 t! p6 G
?>
( x) v- s" J7 L
回复

使用道具 举报

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

本版积分规则

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