CVE-2008-4609 – Vulnerability in Citrix NetScaler and Citrix Access Gateway Enterprise Edition Could Result in Denial of Service

Description of Problem

A vulnerability has been identified in the NetScaler and Access Gateway Enterprise Edition appliance firmware that could result in a limited denial of service.

This vulnerability has been assigned the following CVE number(s):

    • CVE-2008-4609: The TCP implementation in (1) Linux, (2) platforms based on BSD Unix, (3) Microsoft Windows, (4) Cisco products, and probably other operating systems allows remote attackers to cause a denial of service (connection queue exhaustion) via multiple vectors that manipulate information in the TCP state table, as demonstrated by sockstress.

This vulnerability is present in versions of all versions of Citrix NetScaler and Citrix Access Gateway Enterprise Edition up to and including version 9.1.

Mitigating Factors

In order to sustain this denial of service, the attacker would have to maintain a high volume of traffic against the target appliance.

What Customers Should Do

This vulnerability has been addressed in versions 9.1.100.3 and 8.1.68.7 of the firmware for Citrix NetScaler and Access Gateway Enterprise Edition.

Citrix recommends that customers upgrade their NetScaler and Access Gateway Enterprise Edition appliances to these builds of the versions 8.1 and 9.1 firmware, available at the following locations:

Citrix NetScaler:

http://www.citrix.com/English/ss/downloads/results.asp?productID=21679

Citrix Access Gateway Enterprise Edition: http://www.citrix.com/English/ss/downloads/results.asp?productID=15005&c1=pov1680613

Customers using versions of the NetScaler and Access Gateway Enterprise Edition firmware that do not currently have a fix available are recommended to implement the following mitigations:

NetScaler/Access Gateway Enterprise Edition 9.0/9.1

From the NSCLI,

    1. Ensure that the limited persist probe is enabled. The setting is enabled by default, but can be verified using the following command:

    > show ns tcpparam

    If the probe is not enabled, it can be enabled using the following command:

    > set tcpparam –limitedPersist ENABLED

    2. Modify the client idle timeout value for an existing vServer or service to a lower value, e.g. 60 seconds, using the following command:

    > Set lb vserver <vsvrname> -clttimeout 60

    3. Modify the global client idle timeout value to a lower value, e.g. 60 seconds, using the following command:

    For TCP vServers

    > set ns timeout -tcpclient 60

    For HTTP vServers

    > set ns timeout -httpclient 60

NetScaler/Access Gateway Enterprise Edition 8.1

From the shell,

    1. Ensure that the limited persist probe is enabled. The setting is enabled by default, but can be verified and enabled using the following command:

    bash# nsapimgr -ys limited_persistprobe=1

From the NSCLI,

    1. Modify the client idle timeout value for an existing vServer or service to a lower value, e.g. 60 seconds, using the following command:

    > Set lb vserver <vsvrname> -clttimeout 60

    2. Modify the global client idle timeout value to a lower value, e.g. 60 seconds, using the following command:

    > set ns timeout -client 60

NetScaler/Access Gateway Enterprise Edition 8.0

From the shell,

    1. Ensure that the limited persist probe is enabled. The setting is enabled by default, but can be verified and enabled using the following command:

    bash# nsapimgr -ys limited_persistprobe=1

From the NSCLI,

    2. Modify the client idle timeout value for an existing vServer or service to a lower value, e.g. 60 seconds, using the following command:

    > Set lb vserver <vsvrname> -clttimeout 60

    3. Modify the global client idle timeout value to a lower value, e.g. 60 seconds, using the following command:

    > set ns idletimeout tcpclt 60

NetScaler 7.0

From the shell,

    1. Ensure that the limited persist probe is enabled. The setting is enabled by default, but can be verified and enabled using the following command:

    bash# nsapimgr -ys limited_persistprobe=1

From the NSCLI,

    2. Modify the client idle timeout value for an existing vServer or service to a lower value, e.g. 60 seconds, using the following command:

    > Set lb vserver <vsvrname> -clttimeout 60

From the shell,

    3. Modify the global client idle timeout value to a lower value, e.g. 60 seconds, using the following command:

    bash# nsapimgr –ys clientconnidletimeout=6000

Note that this timeout value increments in 10ms intervals.

Citrix recommends that thorough testing is carried out on any NetScaler or Access Gateway Enterprise Edition appliance that has been modified in this way prior to deployment in a live environment.

What Citrix Is Doing

Citrix is notifying customers and channel partners about this potential security issue. This article is also available from the Citrix Knowledge Center at http://support.citrix.com/.

Obtaining Support on This Issue

If you require technical assistance with this issue, please contact Citrix Technical Support. Contact details for Citrix Technical Support are available at http://www.citrix.com/site/ss/supportContacts.asp.

Reporting Security Vulnerabilities to Citrix

Citrix welcomes input regarding the security of its products and considers any and all potential vulnerabilities seriously. If you would like to report a security issue to Citrix, please compose an e-mail to secure@citrix.com stating the exact version of the product in which the vulnerability was found and the steps needed to reproduce the vulnerability

Related:

  • No Related Posts

Leave a Reply