Lucene search
+L

Polycom HDX Default Credentials (Telnet)

🗓️ 08 Dec 2017 00:00:00Reported by Copyright (C) 2017 Greenbone AGType 
openvas
 openvas
🔗 plugins.openvas.org👁 466 Views

Polycom HDX has default telnet credentials, providing unauthorized access to sensitive information or system modification

Refs
Code
# 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

if(description)
{
  script_oid("1.3.6.1.4.1.25623.1.0.112151");
  script_version("2023-07-14T16:09:27+0000");
  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_name("Polycom HDX Default Credentials (Telnet)");

  script_tag(name:"last_modification", value:"2023-07-14 16:09:27 +0000 (Fri, 14 Jul 2023)");
  script_tag(name:"creation_date", value:"2017-12-08 09:24:56 +0100 (Fri, 08 Dec 2017)");

  script_category(ACT_ATTACK);
  script_family("Default Accounts");
  script_copyright("Copyright (C) 2017 Greenbone AG");
  script_dependencies("telnetserver_detect_type_nd_version.nasl", "gb_default_credentials_options.nasl");
  script_require_ports("Services/telnet", 23);
  script_mandatory_keys("telnet/polycom/device/detected");
  script_exclude_keys("default_credentials/disable_default_account_checks");

  script_xref(name:"URL", value:"https://staaldraad.github.io/2017/11/12/polycom-hdx-rce/");

  script_tag(name:"summary", value:"The Polycom device has default telnet credentials or passwordless login.");

  script_tag(name:"impact", value:"This issue may be exploited by a remote attacker to gain
  access to sensitive information or modify system configuration.");

  script_tag(name:"vuldetect", value:"Connect to the telnet service and try to either gain direct access since no password is set or login with default credentials.");

  script_tag(name:"insight", value:"The Polycom series exposes an administrative console on port 23. This
  administrative interface is built on PSH (Polycom Shell) and allows management of
  the underlying device. By default there is no password, or the password is either
  set to 456, admin, or POLYCOM, there is no username.");

  script_tag(name:"solution", value:"It is recommended to disable the telnet access.");

  script_tag(name:"qod_type", value:"exploit");
  script_tag(name:"solution_type", value:"Mitigation");

  exit(0);
}

if(get_kb_item("default_credentials/disable_default_account_checks"))
  exit(0);

include("telnet_func.inc");
include("misc_func.inc");
include("port_service_func.inc");
include("dump.inc");

port = telnet_get_port( default:23 );
banner = telnet_get_banner( port:port );

if ( "Polycom Command Shell" >< banner || "Welcome to ViewStation" >< banner || ( "Hi, my name is" >< banner && "Here is what I know about myself" >< banner ) ) {

  if ( "Polycom Command Shell" >< banner || ( "Hi, my name is" >< banner && "Here is what I know about myself" >< banner ) ) {

    soc = open_sock_tcp( port );
    if( ! soc ) exit( 0 );

    send( socket:soc, data: 'whoami\r\n' );
    recv = recv( socket:soc, length:2048 );
    close (soc);

    if ( "Hi, my name is" >< recv && "Here is what I know about myself" >< recv ) {
      VULN = TRUE;
      report = 'It was possible to gain access via telnet without entering any credentials.';
    }
  }

  if ( "Welcome to ViewStation" >< banner ) {
    report = 'It was possible to login via telnet using one or more of the following default credentials:\n';
    passwords = make_list( "456", "admin", "POLYCOM" );

    foreach pass ( passwords ) {
      soc = open_sock_tcp( port );
      if ( ! soc ) exit( 0 );

      recv = recv( socket:soc, length:2048 );

      if ( "Password" >< recv ) {
        send( socket:soc, data: pass + '\r\n' );
        recv = recv( socket:soc, length:1024 );

        if ( "Polycom Command Shell" >< recv ) {
          send( socket:soc, data: 'whoami\r\n' );
          recv = recv( socket:soc, length:2048 );

          if ( "Hi, my name is" >< recv && "Here is what I know about myself" >< recv ) {
            VULN = TRUE;
            report += '\nPassword: ' + pass;
          }
        }
      }
      close ( soc );
    }
  }

  if( VULN ) {
    security_message( port:port, data:report );
    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

14 Jul 2023 00:00Current
7.4High risk
Vulners AI Score7.4
466