Lucene search
+L

Openlink Virtuoso Server Default Credentials

🗓️ 25 Jul 2008 00:00:00Reported by TenableType 
nessus
 nessus
🔗 www.tenable.com👁 17 Views

The remote Openlink Virtuoso server is configured with default credentials to control access. Change the password immediately

Code
#%NASL_MIN_LEVEL 70300
#
# (C) Tenable Network Security, Inc.
#

include('deprecated_nasl_level.inc');
include('compat.inc');

if (description)
{
  script_id(33589);
  script_version("1.13");
  script_set_attribute(attribute:"plugin_modification_date", value:"2022/04/11");

  script_name(english:"Openlink Virtuoso Server Default Credentials");

  script_set_attribute(attribute:"synopsis", value:
"The remote service is protected with default credentials.");
  script_set_attribute(attribute:"description", value:
"The remote Openlink Virtuoso server is configured to use default
credentials to control access.");
  script_set_attribute(attribute:"solution", value:
"Change the password immediately.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P");
  script_set_cvss_temporal_vector("CVSS2#E:H/RL:ND/RC:ND");

  script_set_attribute(attribute:"plugin_publication_date", value:"2008/07/25");

  script_set_attribute(attribute:"plugin_type", value:"remote");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:openlink:openlink");
  script_set_attribute(attribute:"default_account", value:"true");
  script_set_attribute(attribute:"thorough_tests", value:"true");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_family(english:"Databases");

  script_copyright(english:"This script is Copyright (C) 2008-2022 Tenable Network Security, Inc.");

  script_dependencies("openlink_virtuoso_detect.nasl");
  script_exclude_keys("global_settings/supplied_logins_only");
  script_require_ports(1111, "Services/openlink-virtuoso");

  exit(0);
}


include('audit.inc');
include('global_settings.inc');
include('misc_func.inc');
include('byte_func.inc');


port = get_service(svc:"openlink-virtuoso", default:1111, exit_on_fail:TRUE);

if (supplied_logins_only) audit(AUDIT_SUPPLIED_LOGINS_ONLY);

set_byte_order(BYTE_ORDER_LITTLE_ENDIAN);

# Make a list of default users to log in.
# According to the documentation default users are "dav","vad","demo",
# "soap","fori" and "dba". However, only user dba is active.

users = make_list("dba","dav","vad","demo","soap","fori");

id    = 1 ; # Connection identifier
info = NULL;

foreach user (users)
{
  soc = open_sock_tcp(port);
  if (soc)
  {
    # Send a identification request.
    req =
      mkword(0xbcc1) +
      mkword(0xbc05) +
      mkword(0xbc01) +
      mkword(0xbc00) +
      mkbyte(0)      +	 # May be end of msg
      mkword(0x15b5) +  # 0xb5 = msg code for size 0x15 == size
      "caller_identification" +
      mkword(0xbcc1) +
      mkword(0xbc01) +
      mkbyte(0) ;	 # May be end of msg

    send(socket:soc, data:req);
    res = recv(socket:soc, min:43, length:1024);

    if (res)
    {
      # Check if we get port number in response.
      if (strlen(res) >= 43 && port == substr(res,15,18))
      {
        # Send SCON command with default user/passwd combination
        length = strlen(user);

        req2 =
          mkword(0xbcc1)    +
          mkword(0xbc05)    +
          mkword(0xbc01)    +
          mkbyte(id)        + # id == Connection identifier
          mkbyte(0xbc)      +
          mkbyte(0)         + # May be end of msg
          mkword(0x04b5)    + # 0xb5 = msg size code, size 0x04 == size
          "SCON"	          +
          mkword(0xbcc1)    +
          mkbyte(0x04)      + # ?
          mkbyte(0xb5)      + # 0xb5 = msg size code
          mkbyte(length)    + # length
          user 	          +
          mkbyte(0xb5)      + # 0xb5 = msg code for size
          mkbyte(length)    + # 0xb5 = msg code for size
          user 	          +
          mkword(0x0ab5)    + # Send Version
          "05.00.3028"      +
          mkword(0xbcc1)    +
          mkbyte(0x06)      + # ?
          mkword(0x06b5)    + # Send Client Name
          "NESSUS"          +
          mkword(0x00bd)    +
          mkword(0x0c00)    +
          mkbyte(0xb4)      +
          mkword(0x0fb5)    + # Send Hostname
          "OpenLinkVituoso" +
          mkword(0x05b5)    + # 0xb5 = msg code for size
          "Win32"           +
          mkword(0x00b5)    + # 0xb5 = msg code for size
          mkword(0x00bc) ;
        send(socket:soc, data:req2);
        res = recv(socket:soc, length:1024);

        # If we could login successfully ...
        if (
          strlen(res) &&
          "SQL_TXN_ISOLATION"    >< res &&
          "SQL_BINARY_TIMESTAMP" >< res
        )
        {
          # Send a close request, or else the connection limitation is
	  # is exceeded.
          cls =
            mkdword(0xbc05bcc1) +
            mkdword(0xbc06bc01) +
            mkbyte(0x00) +
            mkword(0x04b5) +
            "FRST" + mkbyte(0xc1) +
            mkdword(0x0cb502bc) +
            mkbyte(0x73) 	    +
            port +
            mkdword (0x2d5f365f) +
            mkword (0x5f31) +
            mkbyte (0x30) +
            mkword(0x00bc)	;

          # Send FRST twice.
          send(socket:soc, data:cls);
          res3 = recv(socket:soc, min:34, length:1024);
          send(socket:soc, data:cls);
          res3 = recv(socket:soc, min:34, length:1024);

          info += " " + user + " : " + user + '\n';
        }
      }

      id += 3;
    }
    close(soc);
  }
}

if (info)
{
  if (report_verbosity > 0)
  {
    report =
      '\n' +
      'Nessus logged in with the following credentials : \n' +
      '\n' +
      info;
    security_hole(port:port,extra:report);
  }
  else security_hole(port);
}
else audit(AUDIT_HOST_NOT, "affected");

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

11 Apr 2022 00:00Current
5.5Medium risk
Vulners AI Score5.5
17