Novell Messenger Client Detection (Mac OS X)

2013-03-25T00:00:00
ID MACOSX_NOVELL_MESSENGER_CLIENT_INSTALLED.NASL
Type nessus
Reporter Tenable
Modified 2018-07-30T00:00:00

Description

The remote host has Novell Messenger (formerly GroupWise Messenger) client installed. This is an instant messaging client based on Novell eDirectory.

                                        
                                            #TRUSTED 24afd29f2c9d9c95ed0cb3202e35a23758e8e7d33b7ccbd99ac1264c84b5cccc0d8821cfc3ad771538e38b25c6ec001a5a96a0b0f8e180a9259fc46cad0949c2c5920a4e698b4e99a2ae83cb58f012e72a38cc4e7783284af7c341289aa9c1643114c1aa4f41213972b06e5d516c0ef00a2789e6fc3d82fe514f4f5030a5a7665c0567bc6405b33b578c29baf9e471c7c3060b7be5e80d3408e90410afb256bded5eaea43eb85691428c40c36f33d28e2f20ab5e937d4f39cfeffe6c2af55e5119267fb43746f67176f3398d19868bee324fcb97e060846c2dfa0cf6675b40f3de7355f4a9ba5ffdc4b01c999f5344ef86c27826dabbab44d48c8274075ac1377d86a47a804754088197db438dd3dfc074e0cd46b5c9df4e1b15db95563eaf172dc98c18a76902616093b9793eb14de8d44a6e0125be9f11a615020393c274157ce6a383394c2d06765d3d17294ce940ca70e17706c05e02e88380cfc4d95a6c2bd65318c650ce886e85770c180dc53cafbc0ca38d7874db663b6b1b9b7e93bdac833d71673edc7e866346c255c4e22d5ed7ebd67e59e04b1a090781a046753b0da5fd6a1f8dd7fa535ad49e160fd51ab7e694b7719182f1392aaff552922ff682cb7c8cd70c78b99afad938d04520782432580ba5a9826094000f8f277cc983fb8e8b359c5d8fdc0b57576e4406486ff7f9f4442f927499c40c49a9f955fc26
#
# (C) Tenable Network Security, Inc.
#

include("compat.inc");

if (description)
{
  script_id(65673);
  script_version("1.7");
  script_set_attribute(attribute:"plugin_modification_date", value:"2018/07/30");

  script_name(english:"Novell Messenger Client Detection (Mac OS X)");
  script_summary(english:"Detects installs of Novell Messenger (formerly GroupWise Messenger) Client");

  script_set_attribute(attribute:"synopsis", value:"The remote host has an instant messaging client installed.");
  script_set_attribute(attribute:"description", value:
"The remote host has Novell Messenger (formerly GroupWise Messenger)
client installed. This is an instant messaging client based on Novell
eDirectory.");
  script_set_attribute(attribute:"see_also", value:"http://www.novell.com/documentation/novell_messenger22/");
  script_set_attribute(attribute:"solution", value:"n/a");
  script_set_attribute(attribute:"risk_factor", value:"None");

  script_set_attribute(attribute:"plugin_publication_date", value:"2013/03/25");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:novell:messenger");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:novell:groupwise_messenger");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_family(english:"MacOS X Local Security Checks");

  script_copyright(english:"This script is Copyright (C) 2013-2018 and is owned by Tenable, Inc. or an Affiliate thereof.");

  script_dependencies("ssh_get_info.nasl");
  script_require_keys("Host/local_checks_enabled", "Host/MacOSX/Version");

  exit(0);
}

include("audit.inc");
include("global_settings.inc");
include("misc_func.inc");
include("ssh_func.inc");
include("macosx_func.inc");
include("install_func.inc");

app = "Novell Messenger Client";

if(sshlib::get_support_level() >= sshlib::SSH_LIB_SUPPORTS_COMMANDS)
  enable_ssh_wrappers();
else disable_ssh_wrappers();

if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);

os = get_kb_item("Host/MacOSX/Version");
if (!os) audit(AUDIT_OS_NOT, "Mac OS X");

kb_base = "MacOSX/Novell_Messenger_Client";

path = '/Applications/Messenger.app';
plist = path + '/Contents/Info.plist';

# Messenger.app is not very unique, so double check this is a
# Novell Product
cmd =  'plutil -convert xml1 -o - \'' + plist + '\' | grep \'string\'';
plist_string_contents = tolower(exec_cmd(cmd:cmd));
if("novell" >!< plist_string_contents && 'groupwise' >!< plist_string_contents)
  audit(AUDIT_NOT_INST, app);

cmd =  'plutil -convert xml1 -o - \'' + plist + '\' | ' +
  'grep -A 1 CFBundleVersion | ' +
  'tail -n 1 | ' +
  'sed \'s/.*string>\\(.*\\)<\\/string>.*/\\1/g\'';
version = exec_cmd(cmd:cmd);

if (!strlen(version)) audit(AUDIT_NOT_INST, app);

set_kb_item(name:kb_base+"/Installed", value:TRUE);

if (version !~ "^[0-9]") audit(AUDIT_VER_FAIL, app);

set_kb_item(name:kb_base+"/Version", value:version);
set_kb_item(name:kb_base+"/Path", value:path);

register_install(
  app_name:app,
  path:path,
  version:version,
  cpe:"cpe:/a:novell:messenger");

report_installs(app_name:app);