One document matched: draft-armitage-ion-sec-arp-00.txt
Internet-Draft Grenville Armitage
Lucent Technologies
Cliff X. Wang
IBM Corporation
October 11th, 1997
Security issues for the ATMARP protocol
<draft-armitage-ion-sec-arp-00.txt>
Status of this Memo
This document was submitted to the IETF Internetworking over NBMA
(ION) WG. Publication of this document does not imply acceptance by
the ION WG of any ideas expressed within. Comments should be
submitted to the ion@nexen.com mailing list.
Distribution of this memo is unlimited.
This memo is an internet draft. Internet Drafts are working documents
of the Internet Engineering Task Force (IETF), its Areas, and its
Working Groups. Note that other groups may also distribute working
documents as Internet Drafts.
Internet Drafts are draft documents valid for a maximum of six
months. Internet Drafts may be updated, replaced, or obsoleted by
other documents at any time. It is not appropriate to use Internet
Drafts as reference material or to cite them other than as a "working
draft" or "work in progress".
Please check the lid-abstracts.txt listing contained in the
internet-drafts shadow directories on ds.internic.net (US East
Coast), nic.nordu.net (Europe), ftp.isi.edu (US West Coast), or
munnari.oz.au (Pacific Rim) to learn the current status of any
Internet Draft.
Abstract
This document discusses some security issues associated with IP over
ATM operation. RFC1577 defines the Classic IP model for sending IP
traffic over ATM. However, security issues were not addressed in the
standard. Since internet is an open architecture, security measures
to protect network integrity are essential for normal operation. The
security loopholes in the current RFC 1577 model are analyzed and
discussed. Possible solutions are proposed.
Armitage, Wang Expires April 11th, 1998 [Page 1]
Internet Draft <draft-armitage-ion-sec-arp-00.txt> October 11th, 1997
Change History
September 1997
ATMARP specific sections extracted to form a stand-alone document.
Substantial contributions from IBM co-authors. Name changed from
draft-armitage-ion-security-00.txt to draft-armitage-ion-sec-arp-
00.txt
July 1997
Initial release covering ATMARP, MARS, and NHRP. Begins to
describe the problems. Solutions still TBD.
1. Introduction
Security is a broad term, and often used subjectively when a given
protocol is said to be 'secure' or 'insecure'. The context and prior
assumptions need to be clearly understood for each assertion of an
overall system's level of security. Typically most security can
summarised as 'no-one would find me interesting enough to bother'.
Unfortunately, innocent hackers and/or malicious crackers will find
most IP/ATM installations 'interesting' at some point. Whether you
are victim of a denial-of-service attack, or denial-of-service
screw-up, the effect is similarly annoying.
The ION working group and its predecessors (the IP-ATM and ROLC
working groups) are responsible for three key protocols to support
unicast and multicast IP over ATM (and other NBMA) networks - RFC
1577 (ATMARP) [1], RFC 2022 (MARS) [2], and RFC xxxx (NHRP) [3]. The
development of these protocols focussed on achieving a set of goals
that did not initally include specific security issues.
The Classical IP over ATM model was first suggested in 1993 at the
Internet Engineering Task Force IETF spring meeting and was later
documented in RFC 1577. In this model, IP end-stations are grouped
into Logical IP Subnet (LIS). Within the LIS, ATM Address Resolution
Protocol (ATMARP) [1] supports IP data communication. Traffic between
different LISs is routed using conventional IP routing protocols such
as OSPF[4].
Since the internet is an open community, and RFC1577 model depends on
the correct ATMARP client/server operation, it is important for the
industry to be aware of the various security risks, and what can be
done to reduce these risks. This document focusses on the security
risks inherent in the RFC1577 architecture. IP related security
issues are reviewed in RFC 1825 [8].
In this document the term 'attacker' will be used to mean any
application actively utilizing the ATM network and IP/ATM protocol
Armitage, Wang Expires April 11th, 1998 [Page 2]
Internet Draft <draft-armitage-ion-sec-arp-00.txt> October 11th, 1997
elements to perform activities outside the intended scope of RFC
1577.
The rest of this document is structured in the following manner.
Section 2 provides a brief review of the RFC 1577 model, and section
3 notes the limited assumptions one can make about ATM level
security. Section 4 summarizes the known security limitations of RFC
1577, and section 5 discusses possible solutions.
2. Review of the RFC 1577 model
Classical IP over ATM is currently defined by RFC 1577. Recently, an
updated version of RFC1577 has also been proposed [5].
In the RFC 1577 model, IP end-stations are grouped into Logical IP
Subnets (LIS) based on the end-station's IP address and the subnet
mask. For each LIS, a dedicated ATMARP server provides the protocol
to physical address resolution service for all the clients of the
same LIS. Each client of the LIS registers with the ATMARP server to
obtain the address translation service from the server as well supply
its own address information to the server. When a client wants to
setup an IP data path to another client, it checks if it knows the
associated destination ATM address. If such information is not
available, the sending client contacts the ATMARP server by sending
an ATMARP request packet to query the destination's ATM address. If
the destination's ATMARP client has registered with the server and is
active, the ATMARP server will send an ATMARP reply packet to the
requesting ATMARP client with the destination's ATM address.
Upon receiving the reply from the server, the sending client can
initiate communication to the receiving client. If the server doesn't
have the requested information, an ATMARP NAK packet is sent back and
no connection can be established.
RFC 1577 also defines the use of Inverse ARP [11] in the ATM
environment. An ATMARP client may have knowledge of a destination's
ATM address but want to discover (or confirm) the matching IP
address. To obtain the destination's IP address, an InATMARP packet
is sent directly to the destination, and an InATMARP reply packet is
sent back with the destination's IP address associated with the ATM
address supplied in the InATMARP Request. The InATMARP request and
reply is not restricted to pairs of clients. It is used to register
new ATMARP Clients with the ATMARP Server - when a new client ATMARP
client establishes a VC to the ATMARP Server, the first thing done by
the server is to send an InATMARP Request. The ATMARP Client's
InATMARP Reply carries the IP/ATM mapping then used by the ATMARP
Server.
Armitage, Wang Expires April 11th, 1998 [Page 3]
Internet Draft <draft-armitage-ion-sec-arp-00.txt> October 11th, 1997
A distributed ATMARP server protocol is also being developed [6,7].
More than one ATMARP server may be implemented in a subnet such that
the critical address resolution service will be un-interrupted when
one or more ATMARP servers (but not all of them) break down. Under
the distributed ATMARP server scheme, ATMARP client may register and
use any of the active ATMARP server. Each active ATMARP server
maintains the address information for the whole subnet. The address
resolution information is exchanged and kept synchronized among the
participating ATMARP servers.
For the purposes of this document, references to "the ATMARP Server"
can be taken to apply to both the single server case, and the
distributed server case. Security weaknesses inherent in the
protocols used to create the distributed ATMARP Server will be
covered in another document.
3. ATM level security
RFC 1577 assumes that the underlying ATM network itself is
trustworthy. There is an implicit assumption that if a SETUP message
arrives at your node, the Calling Party Information Element (IE)
contains a legitimate address correctly identifying the SETUP's
originator. (In line with the 'surely I'm too un-interesting to
bother' philosophy, there is an additional assumption that the SETUP
message came from someone with a right to establish the VC,
regardless of the address in the Calling Party IE.)
Unfortunately, UNI 3.0/3.1 ATM signaling [12,13] does not utilize any
form of end-node authentication. This leaves the SETUP phase
vulnerable to 'man in the middle' attacks (where a switch somewhere
in the ATM network is compromised, or a link is broken and an
additional entity introduced that is capable of intercepting and
modifying UNI or NNI signaling traffic on the fly).
Even if end points were authenticated, UNI 3.0/3.1 does not support
the notion of closed user groups. This allows anyone with UNI access
to your underlying ATM cloud to establish VCs to any entity within
your LIS [1]. This can become a problem if UNI access to your ATM
cloud is possible - e.g. through poorly restricted physical access
such as spare switch ports, or functional access through machines
running insecure OSes. (An insecure OS environment can be anything
that allows user space applications direct access to either the local
hosts's UNI signaling stack, or the underlying ATM NIC itself.)
Weak access controls to a host's UNI signaling stack may allow a
local user application to establish VCs using Calling Party numbers
with arbitrary SEL values (the choice of the other 19 octets of a
Calling Party AESA is limited by the ESIs initially registered by the
Armitage, Wang Expires April 11th, 1998 [Page 4]
Internet Draft <draft-armitage-ion-sec-arp-00.txt> October 11th, 1997
client with the local switch using ILMI). Sufficiently weak access
controls might even allow an application to choose Calling Party
numbers that clash with other local ATM-based applications. Weak
access controls to the host's ATM NIC itself could allow user
deployment of a complete ILMI/UNI signaling stack of their own,
customized for whatever task is required.
A single PC attached to a campus-wide ATM network meets all the
criteria for a weakly controlled access point.
4. Security in the RFC 1577 model
The RFC 1577 protocol is query/response based. ATMARP Clients
initiate activity that leads to responses from the ATMARP Server
(either by establishing a VC, or issuing an ATMARP Request). The
ATMARP Server trusts mapping information it receives from ATMARP
Clients. ATMARP Clients never change their behavior based on
asynchronous control messages from the ATMARP Server.
Many of the observed security weaknesses stem from the lack of
meaningful access control available to ATMARP Servers, and the lack
of ATMARP level authentication mechanisms for either Server(s) or
Clients to use.
4.1 IP/ATM address spoofing
Address spoofing involves the insertion of incorrect {IP,ATM}
mappings into the ATMARP Server's database. This is trivial to
achieve. An attacker establishes a VC to the ATMARP Server for a
given LIS, the Server issues a pre-emptive InARP REQUEST, and the
attacker provides a fake {IP,ATM} mapping in its InARP Reply.
This sort of spoofing can be used either as a denial of service
attack or a stepping stone to subsequent hi-jacking of higher level
IP services (e.g. register the IP address of the local NFS server or
router immediately after an ARP Server reboot).
If the ATM addresses of LIS members are known, an attacker can
attempt to directly insert misleading {IP,ATM} mappings into another
LIS member's ATMARP Client. ATMARP Client implementations that
attempt to learn {IP,ATM} mappings from the InARP exchange with other
clients can be fooled in this way. The attacker simply establishes a
VC to a known member and passes back an arbitrary IP address in its
reply to the target Client's InARP Request. If the supplied IP
address matches that of an important node in the LIS (e.g. a router)
to which the target client has yet to establish legitimate
communication, the attack can be the prelude to hi-jacking of higher
Armitage, Wang Expires April 11th, 1998 [Page 5]
Internet Draft <draft-armitage-ion-sec-arp-00.txt> October 11th, 1997
level IP services.
As ATMARP Clients never query for IP addresses outside their LIS,
there is little value in an attacker attempting to spoof mappings for
IP addresses that lie outside the scope of the LIS.
4.2 Scanning of the LIS.
It is usually undesirable for outsiders to know the entire set of IP
addresses (and associated ATM addresses) that make up your LIS.
However, there is little to stop an attacker from establishing a VC
to your ATMARP Server, registering an innocuous {IP,ATM} mapping, and
then proceeding to issue ATMARP_REQUESTs for a range (or ranges) of
'interesting' IP addresses.
The ATM addresses thus learned might be used in subsequent denial of
service attacks against specific hosts. Depending on range of IP
addresses chosen during the scan, and the speed with which the
repeated ATMARP_REQUESTs are issued, this scanning can itself keep
the ATMARP Server so busy as to constitute a denial of service
attack. Not knowing the LIS address range makes the attack less
efficient, but not impossible since the server actively responds to
bad guesses with ATMARP_NAKs. A selective search would make
intelligent guesses as to the probable range of net/subnet numbers to
scan.
4.3 Denial of Service attacks.
Denial of service is any action that subverts the normal and timely
operation of the total IP/ATM system. Attacks may aim to either slow
down normal operations, or cause a cessation of operations altogether
by exploting implementation weaknesses.
An attacker can present two types of overload to an ATMARP Server -
repetative VC setup/teardown events without actually registering any
{IP,ATM} mappings (simply to consume time in the ATMARP Server's
underlying UNI stack), and repeated VC setup/teardown/registration
events (where the attacker responds to the Server's initial InARP
Request with a different {IP,ATM} mapping each time).
The first type of attack wastes time at the ATMARP Server, and causes
additional loading of the control processor in the switch to which
the target is attached (and other switches along the path between the
attacker and target).
The second type of attack will be slower (although parallel VC setup
attempts can be used to keep the average rate up), but results in
additional database manipulation activity in the Server. This can
Armitage, Wang Expires April 11th, 1998 [Page 6]
Internet Draft <draft-armitage-ion-sec-arp-00.txt> October 11th, 1997
result in collisions with IP addresses already registered, or set the
stage for later collisions when the legitimate owners of a particular
IP address attempt to register.
Depending on the ATMARP Server's design, it may happily accept
{IP,ATM} mappings outside the range of IP addresses of the LIS it is
nominally supporting. (This is not strictly illegal, since the
'Classical IP' restrictions on resolving addresses outside the LIS
actually derive from host-side behavior not server-side behavior.)
This would have the affect of avoiding collisions while filling up
the Server's database with useless information, possibly avoiding
detection of the attack until the Server's database collapses.
An attacker may also choose to launch similar attacks on LIS Clients
whose addresses were learned through previous scanning of the ATMARP
Server's database.
4.4 ATMARP Server spoofing
ATMARP Clients never receive asynchronous updates from server. This
makes it unlikely that a client implementation would listen to a
faked ARP Reply, ARP Nak, or InARP Reply arriving on a VC that the
client did not believe to be connected to the ATMARP Server (or
another client).
However, if authentication is not used in message exchanges between
server and its clients, an attacker might be in the position to
modify packets sent from server to client and interrupt the normal
operation of the client. For example, the address field of the
ATMARP replay message can be modified, or any other field can be over
written. The simplest attack is to over write the packet content with
garbage data and force the client to flush the received packets. This
can consequently disrupt client registration or attempts to establish
the IP/ATM address mapping for another client.
An attack on the identity of the ATMARP Server would either involve
compromising the security of the Client's local configuration file,
or compromising the ATM network itself (to redirect a client's SETUP
towards the attacker's own substitute ATMARP Server). These are both
feasible, but do not depend on characteristics of the RFC 1577
protocol itself.
4.5 Hiding the ATMARP Server
Keeping the address of the ATMARP Server secret can help discourage
many of the preceding attacks. However, few RFC 1577 implementations
make any attempt to hide the configuration information from users. If
the person behind the attacks has user level access to any machine on
Armitage, Wang Expires April 11th, 1998 [Page 7]
Internet Draft <draft-armitage-ion-sec-arp-00.txt> October 11th, 1997
the LIS, he will have access to the ATMARP Server address.
Even if the ATMARP Server's address could be kept a secret, a
determined search would make use of the fact that an ATMARP Server
announces its existence with a pre-emptive InARP Request whenever a
new VC is established to it. An attacker with complete or partial
knowledge of the AESAs in your region of the cloud can poll possible
AESA variations (varying the SEL field) looking for an endpoint that
reacts with InARP Requests.
An attacker with physical access to your ATM cloud might conceivably
place a passive or active tap on suitable links, parse the UNI
signalling traffic going past, and draw conclusions from the AESAs it
sees in SETUP messages.
4.6 Security issues for distributed servers
Server Cache Synchronization protocol (SCSP)[6] supports distributed
ATMARP server operation. More than one ATMARP server may be
implemented in a subnet such that the critical address resolution
service will be un-interrupted when one or more ATMARP servers (but
not all of them) break down. Under the distributed ATMARP server
scheme, ATMARP client may register and use any of the active ATMARP
server. Each active ATMARP server maintains the address information
for the whole subnet. The address resolution information is exchanged
and kept synchronized among the participating ATMARP servers.
Two types of attacks are possible when running distributed ATMARP
servers. One type is that intruder has access to the link between
two servers. The other type is that an ATMARP server is compromised.
When the intruder has access to the link between two servers, the
cache synchronization message can be intercepted, altered, or
replayed. Message authentication between two servers will protect the
integrity of messages, but cannot solve the problem of replay attack
unless combined with timestamp. For the second case when a server is
compromised, it can send false cache information to any other servers
participated in the server group and bring down the whole LIS. There
is no clear solution to such attack, unless system administration is
alerted and disconnect the compromised server from the group.
Specific security analysis and solution on distributed server
synchronization operation is outside the scope of this draft.
5. Possible solutions
5.1 Access control
Armitage, Wang Expires April 11th, 1998 [Page 8]
Internet Draft <draft-armitage-ion-sec-arp-00.txt> October 11th, 1997
Protection against un-motivated or accidental attackers may be
provided by insisting that the ATMARP Server respond only to known
clients. However, this raises the question of how a client is
'known'.
- Prior configuration of the ATMARP Server with a list of valid
client ATM addresses can involve significant management
overhead. It constrains the physical attachement points of
ATMARP Clients to the ATM cloud (since their attachment point
affects their AESA). It is not effective against attackers who
are able to spoof their ATM attachment point.
- The ATMARP Server could be configured with a list of valid
client IP addresses, or the range of legal addresses in the LIS.
This would enable rejection of any mappings for IP addresses
outside of the LIS, but doesn't provide any serious security
since most attackers already have a fair idea of the Server's
LIS before hand.
- The ATMPARP Server could be configured with lists of both legal
IP addresses and legal ATM addresses. This would constrain all
ATMARP Clients to dynamically map only legal IP addresses to
legal ATM addresses.
- The ATMARP Server could be statically configured with all the
legal IP/ATM mappings for the LIS, and act as a 'read-only'
ATMARP Server. Disallowing arbitrary client registrations
removes many of the security weaknesses in the RFC 1577 model,
but at a severe cost in flexibility.
In each case, the notion of proving a client's right to use the
ATMARP Server through its IP or ATM address is simply a weak form of
authentication, because the IP or ATM address can be easily spoofed
It is also inflexible - in the case of defining 'legal' ATM
addresses, it assumes apriori knowledge of all attachment points to
the ATM network that a legal ATMARP Client might use. What is
preferable is a means of authenticating clients that is associated
with the client itself, and not its topological position in the ATM
or IP network.
5.2 Authentication
Currently RFC 1577 clients or servers do not authenticate request and
reply messages. The IP or ATM addresses contained within the current
control messages do not constitute authentication information. There
is no way for a client to 'prove' to a server that the client is
entitled to use the server, and no way for a server to ascertain the
client's right.
Armitage, Wang Expires April 11th, 1998 [Page 9]
Internet Draft <draft-armitage-ion-sec-arp-00.txt> October 11th, 1997
Without an authentication mechanism, access control is weak. However,
if an authentication mechanism were put in place, access control
could be coupled to the information used to authenticate clients and
servers, rather than the weak address-based approaches described in
the previous section.
One current authentication mechanism involves the hashing of an IP
packet's contents using a Keyed MD5 algorithm (RFC 1321 [9] and RFC
1828 [10]). The resulting digital signature is sent along with the IP
packet. The packet's recipient authenticates the packet and its
source by running the same algorithm over the packet, using the same
key. If the result matches the signature supplied along with the
packet, the recipient considers the packet to be valid.
This form of authentication is based on the shared knowledge of a
secret key between the source and destination of each packet.
Generalizing this to an ATMARP environment requires that the ATMARP
control message format be extended to carry a Keyed MD5 signature,
and that configuration of an ATMARP LIS support the secure
distribution of secret keys.
The use of authentication would increase the processing overhead in
both servers and clients, increasing the query/response latency.
However, since ATMARP is only used when the client doesn't have a
local mapping already cached, or when initially registering, the
impact of actual IP traffic flows will be minimal.
Pragmatically, it is not clear that RFC 1577 control packet
extensions are worthwhile pursuing. Future IP/ATM installations are
expected to transition to NHRP for both inter-LIS and intra-LIS
address resolution functions. NHRP has its own facilities for
carrying authentication information.
5.3 Management alerts
While not directly a tool for preventing attacks, RFC 1577
implementations may choose to provide custom SNMP based mechanisms
for issuing alerts when a range of unusual activities occur. One
obvious example would be to issue an alert when excessive signaling
activity is detected, suggesting a possible denial of service attack.
Specific proposals for such alert mechanisms are not covered by this
document.
Armitage, Wang Expires April 11th, 1998 [Page 10]
Internet Draft <draft-armitage-ion-sec-arp-00.txt> October 11th, 1997
6. Conclusion and Open Issues
This draft provides a security analysis on IP over ATM operation
(ATMARP) based on RFC 1577. Solutions to safeguard the normal
operation of ATMARP from attacks are suggested. However, due to
limitations of current ATMARP control message format, ATMARP packet
authentication cannot be directly built in. The addition of TLV
extensions may be required to the current ATMARP packet in order to
carry authentication message.
At time of writing, a new Classic2 draft is in progress which will
ultimately replace RFC 1577. This security analysis draft will be
updated accordingly when Classic2 become RFC status.
Security Consideration
Security considerations are dealt with throughout this document.
Acknowledgments
Author's Addresses
Grenville Armitage
Bell Labs, Lucent Technologies.
101 Crawfords Corner Rd,
Holmdel, NJ, 07733
USA
Email: gja@lucent.com
Cliff X. Wang
Networking Hardware Division
International Business Machines Corporation.
P.O. Box 12195,
Research Triangle Park,
NC 27709
USA
Email: cliff_wang@vnet.ibm.com
Armitage, Wang Expires April 11th, 1998 [Page 11]
Internet Draft <draft-armitage-ion-sec-arp-00.txt> October 11th, 1997
References
[1] M. Laubach, "Classical IP and ARP over ATM", RFC1577, Hewlett-
Packard Laboratories, December 1993.
[2] G. Armitage, "Support for Multicast over UNI 3.0/3.1 based ATM
Networks", Bellcore, RFC 2022, November 1996.
[3] J. Luciani, et al, "NBMA Next Hop Resolution Protocol (NHRP)",
INTERNET DRAFT, draft-ietf-rolc-nhrp-11.txt, February 1997.
[4] J. Moy, "OSPF Version 2", RFC 1247, March 1994
[5] M. Laubach, J. Halpern, "Classic IP and ARP over ATM", INTERNET
DRAFT, draft-ion-ipatm-classic2-02.txt, March 1997.
[6] J. Luciani, G. Armitage, J. Halpern, "Server Cache
Synchronization Protocol (SCSP)", INTERNET DRAFT, draft-ietf-ion-
scsp-01.txt, April 1997
[7] J. Luciani, B. Fox, "A Distributed ATMARP Service Using SCSP",
INTERNET DRAFT, draft-ietf-ion-scsp-atmarp-00.txt, April 1997
[8] R. Atkinson, "Security Architecture for the Internet Protocol",
RFC 1825, August 1995
[9] R. Rivest, "MD5 Digest Algorithm", RFC 1321, April, 1992
[10] P. Metzger, W. Simpson, "IP Authentication using Keyed MD5",
RFC 1828, August 1995
[11] T. Bradely, C. Brown, "Inverse Address Resolution Protocol", RFC
1293, Wellfleet Communications, Inc., January 1992
[12] ATM Forum, "ATM User-Network Interface Specification Version
3.0", Englewood Cliffs, NJ: Prentice Hall, September 1993.
[13] ATM Forum, "ATM User Network Interface (UNI) Specification
Version 3.1", ISBN 0-13-393828-X, Prentice Hall, Englewood Cliffs,
NJ, June 1995.
Armitage, Wang Expires April 11th, 1998 [Page 12]
| PAFTECH AB 2003-2026 | 2026-04-23 17:18:00 |