Vulnerabilities > CVE-2006-0530 - Message Queuing Denial Of Service vulnerability in Computer Associates

047910
CVSS 5.0 - MEDIUM
Attack vector
NETWORK
Attack complexity
LOW
Privileges required
NONE
Confidentiality impact
NONE
Integrity impact
NONE
Availability impact
PARTIAL
network
low complexity
ca
nessus

Summary

Computer Associates (CA) Message Queuing (CAM / CAFT) before 1.07 Build 220_16 and 1.11 Build 29_20, as used in multiple CA products, allows remote attackers to cause a denial of service via spoofed CAM control messages.

Nessus

NASL familyDenial of Service
NASL idCACAM_DOS.NASL
descriptionThe remote version of CA Message Queuing Service is vulnerable to two flaws that could lead to a denial of service : - Improper handling of specially crafted TCP packets on port 4105 (CVE-2006-0529) - Failure to handle spoofed UDP CAM requests (CVE-2006-0530)
last seen2020-06-01
modified2020-06-02
plugin id20840
published2006-02-03
reporterThis script is Copyright (C) 2006-2018 Tenable Network Security, Inc.
sourcehttps://www.tenable.com/plugins/nessus/20840
titleCA Multiple Products Message Queuing Multiple Remote DoS
code
#
# (C) Tenable Network Security, Inc.
#


include("compat.inc");

if(description)
{
 script_id(20840);
 script_version("1.19");
 script_cve_id("CVE-2006-0529", "CVE-2006-0530");
 script_bugtraq_id(16475);

 script_name(english:"CA Multiple Products Message Queuing Multiple Remote DoS");

 script_set_attribute(attribute:"synopsis", value:
"It is possible to crash the remote messaging service." );
 script_set_attribute(attribute:"description", value:
"The remote version of CA Message Queuing Service is vulnerable 
to two flaws that could lead to a denial of service :

  - Improper handling of specially crafted TCP packets on 
    port 4105 (CVE-2006-0529)

  - Failure to handle spoofed UDP CAM requests 
    (CVE-2006-0530)"
 );
  # http://supportconnectw.ca.com/public/ca_common_docs/camsecurity_notice.asp
 script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?6647fd25" );
 script_set_attribute(attribute:"solution", value:
"CA has released a set of patches for CAM 1.05, 1.07 and 1.11." );
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:P");
  script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
  script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
  script_set_attribute(attribute:"exploit_available", value:"false");

 script_set_attribute(attribute:"plugin_publication_date", value: "2006/02/03");
 script_set_attribute(attribute:"vuln_publication_date", value: "2006/02/02");
 script_cvs_date("Date: 2018/06/27 18:42:25");
script_set_attribute(attribute:"plugin_type", value:"remote");
script_set_attribute(attribute:"cpe",value:"cpe:/a:ca:messaging");
script_end_attributes();


 script_summary(english:"Determines if the remote CAM service is vulnerable to a DoS");
 script_category(ACT_GATHER_INFO);
 script_copyright(english:"This script is Copyright (C) 2006-2018 Tenable Network Security, Inc.");
 script_family(english:"Denial of Service");
 script_dependencies("cacam_detect.nasl");
 script_require_keys("CA/MessageQueuing");
 script_require_ports(4105);
 exit(0);
}

version = get_kb_item ("CA/MessageQueuing");
if (isnull(version))
  exit (0);

port = 4105;

main = ereg_replace (pattern:"^([0-9]+)\.[0-9]+ \(Build [0-9]+_[0-9]+\)$", string:version, replace:"\1");
revision = ereg_replace (pattern:"^[0-9]+\.([0-9]+) \(Build [0-9]+_[0-9]+\)$", string:version, replace:"\1");

build = ereg_replace (pattern:"^[0-9]+\.[0-9]+ \(Build ([0-9]+)_[0-9]+\)$", string:version, replace:"\1");
build_rev = ereg_replace (pattern:"^[0-9]+\.[0-9]+ \(Build [0-9]+_([0-9]+)\)$", string:version, replace:"\1");


main = int(main);
revision = int (revision);
build = int(build);
build_rev = int (build_rev);


# vulnerable :
# 1.05
# < 1.07 build 220_16
# 1.07 build 230 & 231
# < 1.11 build 29_20

if ( (main < 1) ||
     ((main == 1) && (revision < 7)) ||
     ((main == 1) && (revision > 7) && (revision < 11)) )
{
 security_warning(port);
}
else if (main == 1)
{
 if (revision == 7)
 {
  if ( (build < 220) ||
       ( (build == 220) && (build_rev < 16) ) )
    security_warning(port);
  else if ((build == 230) || (build == 231))
    security_warning(port);
 }
 else if (revision == 11)
 {
  if ( (build < 29) ||
       ( (build == 29) && (build_rev < 20) ) )
    security_warning(port);
 }
}