某信服EDR任意用户登陆漏洞分析

   日期:2020-08-22     浏览:131    评论:0    
核心提示:影响范围: EDR <= v3.2.19漏洞描述: 终端检测响应平台EDR,围绕终端资产安全生命周期,通过预防、防御、检测、响应赋予终端更为细致的隔离策略、更为精准的查杀能力、更为持续的检测能力、更为快速的处置能力。在应对高级威胁的同时,通过云网端联动协同、威胁情报共享、多层级响应机制,帮助用户快速处置终端安全问题,构建轻量级、智能化、响应快的下一代终端安全系统。0x01 漏洞复现/ui/login.php?user=usernameusername 可能会有变动需要f...

目录

0x01 漏洞复现

0x02 FOFA检索关键词

0x03 代码审计

影响范围: EDR  <= v3.2.19
漏洞描述:
       终端检测响应平台EDR,围绕终端资产安全生命周期,通过预防、防御、检测、响应赋予终端更为细致的隔离策略、更为精准的查杀能力、更为持续的检测能力、更为快速的处置能力。在应对高级威胁的同时,通过云网端联动协同、威胁情报共享、多层级响应机制,帮助用户快速处置终端安全问题,构建轻量级、智能化、响应快的下一代终端安全系统。

0x01 漏洞复现

/ui/login.php?user=username

访问后可自动跳转进入

0x02 FOFA检索关键词

title="终端检测响应平台" && country="CN"

0x03 代码审计

通过url确定文件为ui/login.php

参数user , 我们快速搜索定位一下

在这里发现此段代码出现了问题

if((isset($_SERVER["REMOTE_ADDR"]) && ("127.0.0.2" == $_SERVER["REMOTE_ADDR"] || "127.0.0.1" == $_SERVER["REMOTE_ADDR"]))
            || $docker)
        {
            //构造session
            if(isset($_GET["user"]))
            {
                $auth_value["auth_user"] = $_GET["user"];
            }
            elseif($docker)
            {
                $auth_value["auth_user"] = $username;
            }
            else
            {
                //$auth_value["auth_user"] = "SCLOUDE";
                //免密登录后,人为loginout,还是需要密码登录,url不一样
                return;
            }

在if判断中,首先判断了$_SERVER["REMOTE_ADDR"]是否存在且为127.0.0.2

然后判断了是否等于127.0.0.1 以及$docker

因为exp执行可跳转进入后台,这里判断为真

参考群内表哥的说话,可以理解为内网到内网的反代场景,

判断经过ngix反代,REMOTE_ADDR为127.0.0.1,因此为真

漏洞触发的原因可能为代理设置问题或是docker配置问题

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服