| Reporter | Title | Published | Views | Family All 6 |
|---|---|---|---|---|
| CVE-2012-5158 | 14 Mar 201416:00 | – | cve | |
| CVE-2012-5158 | 14 Mar 201416:00 | – | cvelist | |
| CVE-2012-5158 | 14 Mar 201416:00 | – | debiancve | |
| EUVD-2012-5081 | 7 Oct 202500:30 | – | euvd | |
| CVE-2012-5158 | 14 Mar 201416:55 | – | nvd | |
| Design/Logic Flaw | 14 Mar 201416:55 | – | prion |
| Source | Link |
|---|---|
| nessus | www.nessus.org/u |
| puppet | www.puppet.com/security/cve/cve-2012-5158 |
| cve | www.cve.mitre.org/cgi-bin/cvename.cgi |
#%NASL_MIN_LEVEL 70300
#
# (C) Tenable Network Security, Inc.
#
include('deprecated_nasl_level.inc');
include('compat.inc');
if (description)
{
script_id(73377);
script_version("1.5");
script_set_attribute(attribute:"plugin_modification_date", value:"2021/01/19");
script_cve_id("CVE-2012-5158");
script_bugtraq_id(66641);
script_name(english:"Puppet Enterprise 2.x < 2.6.1 Session Handling Weakness");
script_summary(english:"Checks Puppet Enterprise version");
script_set_attribute(attribute:"synopsis", value:
"A web application on the remote host is affected by a session handling
weakness.");
script_set_attribute(attribute:"description", value:
"According to its self-reported version number, the Puppet Enterprise
2.x install on the remote host is prior to 2.6.1. As a result, it is
reportedly affected by a session handling weakness. An error exists
related to session handling, session secret regeneration, and a lack
of proper termination of current sessions. An authenticated user may
still be able to access the application after the session secret is
changed.");
# https://groups.google.com/forum/?fromgroups=#!topic/puppet-announce/nH1sCnYspXc
script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?239ca43b");
script_set_attribute(attribute:"see_also", value:"https://puppet.com/security/cve/cve-2012-5158");
script_set_attribute(attribute:"solution", value:"Upgrade to Puppet Enterprise 2.6.1 or later.");
script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:S/C:N/I:P/A:N");
script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
script_set_attribute(attribute:"exploitability_ease", value:"No exploit is required");
script_set_attribute(attribute:"exploit_available", value:"false");
script_set_attribute(attribute:"vuln_publication_date", value:"2012/10/10");
script_set_attribute(attribute:"patch_publication_date", value:"2012/10/10");
script_set_attribute(attribute:"plugin_publication_date", value:"2014/04/07");
script_set_attribute(attribute:"plugin_type", value:"remote");
script_set_attribute(attribute:"cpe", value:"cpe:/a:puppetlabs:puppet");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_family(english:"CGI abuses");
script_copyright(english:"This script is Copyright (C) 2014-2021 Tenable Network Security, Inc.");
script_dependencies("puppet_rest_detect.nasl");
script_require_keys("puppet/rest_port");
exit(0);
}
include("audit.inc");
include("global_settings.inc");
include("misc_func.inc");
include("http.inc");
include("webapp_func.inc");
##
# checks if the given version falls between the given bounds, and
# generates plugin output if it does
#
# @anonparam ver version to check
# @anonparam fix first fixed version
# @anonparam min_ver the lowest/earliest vulnerable version, relative to 'fix' (optional)
#
# @return plugin output if 'ver' is vulnerable relative to 'fix' and/or 'min_ver',
# NULL otherwise
##
function _check_version(enterprise)
{
local_var ver, fix, min_ver, major_ver, report;
ver = _FCT_ANON_ARGS[0];
fix = _FCT_ANON_ARGS[1];
min_ver = _FCT_ANON_ARGS[2];
if (
# no lower bound
(isnull(min_ver) && ver_compare(ver:ver, fix:fix, strict:FALSE) < 0) ||
# lower bound
(
!isnull(min_ver) &&
ver_compare(ver:ver, fix:fix, strict:FALSE) < 0 &&
ver_compare(ver:ver, fix:min_ver, strict:FALSE) >= 0
)
)
{
if (enterprise)
{
report =
'\n Installed version : Puppet Enterprise ' + ver +
'\n Fixed version : Puppet Enterprise ' + fix +
'\n';
}
else report = NULL;
}
else report = NULL;
return report;
}
port = get_kb_item_or_exit('puppet/rest_port');
ver = get_kb_item_or_exit('puppet/' + port + '/version');
report = NULL;
vuln = FALSE;
if ('Enterprise' >< ver)
{
# convert something like
# 2.7.19 (Puppet Enterprise 2.7.0)
# to
# 2.7.0
match = eregmatch(string:ver, pattern:"Enterprise ([0-9.]+)\)");
if (isnull(match)) audit(AUDIT_UNKNOWN_WEB_APP_VER, 'Puppet Enterprise', build_url(port:port));
ver = match[1];
if (report = _check_version(ver, '2.6.1', '2.0.0', enterprise:TRUE))
vuln = TRUE;
}
if (!vuln) audit(AUDIT_LISTEN_NOT_VULN, 'Puppet', port, ver);
if (report_verbosity > 0) security_warning(port:port, extra:report);
else security_warning(port);
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