The remote Mac OS X host is running a version of Microsoft Office that is affected by several vulnerabilities.
If an attacker can trick a user on the affected host into opening a specially crafted Office or PowerPoint file, these issues could be leveraged to execute arbitrary code subject to the user’s privileges.
#TRUSTED 0fd64d4f81e27ba2a6ab05b5464e6fd90984e9c7b002eea220f3bf7e269ad16c2af9fe26ecfad6decd1c1cd89d13515e03c1e7fcb7f69c09649392c235ebce894e87b50042cf421ee4a7e1bd65c1dd58881d6613cabd4d55413ac9efd5f544a85600af059143cb36e326447f97ac2054dbad971537caa8e71daaf43ab1a11af8d4633ac3de67b272281314589e65042a39895b206477c8638a5e6130e83490e09a2aad0710475e13e314f7f6b0209ac928ae1773bf3603df510704010e692ae4a75e97720771266824100cc7c0d91048ea7076911eeb34ef56644048b9ae537c189353f14640a6ebb99e7cc02e668e00cceb4b0c69222cfc2ef43e95adc587e8f291b4da088c5a7d2b18234a04b663a847c461ea75fa2e0714874aba762855b3159db1b064ff321a3365946da1be33f2c9d25901c156f258d9e112db3e413a2076ab0860317964f165ae5d88817cef08d4af5aa5015ad69930b29f9bc61b53c15b846013e7bfc8da0325292980857a6e3d62d2e4d93e37946e7d25e7867a182df504d91ebe1d2758bd22ddd6fe51b8a694e489eb32df2e3b7339250d1dfb4721f87bb3b6864b1514d66d5cd26e5c0b5b9a26187a05deba82f2e0c9ec019cba342ee213fe5d7397d28c6c3a18d8a8bf07949121c4e5b1c1b1129eb07059f1d68f8840a28254976b80d306eb457b7eb53db6770673591209cf138b1e04e0d183a5
#TRUST-RSA-SHA256 603419074dc6db286dcfc8cc3868937e967935a9eea25e53ddfb7ca8c11b174ed19656795513351d21f37289ee1670c1f8259d389db8d7016d9bf2bc4b52259379783dae565452e2e205973b39906da292e6896109e0fd01fa0e2f89b63d707b1df73c5ccb03f99577b2a61ce81b4c7ab7b5bc70f08d0d465296be258dc4826f160f8c86f9bbd88391f8c7abb8f2df20cdcb69ed4ffb544a96f0ccf0dd1352c99629125724b29dacbce3a927ef3169e5d4c421fa58584f20756564a694841eef053056e77d64372ca084b25585ba46026767d92afc6b534690367444c78d786d322f42f286836a2d4d868c4542c22bc0fb86973abf6233366ef90a6898938692e2887ea11501accc13e9360c526322aa4a34aee579c54212060779f985ed4373714da92c1372b7f4c9a765f39099258542ad0ebb815db40bf95d10c6dfd33de8f74908f4b76e271258dfbba0fad266bcbc08c1476e9ceed54e17ba265a859547016d29b0b6438b2aa43c23050098c43c080586a6982237e96623abc820c5852a6102c8ba4edfd1eda49c050196742717f9d3bbdc5d18fcc6a6a16806a73d49c3f222a6ae66dceaa334157e94bbfc11e21b7038f8bbe3bb34cd9cbe756c125751bc97715ec8502b1d78c7ac37092d3bdfca62656fc03f8c2b93165d9d06ec7dfc4942f5e8f48ff0d6e55b4385ddccb7e9d7535645bde47abac0014c8130888f10
#
# (C) Tenable Network Security, Inc.
#
include("compat.inc");
if (description)
{
script_id(50064);
script_version("1.26");
script_set_attribute(attribute:"plugin_modification_date", value:"2023/11/27");
script_cve_id("CVE-2010-0031", "CVE-2010-0243");
script_bugtraq_id(38073, 38103);
script_xref(name:"MSFT", value:"MS10-003");
script_xref(name:"MSFT", value:"MS10-004");
script_xref(name:"MSKB", value:"975416");
script_xref(name:"MSKB", value:"978214");
script_xref(name:"MSKB", value:"979674");
script_name(english:"MS10-003 / MS10-004: Vulnerabilities in Microsoft Office Could Allow Remote Code Execution (978214 / 975416) (Mac OS X)");
script_summary(english:"Check version of Microsoft Office");
script_set_attribute(attribute:"synopsis", value:
"An application installed on the remote Mac OS X host is affected by
multiple remote code execution vulnerabilities.");
script_set_attribute(attribute:"description", value:
"The remote Mac OS X host is running a version of Microsoft Office that
is affected by several vulnerabilities.
If an attacker can trick a user on the affected host into opening a
specially crafted Office or PowerPoint file, these issues could be
leveraged to execute arbitrary code subject to the user's privileges.");
script_set_attribute(attribute:"see_also", value:"http://technet.microsoft.com/en-us/security/bulletin/ms10-003");
script_set_attribute(attribute:"see_also", value:"http://technet.microsoft.com/en-us/security/bulletin/ms10-004");
script_set_attribute(attribute:"solution", value:"Microsoft has released a set of patches for Office 2004 for Mac.");
script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:C/I:C/A:C");
script_set_cvss_temporal_vector("CVSS2#E:F/RL:OF/RC:C");
script_set_attribute(attribute:"cvss_score_source", value:"CVE-2010-0243");
script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
script_set_attribute(attribute:"exploit_available", value:"true");
script_set_attribute(attribute:"exploit_framework_core", value:"true");
script_cwe_id(119);
script_set_attribute(attribute:"vuln_publication_date", value:"2010/02/09");
script_set_attribute(attribute:"patch_publication_date", value:"2010/02/09");
script_set_attribute(attribute:"plugin_publication_date", value:"2010/10/20");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"cpe:/a:microsoft:office:2004::mac");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_family(english:"MacOS X Local Security Checks");
script_copyright(english:"This script is Copyright (C) 2010-2023 Tenable Network Security, Inc.");
script_dependencies("ssh_get_info.nasl");
script_require_keys("Host/MacOSX/packages", "Host/uname");
exit(0);
}
include("misc_func.inc");
include("ssh_func.inc");
include("macosx_func.inc");
enable_ssh_wrappers();
function exec(cmd)
{
local_var buf, ret;
if (islocalhost())
buf = pread_wrapper(cmd:"/bin/bash", argv:make_list("bash", "-c", cmd));
else
{
ret = ssh_open_connection();
if (!ret) exit(1, "ssh_open_connection() failed.");
buf = ssh_cmd(cmd:cmd);
ssh_close_connection();
}
return buf;
}
packages = get_kb_item("Host/MacOSX/packages");
if (!packages) exit(1, "The 'Host/MacOSX/packages' KB item is missing.");
uname = get_kb_item("Host/uname");
if (!uname) exit(1, "The 'Host/uname' KB item is missing.");
if (!egrep(pattern:"Darwin.*", string:uname)) exit(1, "The host does not appear to be using the Darwin sub-system.");
# Gather version info.
info = '';
installs = make_array();
prod = 'Office 2004 for Mac';
cmd = GetCarbonVersionCmd(file:"Microsoft Component Plugin", path:"/Applications/Microsoft Office 2004/Office");
version = exec(cmd:cmd);
if (version && version =~ "^[0-9]+\.")
{
version = chomp(version);
if (version !~ "^11\.") exit(1, "Failed to get the version for "+prod+" - '"+version+"'.");
installs[prod] = version;
ver = split(version, sep:'.', keep:FALSE);
for (i=0; i<max_index(ver); i++)
ver[i] = int(ver[i]);
fixed_version = '11.5.7';
fix = split(fixed_version, sep:'.', keep:FALSE);
for (i=0; i<max_index(fix); i++)
fix[i] = int(fix[i]);
for (i=0; i<max_index(fix); i++)
if ((ver[i] < fix[i]))
{
info +=
'\n Product : ' + prod +
'\n Installed version : ' + version +
'\n Fixed version : ' + fixed_version + '\n';
break;
}
else if (ver[i] > fix[i])
break;
}
# Report findings.
if (info)
{
gs_opt = get_kb_item("global_settings/report_verbosity");
if (gs_opt && gs_opt != 'Quiet') security_hole(port:0, extra:info);
else security_hole(0);
exit(0);
}
else
{
if (max_index(keys(installs)) == 0) exit(0, "Office for Mac 2004 is not installed.");
else
{
msg = 'The host has ';
foreach prod (sort(keys(installs)))
msg += prod + ' ' + installs[prod] + ' and ';
msg = substr(msg, 0, strlen(msg)-1-strlen(' and '));
msg += ' installed and thus is not affected.';
exit(0, msg);
}
}