The present invention is a method and apparatus for providing iscsi target stealth operation. In an exemplary aspect of the present invention, a method for prohibiting iscsi discovery sessions may include the following steps: (a) receiving an iscsi login request; (b) determining whether the iscsi login request payload contains a “SessionType=Discovery” key/value pair; and (c) when discovery sessions are disabled and the iscsi login request contains the “SessionType=Discovery” key/value pair, rejecting the iscsi login request with a iscsi status-class of “Target Error” and status-detail of “Session Type not Supported.” The present stealth mode may include the foregoing-described method for restricting the discovery operation and a method for managing discovery and ancillary protocols which may lead to denial of service attacks.
|
13. A method for providing iscsi target stealth operation, comprising:
maintaining iscsi standard support for all discovery sessions on all network portals, including returning a list of all targets on the network entity and all of the portal groups associated with each target;
providing send target discovery sessions as default behavior;
prohibiting send target discovery sessions as a system administrator option;
configuring discovery via supporting protocols external to the iscsi protocol;
providing a setting to individually enable/disable at least one of discovery sessions, SLP, iSNS, ICMP, and SNMP; and
when said discovery session, said SLP, and said iSNS are all disabled, providing a warning that an initiator must be statically configured to locate a target on an iscsi entity.
17. An apparatus for providing iscsi target stealth operation, comprising:
maintaining iscsi standard support for all discovery sessions on all network portals, including returning a list of all targets on the network entity and all of the portal groups associated with each target;
providing send target discovery sessions as default behavior;
prohibiting send target discovery sessions as a system administrator option;
configuring discovery via supporting protocols external to the iscsi protocol;
means for providing a setting to individually enable/disable at least one of discovery sessions, SLP, iSNS, ICMP, and SNMP; and
when said discovery session, said SLP, and said iSNS are all disabled, means for providing a warning that an initiator must be statically configured to locate a target on an iscsi entity.
1. A method for managing discovery and ancillary protocols which lead to denial of service attacks, comprising:
maintaining iscsi standard support for all discovery sessions on all network portals, including returning a list of all targets on the network entity and all of the portal groups associated with each target;
providing send target discovery sessions as default behavior;
prohibiting send target discovery sessions as a system administrator option;
configuring discovery via supporting protocols external to the iscsi protocol;
receiving an iscsi login request;
determining whether a payload of said iscsi login request contains a “SessionType=Discovery” key/value pair; and
when discovery sessions are disabled and said iscsi login request contains said “SessionType=Discovery” key/value pair, rejecting said iscsi login request.
5. An apparatus for managing discovery and ancillary protocols which lead to denial of service attacks, comprising:
maintaining iscsi standard support for all discovery sessions on all network portals, including returning a list of all targets on the network entity and all of the portal groups associated with each target;
providing send target discovery sessions as default behavior;
prohibiting send target discovery sessions as a system administrator option;
configuring discovery via supporting protocols external to the iscsi protocol;
means for receiving an iscsi login request;
means for determining whether a payload of said iscsi login request contains a “SessionType=Discovery” key/value pair; and
when discovery sessions are disabled and said iscsi login request contains said “SessionType=Discovery” key/value pair, means for rejecting said iscsi login request.
21. A computer-readable medium having computer-executable instructions for performing a method for providing iscsi target stealth operation, said method comprising:
maintaining iscsi standard support for all discovery sessions on all network portals, including returning a list of all targets on the network entity and all of the portal groups associated with each target;
providing send target discovery sessions as default behavior;
prohibiting send target discovery sessions as a system administrator option;
configuring discovery via supporting protocols external to the iscsi protocol;
providing a setting to individually enable/disable at least one of discovery sessions, SLP, iSNS, ICMP, and SNMP; and
when said discovery session, said SLP, and said iSNS are all disabled, providing a warning that an initiator must be statically configured to locate a target on an iscsi entity.
9. A computer-readable medium having computer-executable instructions for performing a method for managing discovery and ancillary protocols, said method comprising:
maintaining iscsi standard support for all discovery sessions on all network portals, including returning a list of all targets on the network entity and all of the portal groups associated with each target;
providing send target discovery sessions as default behavior;
prohibiting send target discovery sessions as a system administrator option;
configuring discovery via supporting protocols external to the iscsi protocol;
receiving an iscsi login request;
determining whether a payload of said iscsi login request contains a “SessionType=Discovery” key/value pair; and
when discovery sessions are disabled and said iscsi login request contains said “SessionType=Discovery” key/value pair, rejecting said iscsi login request.
2. The method of
4. The method of
when a session type is not explicitly declared on said iscsi login request, assuming a session type is not a discovery session and specifying a specific target.
6. The apparatus of
7. The apparatus of
8. The apparatus of
when a session type is not explicitly declared on said iscsi login request, means for assuming a session type is not a discovery session and means for specifying a specific target.
10. The computer-readable medium of
11. The computer-readable medium of
declaring a session type on said iscsi login request.
12. The computer-readable medium of
when a session type is not explicitly declared on said iscsi login request, assuming a session type is not a discovery session and specifying a specific target.
14. The method of
16. The method of
when all discovery mechanisms are disabled, providing said warning to a user.
18. The apparatus of
20. The apparatus of
when all discovery mechanisms are disabled, means for providing said warning to a user.
22. The computer-readable medium of
24. The computer-readable medium of
when all discovery mechanisms are disabled, providing said warning to a user.
|
This invention relates generally to data storage systems, and particularly to a method and apparatus for providing iSCSI target stealth operation.
Internet Small Computer System Interface (iSCSI) is an SCSI transport protocol for mapping of block-orientated storage data over TCP/IP (Transmission Control Protocol/Internet Protocol) networks. iSCSI builds on two widely used technologies—SCSI commands for storage and IP protocols for networking. By carrying SCSI commands over IP networks, iSCSI is used to facilitate data transfers over intranets and to manage storage over long distances. The iSCSI protocol enables universal access to storage devices and storage area networks (SANs). These networks may be dedicated networks or may be shared with traditional Ethernet applications.
The iSCSI standard defines a light weight discovery mechanism using the SendTargets text command and discovery sessions. When the SendTargets text command is used with the “All” option in a discovery session opened on the iSCSI network entity, the iSCSI network entity is required to return a list of all targets on the network entity and all of the portal groups associated with each target. In an open IP network, this information may provide potential attackers with significant information about what may be stored on the iSCSI network entity. Additionally, even if no information is exposed by target names, the reported portal information may be used by potential attackers to mount denial of services attacks to the IP addresses on the network entity.
The iSCSI protocol may also use other ancillary protocols to support its operation. Some of these protocols such as ICMP (Internet Control Message Protocol), SLP (Service Location Protocol), iSNS (Internet Storage Name Service), and SNMP (Simple Network Management Protocol) are not required for all installations or may only be required during system configuration. However, if the unneeded protocols are left in an enabled state, they may be used by potential attackers to mount denial of services attacks on the network entity.
Thus, it would be desirable to provide a method and apparatus for providing iSCSI target stealth operation without compromising standard iSCSI target function. Such a method and apparatus may allow an iSCSI storage device to be secured for discovery and to avoid denial of services attacks on certain supporting network services.
Accordingly, the present invention is directed to a method and apparatus for providing iSCSI target stealth operation. In an exemplary aspect of the present invention, a method for prohibiting iSCSI discovery sessions may include the following steps: (a) receiving an iSCSI login request; (b) determining whether the iSCSI login request payload contains a “SessionType=Discovery” key/value pair; and (c) when discovery sessions are disabled and the iSCSI login request contains the “SessionType=Discovery” key/value pair, rejecting the iSCSI login request with a iSCSI status-class of “Target Error” and status-detail of “Session Type not Supported.” In a preferred embodiment, the session type is declared on the initial login request. If the session type is not explicitly declared, the target may assume that the session is not a discovery session and an explicit target need be specified.
In an additional exemplary aspect of the present invention, a method for providing iSCSI target stealth operation may include the following steps: (a) providing a setting to individually enable/disable at least one of discovery sessions, SLP, iSNS, ICMP, and SNMP; and (b) when the discovery session, the SLP, and the iSNS are all disabled, providing a warning that an initiator must be statically configured to locate a target on an iSCSI entity.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention as claimed. The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate an embodiment of the invention and together with the general description, serve to explain the principles of the invention.
The numerous advantages of the present invention may be better understood by those skilled in the art by reference to the accompanying figures in which:
Reference will now be made in detail to the presently preferred embodiments of the invention, examples of which are illustrated in the accompanying drawings.
The present invention provides a method and apparatus by which an iSCSI storage device may be operated in a stealth mode without compromising standard iSCSI target function. The present invention may allow an iSCSI storage device to be secured for discovery and to avoid denial of services attacks on certain supporting network services.
The iSCSI protocol includes a light weight discovery mechanism using a special discovery session type and the SendTargets text command, which may be referred to as SendTargets discovery. The iSCSI specifies that all portal groups must support SendTargets discovery on all portals of a network entity. The SendTargets discovery mechanism may be used by any device that understands a minimal subset of the iSCSI protocol to determine the names of all iSCSI targets and all iSCSI portals on a network device. This information may be useful to an attacker since the portal information alone may be sufficient to mount a denial of service attack on the iSCSI device.
The iSCSI standard specifies that discovery may be performed by two other supporting protocols external to the iSCSI protocol: SLP (Service Location Protocol), and iSNS (Internet Storage Name Service). Both SLP and iSNS may be configured to only provide information about iSCSI targets to known iSCSI initiators. This may prevent the information from being obtained by a malicious system using the iSCSI SendTargets discovery mechanism. When either the SLP or iSNS discovery mechanism is in use, the iSCSI network entity may be protected from malicious use of the SendTargets command by prohibiting the establishment of discovery sessions.
In addition to the foregoing mentioned discovery mechanisms, there are two ancillary network protocols which may be used by an attacker to mount a denial of service attack: ICMP (Internet Control Message Protocol) and SNMP (Simple Network Management Protocol). ICMP is a protocol used to report errors in the processing of datagrams. However, ICMP may contain a message type of “Echo Request” (Ping), which is typically used by an attacker to mount a denial of service attack. Therefore, having the ability to disable the servicing of ICMP “Echo Requests” becomes an integral part of Stealth mode operation in accordance with an exemplary embodiment of the present invention.
SNMP is a simple request-reply protocol between an SNMP manager and an SNMP agent used to obtain and/or control specific information about the management entity. In accordance with an exemplary embodiment of the present invention, access to this information needs to be disabled or restricted when operating in Stealth mode. The information about the management entity may include the following:
Since the iSCSI standard requires support for discovery sessions on all network portals, prohibiting discovery sessions violates the iSCSI standard. However, providing discovery sessions as the default behavior while allowing discovery sessions to be prohibited as a system administrator option allows the additional protection while remaining iSCSI standard compliant.
A session type may be established by the initiator when the session is opened by the SessionType key in the login request payload. If the value of the SessionType is “Discovery” then the session is a discovery session. If the value of the SessionType is “Normal” or if the SessionType key is omitted, then the session type is a normal session. In a discovery session, only the SendTargets request and the logout command may be allowed to be sent by the initiator. A discovery session may not be permitted to have access to the storage resources of the target. However, a discovery session may consume a session and other management resources, which may reduce the number of normal sessions that can be opened if the discovery session is left open or repeatedly opened by a malicious system.
Discovery Sessions—Prohibit the use of unrestricted SendTargets commands;
Service Location Protocol—Prohibit the use of SLP discovery;
Internet Storage Name Services—Prohibit the use of iSNS discovery;
Internet Control Message Protocol—Prohibit the use of ICMP Echo Requests (Ping); and
Simple Network Management Protocol—Prohibit the servicing of SNMP requests or change the default community string or the default UDP ports.
Next in step 204, when discovery sessions, SLP, and iSNS are all disabled, a warning is provided to the administrator that initiators must be statically configured to locate the targets on the iSCSI entity. It is understood that the enable/disable of the protocols covered by stealth mode may be distributed throughout a management application. The same warning to the user when all discovery mechanisms have been disabled may be provided, even when the configuration is distributed.
According to the present invention, the stealth mode may include the foregoing-described methods for restricting the discovery operation and for managing discovery and ancillary protocols which may lead to denial of service attacks.
The present invention may have the following advantages. First, discovery may be restricted to known initiators by using protocols that check initiator identity. Moreover, denial of services attacks may not be mounted on unused ancillary protocols.
It is to be noted that the foregoing described embodiments according to the present invention may be conveniently implemented using conventional general purpose digital computers programmed according to the teachings of the present specification, as will be apparent to those skilled in the computer art. Appropriate software coding may readily be prepared by skilled programmers based on the teachings of the present disclosure, as will be apparent to those skilled in the software art.
It is to be understood that the present invention may be conveniently implemented in forms of software package. Such a software package may be a computer program product which employs a storage medium including stored computer code which is used to program a computer to perform the disclosed function and process of the present invention. The storage medium may include, but is not limited to, any type of conventional floppy disks, optical disks, CD-ROMS, magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, magnetic or optical cards, or any other suitable media for storing electronic instructions.
It is understood that the specific order or hierarchy of steps in the processes disclosed is an example of exemplary approaches. Based upon design preferences, it is understood that the specific order or hierarchy of steps in the processes may be rearranged while remaining within the scope of the present invention. The accompanying method claims present elements of the various steps in a sample order, and are not meant to be limited to the specific order or hierarchy presented.
It is believed that the present invention and many of its attendant advantages will be understood by the foregoing description. It is also believed that it will be apparent that various changes may be made in the form, construction and arrangement of the components thereof without departing from the scope and spirit of the invention or without sacrificing all of its material advantages. The form herein before described being merely an explanatory embodiment thereof, it is the intention of the following claims to encompass and include such changes.
Spry, Andrew J, Deitz, William
Patent | Priority | Assignee | Title |
10880371, | Mar 05 2019 | International Business Machines Corporation | Connecting an initiator and a target based on the target including an identity key value pair and a target characteristic key value pair |
Patent | Priority | Assignee | Title |
6052784, | Oct 14 1997 | Intel Corporation | Network discovery system and method |
7134139, | Feb 12 2002 | International Business Machines Corporation | System and method for authenticating block level cache access on network |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Dec 02 2003 | SPRY, ANDREW | LSI Logic Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 014787 | /0005 | |
Dec 05 2003 | LSI Logic Corporation | (assignment on the face of the patent) | / | |||
Dec 05 2003 | DEITZ, WILLIAM | LSI Logic Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 014787 | /0005 | |
May 06 2011 | LSI Logic Corporation | NetApp, Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 026661 | /0205 |
Date | Maintenance Fee Events |
Apr 02 2008 | ASPN: Payor Number Assigned. |
Jul 28 2011 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Oct 23 2015 | REM: Maintenance Fee Reminder Mailed. |
Mar 11 2016 | EXP: Patent Expired for Failure to Pay Maintenance Fees. |
Date | Maintenance Schedule |
Mar 11 2011 | 4 years fee payment window open |
Sep 11 2011 | 6 months grace period start (w surcharge) |
Mar 11 2012 | patent expiry (for year 4) |
Mar 11 2014 | 2 years to revive unintentionally abandoned end. (for year 4) |
Mar 11 2015 | 8 years fee payment window open |
Sep 11 2015 | 6 months grace period start (w surcharge) |
Mar 11 2016 | patent expiry (for year 8) |
Mar 11 2018 | 2 years to revive unintentionally abandoned end. (for year 8) |
Mar 11 2019 | 12 years fee payment window open |
Sep 11 2019 | 6 months grace period start (w surcharge) |
Mar 11 2020 | patent expiry (for year 12) |
Mar 11 2022 | 2 years to revive unintentionally abandoned end. (for year 12) |