Routing Protocol Security S. Convery
Requirements (rpsec) D. Cook
Internet-Draft M. Franz
Expires: August 26, 2004 Cisco
February 26, 2004
An Attack Tree for the Border Gateway Protocol
draft-ietf-rpsec-bgpattack-00
Status of this Memo
This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026.
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
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at http://
www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on August 26, 2004.
Copyright Notice
Copyright (C) The Internet Society (2004). All Rights Reserved.
Abstract
This I-D presents all known attack vectors into or using BGP. The
data is presented in "Attack Tree" format as published by Schneier
[ATTACKTREE] and detailed by the CERT in "Attack Modeling for
Information Security and Survivability" [MODELING]. Future security
improvements to BGP (whether best practices or enhancements to the
protocol) should consider the attacks outlined here when determining
the relative security improvements such changes provide.
Convery, et al. Expires August 26, 2004 [Page 1]
Internet-Draft BGP Attack Tree February 2004
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. BGP Attack Tree . . . . . . . . . . . . . . . . . . . . . . 6
2.1 BGP Atomic Goals . . . . . . . . . . . . . . . . . . . . . . 6
2.1.1 Compromise MD5 Authentication . . . . . . . . . . . . . . . 7
2.1.2 Establish Unauthorized BGP Session with Peer . . . . . . . . 8
2.1.3 Originate Unauthorized Prefix/Attribute into Peer Route
Table . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1.4 Change Path Preference of a Prefix . . . . . . . . . . . . . 9
2.1.5 Conduct Denial/Degradation of Service Attack Against BGP
Process . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.6 Reset a Single BGP Session . . . . . . . . . . . . . . . . . 11
2.1.7 Send Spoofed BGP Message . . . . . . . . . . . . . . . . . . 12
2.2 Attack Scenarios . . . . . . . . . . . . . . . . . . . . . . 12
2.2.1 Disable Critical Portions of the Internet by Disrupting
Internet Routing Tables . . . . . . . . . . . . . . . . . . 13
2.2.2 Force a Multi-homed AS to use an Alternate Path to/from
an Outside Network Instead of the Preferred Path . . . . . . 14
2.2.3 Disable a Single-homed AS . . . . . . . . . . . . . . . . . 14
2.2.4 Disable a Multi-homed AS . . . . . . . . . . . . . . . . . . 15
2.2.5 Blackhole Traffic . . . . . . . . . . . . . . . . . . . . . 15
3. Testing Considerations . . . . . . . . . . . . . . . . . . . 16
References . . . . . . . . . . . . . . . . . . . . . . . . . 17
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . 17
A. Supporting Atomic Goals . . . . . . . . . . . . . . . . . . 19
A.1 Compromise Router . . . . . . . . . . . . . . . . . . . . . 19
A.2 Denial of Service (DoS) Router . . . . . . . . . . . . . . . 20
A.3 Intercept or Modify Data Through Man-in-the-Middle
(MITM) Attack . . . . . . . . . . . . . . . . . . . . . . . 20
A.4 TCP Sequence Number Attack . . . . . . . . . . . . . . . . . 21
A.5 Sniff Traffic . . . . . . . . . . . . . . . . . . . . . . . 21
Intellectual Property and Copyright Statements . . . . . . . 22
Convery, et al. Expires August 26, 2004 [Page 2]
Internet-Draft BGP Attack Tree February 2004
1. Introduction
BGP and other infrastructure protocols such as DNS have received
significant critical attention as the overall awareness of Internet
security has increased. Although BGP threat models have been
published [BGPVULN] that identify inherent vulnerabilities in the
protocol, none have considered the full range of options available to
the adversary or their relative difficulty.
The use of attack trees focuses analysis on measurable goals that can
ultimately be translated into specific tests against popular
implementations. This analysis technique also encourages a structured
elaboration of events that must occur for a successful intrusion.
Since each node (an attacker goal) may be decomposed into subordinate
nodes (sub-goals, or means of achieving the parent goal), attack
trees allow security analysis to be conducted at multiple layers of
abstraction. This allows common attacks to be referenced as reusable
modules that apply to common network scenarios.
Although a comprehensive discussion of attack trees is outside the
scope of this I-D, it is useful to provide a general overview of
their function and value. The clearest way to demonstrate this is
through examples, as illustrated in [ATTACKTREE]. Consider an
individual trying to gain unauthorized physical access to a building.
An attack tree for such an act might look like this:
Goal: Gain unauthorized physical access to building
Attack:
OR 1. Unlock door with key
2. Pick lock
3. Break window
4. Follow authorized individual into building
This simple tree should be read as follows: to gain unauthorized
physical access to a building, the adversary must unlock the door
with a key, pick the lock, break a window, or follow an authorized
individual into the building. The "OR" operator defines that only one
is required. In the same tree, replacing the "OR" with "AND" would
require that all subordinate goals be achieved to realize the parent
goal. Attack trees at this level of detail are of limited use. Their
true value comes in understanding how an adversary can execute one of
the listed subordinate goals. This requires the following, more
detailed, attack tree:
Convery, et al. Expires August 26, 2004 [Page 3]
Internet-Draft BGP Attack Tree February 2004
Goal: Gain unauthorized physical access to building
Attack:
OR 1. Unlock door with key
OR 1. Steal Key
2. Social Engineering
OR 1. Borrow key
2. Convince locksmith to unlock door
2. Pick lock
3. Break window
4. Follow authorized individual into building
OR 1. Act like you belong and follow someone else
2. Befriend someone authorized outside a building
3. Appear in need of assistance (such as carrying a large box)
AND 4. Wear appropriate clothing for the location
Now the various sub nodes of the tree are better defined. In order to
"unlock door with key" you need to either steal the key or perform
some type of social engineering. Sub goal 4 (Follow authorized
individual into building) illustrates the use of "OR" and "AND" at
the same level of the tree. This should be read as follows: In order
to follow an individual into the building the adversary needs to do
one of the first 3 listed items, and wear appropriate clothing for
the location.
The use of attack trees also allows comparison between technical and
non-technical means of attack, and leads to a more comprehensive
analysis of threats and vulnerabilities. Even without extensive
elaboration, we learn in this tree that following someone into a
building is probably the easiest way of gaining entrance with the
lowest amount of cost or risk to the adversary. This class of attacks
collectively known as "social engineering" is listed but not
elaborated throughout this I-D. In many cases social engineering is
the easiest form of attack and could result in the greatest damage.
This I-D illustrates a simple BGP attack tree: subsequent analysis
could assign attributes (and possibly values) to each node of the
tree. This allows more quantitative methods to be used in analyzing
the attack tree data. These attributes could include:
o Impact of the attack
o Ease of attack execution
o Cost of the attack
o Presence of countermeasures (such as best practices)
Convery, et al. Expires August 26, 2004 [Page 4]
Internet-Draft BGP Attack Tree February 2004
o Access/trust requirements to conduct attack
Analysis of this data will yield the subset of attacks that result in
the most damage, are the easiest to launch, the least costly, have
the least access requirements, and are unlikely to be mitigated by
current best practices. Addressing these attacks should be the
initial focus of any improvements to BGP or relevant best practices.
Computer security terms used in this I-D are in accordance with RFC
2828 [GLOSSARY].
Convery, et al. Expires August 26, 2004 [Page 5]
Internet-Draft BGP Attack Tree February 2004
2. BGP Attack Tree
This I-D divides the attack tree into three main sections to reduce
redundancy and provide greater portability into subsequent trees
defined in other I-Ds. When another section of this I-D is referenced
within a specific tree, the tree located at the referenced section
should be attached at the point the reference is made.
The first section details BGP Atomic Goals of an adversary and is
detailed in Section 2.1. BGP Atomic Goals are defined in this I-D as
the narrowest form of attack by an adversary specifically directed
against BGP. BGP Atomic Goals consist of unique attack techniques and
Supporting Atomic Goals as detailed in Appendix A. Supporting Atomic
Goals are common network attack methods used in more than one BGP
Atomic Goal. The third main section of the document details higher
level adversary goals that make use of BGP Atomic Goals (and
therefore supporting atomic goals as well). These goals are referred
to as Attack Scenarios and are detailed in Section 2.2.
It is worth noting that the inclusion of an attack in this attack
tree says nothing with regard to the likelihood such an attack will
occur or even the reasonable possibility it could occur. Future
testing and analysis, as mentioned earlier, is required to accurately
interpret the data in this tree. Some of this analysis has been done
in [VULNTEST] but further testing is warranted. Some of the results
from this testing have been incorporated into this I-D.
2.1 BGP Atomic Goals
The following atomic goals are defined and used throughout the attack
tree:
o Compromise MD5 authentication
o Establish unauthorized BGP session with peer
o Originate unauthorized prefix into peer route table
o Change path preference of a prefix
o Conduct denial/degradation of service against BGP process
o Reset single BGP session
o Spoof a BGP message
Convery, et al. Expires August 26, 2004 [Page 6]
Internet-Draft BGP Attack Tree February 2004
2.1.1 Compromise MD5 Authentication
The common-sense view is that most adversaries will choose the path
of least resistance, so that all but the most sophisticated threats
would target a BGP speaker whose sessions are not protected by RFC
2385 [BGPMD5] authentication. Nevertheless, attempting a compromise
of MD5 authenticated BGP messages could be done as follows:
Attack:
OR 1. Use social engineering to obtain MD5 password
2. Capture Password
OR 1. Keystroke logger
AND 1. Compromise/gain access to administrative host
2. Install hostile application on administrative host
3. Observe MD5 password as it is typed/viewed on screen
2. Sniff MD5 password from management traffic (Appendix A.4)
3. Capture password from router configuration
OR 1. Compromise network management server
OR 1. View unencrypted router configuration
2. Decrypt encrypted router configuration
2. Compromise router (Appendix A.1)
3. Brute-Force MD5 password
OR 1. Active attack - Send signed message to peer eliciting signed response
AND 1. Send segment with RFC 2385 option to router
2. Observe response from router to determine if your hash
was valid
3. Gain physical/local access to link between peers
2. Passive Attack
AND 1. Obtain hashed packet (to facilitate offline attack)
2. Use RFC 2385 cracking tool to discover password
5. Discover implementation flaw in RFC 2385
6. Discover new attack against MD5
7. Exploit hash collision attack against MD5
To validate our assumptions about the relative difficulty of
attacking RFC2385 authentication, we must have test data that
measures the relative ease/difficulty of such attacks (or the side
effects of unsuccessful attacks) against popular BGP/TCP
implementations. When observing the response from an RFC 2385
authenticated session, sniffing will be necessary if using a spoofed
SYN. Findings from [VULNTEST] indicate that an inline adversary is
easily able to determine the MD5 key if weak passwords are chosen but
that a sufficiently strong password is as difficult to attack as any
other strong password using in modern computing today. Preliminary
tool development indicates that an offline attack is far more viable
than an online attack.
Convery, et al. Expires August 26, 2004 [Page 7]
Internet-Draft BGP Attack Tree February 2004
2.1.2 Establish Unauthorized BGP Session with Peer
Establishing an unauthorized BGP session with a peer is defined by
achieving a peering arrangement without the knowledge or permission
of both sides of the session. This includes peering sessions
established by routers and/or any other device capable of being a BGP
speaker. In this this attack, "permissive router" is meant to mean a
router which will allow BGP peering without explicit neighbor IP / AS
configuration.
Attack:
OR 1. Establish session with permissive router
OR 1. Find available local BGP speaker
OR 1. Port Scan
2. Social Engineering
2. Find available remote (EBGP-multi) speaker
OR 1. Port Scan
2. Social Engineering
AND 3. Establish peering relationship with discovered router
2. Compromise router and reconfigure to allow peering session
AND 1. Compromise Router (Appendix A.1)
2. Configure router to allow peering from attacking router
3. Simulate BGP Session from non-router
Once a peering session has been established, the adversary can much
more easily launch attacks that not only effect the peer, but the
entire network. Internet scanning performed in [VULNTEST] indicates
that "permissive routers" are a very small percentage of deployed
routers and that with basic BCPs a router can be sufficiently masked
so as to make blind attacks impossible. When the adversary is inline,
much more damage is possible.
Convery, et al. Expires August 26, 2004 [Page 8]
Internet-Draft BGP Attack Tree February 2004
2.1.3 Originate Unauthorized Prefix/Attribute into Peer Route Table
To accomplish this goal, an adversary must insert a new prefix into a
peer's routing table. This attack can be used to change traffic
patterns in a network in the case that the prefix is more specific
than the route previously used to direct traffic. This can lead to
stolen or blackholed traffic across the network. This introduced
prefix/attribute could be used for all sorts of malicious goals some
of which are detailed in Section 2.2.
Attack:
OR 1. Send from valid Router
OR 1. Misconfigured
2. Compromise router (Appendix A.1)
2. Send from Invalid Router
AND 1. Gag valid router
OR 1. Kill Router
OR 1. Power Off/Physical Layer
2. Crash and prevent reboot
3. Conduct denial of service against router (Appendix A.2)
2. Steal IP Addr
OR 1. ARP Spoof
2. Steal MAC
2. Introduce rogue router (Assume IP)
OR 1. Steal IP Addr (section 2.1.3.1.2)
2. More Specific Route Introduction
3. Establish unauthorized BGP session w/peer (Section 2.1.2)
3. Send spoofed BGP Update from Non-Router
OR 1. Conduct TCP Sequence Number Attack (Appendix A.4)
2. Conduct Man-in-the-Middle (Appendix A.3)
AND 4. Craft BGP Message
This is one of several attacks that can be caused by misconfiguration
as opposed to a deliberate attack. Launching this attack from a
compromised / misconfigured router is by far the easiest with
findings from [VULNTEST] indicating that sending spoofed updates as a
blind adversary is more difficult than previously posited.
2.1.4 Change Path Preference of a Prefix
Convery, et al. Expires August 26, 2004 [Page 9]
Internet-Draft BGP Attack Tree February 2004
Changing the path preference of a prefix can lead to the same types
of attacks that occur by inserting a new prefix into a peer's routing
table. This atomic goal is defined by altering the attributes of a
prefix so that the BGP decision process is affected. This goal is
different from originating an unauthorized prefix in that altering
the attributes implies that the prefix already exists in the BGP
table. There are different methods that can be used to accomplish
each of these goals so they will be analyzed separately.
Attack:
OR 1. Modify (AS-PATH, Next-Hop, MED, local-pref, communites)
OR 1. Valid BGP Speaker
OR 1. rogue transit implementation
2. compromise edge (origin/recipient) router
2. Man-in-the-middle attack (Appendix A.3)
3. Compromise router (Appendix A.1)
In reality, any attribute could be altered to change the path
preference. The five listed are the most common.
2.1.5 Conduct Denial/Degradation of Service Attack Against BGP Process
BGP routing processes are susceptible to a variety of attacks which
can prevent establishment of new sessions, exchange of routing
updates, or cause the router itself to become inoperable.
Attack:
OR 1. Denial of service against router (Appendix A.2)
2. TCP Resource Exhaustion against Port 179
OR 1. SYN Flood - exhaust SYN_RCVD state in TCP stack
2. Connect() - repeated full (3-way handshake) connections
3. LAST_ACK - complete 3-way handshake, then FIN-ACK
3. Invalid BGP Messages
OR 1. OPEN
2. UPDATE
3. KEEPALIVE
4. NOTIFICATION
4. Valid BGP Messages
OR 1. Update Flooding
OR 1. Flood routes (/32, etc.)
2. Excessively long path attributes
2. Update/Withdraw Flooding
3. MD5 Resource Exhaustion
Given the nearly infinite number of attacks and operational
conditions that could cause a routing process to stop performing as
expected, a significant testing effort will be needed to increase the
Convery, et al. Expires August 26, 2004 [Page 10]
Internet-Draft BGP Attack Tree February 2004
level of assurance in popular BGP implementations. Findings from
[VULNTEST] indicate that basic TCP resource exhaustion attacks are
difficult against current popular BGP implementations particularly if
the peer has been already established. MD5 resource exhaustion
attacks are similarly difficult. The easiest DoS against the BGP
process itself is update flooding from a compromised router or inline
adversary.
2.1.6 Reset a Single BGP Session
In this attack, the adversary is trying to cause a current BGP
session in the established state to reset. Such an attack could be
launched over and over again to prevent two peers from reliably
exchanging routing information.
Attack:
OR 1. Send message to router causing reset
OR 1. Send RST message to TCP stack
2. Send BGP Message
OR 1. Notify
2. Open
3. Keepalive
AND 3. TCP Sequence number Attack (Appendix A.4)
2. Alter configuration via compromised router (Appendix A.1)
It is unknown why an adversary would choose to reset a session via
Section 2.1.6.1.2. Since the preconditions of attack Section
2.1.6.1.1 are required in order to be successful. Also, it should be
noted that the sequence number attack detailed in Appendix A.4 is far
from trivial to properly execute. Findings from [VULNTEST] indicate
the attack can easily be rendered impossible for blind attackers with
basic BCPs and even without BCPs determining the proper TCP packet to
cause the reset without inline access to the routers is very
difficult.
Convery, et al. Expires August 26, 2004 [Page 11]
Internet-Draft BGP Attack Tree February 2004
2.1.7 Send Spoofed BGP Message
An adversary could send a BGP message to a BGP speaker and
potentially alter the behavior of the routing process. This attack is
mainly designed to insert false information into a BGP session, or to
reset a session.
Attack:
OR 1. TCP Sequence number Attack (Appendix A.4)
2. Intercept or Modify Data Through Man-in-the-Middle (MITM)
Attack (Appendix A.3)
AND 3. Build a valid BGP packet
This attack assumes that the adversary is able to cause the BGP
speaker to accept a message without establishing a peering
relationship. Spoofing the message is the primary mechanism to
accomplish this. Because of the requirement for the TCP sequence
number attack, this attack is quite difficult and findings in
[VULNTEST] indicate that after the spoofed update is sent, the
legitimate TCP session will begin to ACK storm resulting in a session
reset in several minutes.
2.2 Attack Scenarios
The attack scenarios represent larger goals an adversary may have
which use BGP as a means to accomplish them. These attacks use the
atomic goals discussed in Section 2.1 as a mechanism to reduce the
duplication of information within each tree.
The following attack scenarios are defined:
o Disable critical portions of the Internet by disrupting Internet
routing tables
o Force a multi-homed AS to use an alternate path to/from an outside
network instead of the preferred path
o Disable a single-homed AS
o Disable a multi-homed AS
o Blackhole traffic
Convery, et al. Expires August 26, 2004 [Page 12]
Internet-Draft BGP Attack Tree February 2004
2.2.1 Disable Critical Portions of the Internet by Disrupting Internet
Routing Tables
Common concerns regarding BGP have described scenarios where large
section of the Internet become unreachable due to the lack of
security features in BGP. In theory, the attack can be done in one of
three main ways: physical destruction, social engineering, or routing
attacks.
Attack:
OR 1. Physical Destruction
OR 1. Destroy Peering Points
2. Strategic Link Destruction (backhoe)
2. Social Engineering
3. Routing Attacks
OR 1. Alter global Internet routing table
OR 1. Insert unauth prefix into route table (Section 2.1.3)
2. Establish unauthorized BGP session with peer (Section 2.1.2)
AND 3. Ensure propagation in spite of prefix filtering
4. Repeat for ASs at multiple ISP
2. Disable critical core routers
OR 1. Router overload leading to crash
OR 1. DDoS
2. Worm
3. Loops
4. Change prefix paths (Section 2.1.4)
2. Exploit pervasive implementation flaw on router
OR 1. Memory exhaustion
2. CPU exhaustion
3. Magic packet (buffer overflow, etc.)
3. DoS BGP Process (Section 2.1.5)
4. Exploit routing table memory limitations
AND 1. Find unfiltered routing distribution point
2. Send the most specific routes that will be accepted and
propagated upstream
Since this I-D is focused on BGP, this tree elaborates on the routing
related portion of the tree. Any of the above listed attack goals are
non-trivial and would require extensive coordination and potentially
insider involvement.
Convery, et al. Expires August 26, 2004 [Page 13]
Internet-Draft BGP Attack Tree February 2004
2.2.2 Force a Multi-homed AS to use an Alternate Path to/from an Outside
Network Instead of the Preferred Path
Another way that BGP can be compromised is by forcing a multihomed AS
to change the normal path preference. This can result in the entire
AS using a suboptimal path, or using links that cost the AS more
money. In the extreme case, changing the path preference could cause
a link to become oversubscribed and result in the loss of data or
control traffic.
Attack:
OR 1. Force traffic from outside network to use alternate path
OR 1. Lower preference of preferred path
OR 1. Change path preference of a prefix (Section 2.1.4)
2. DoS BGP Process (Section 2.1.5)
3. Reset BGP Session (Section 2.1.6)
4. Compromise Router (Appendix A.1)
2. Raise preference of alternate path (Section 2.1.4)
2. Force traffic going to outside network to use alternate path
OR 1. Lower preference of preferred path
OR 1. Change path preference of a prefix (Section 2.1.4)
2. DoS BGP Process (Section 2.1.5)
3. Reset BGP Session (Section 2.1.6)
4. Compromise Router (Appendix A.1)
2. Raise preference of alternate path (Section 2.1.4)
2.2.3 Disable a Single-homed AS
This attack is a smaller scale version of the attack described in
Section 2.2.1. Here the adversary need only prevent a single-homed AS
from communicating with the rest of the Internet.
Attack:
OR 1. Disable provider link
OR 1. Physical link destruction
2. Social engineering
3. Turn off the link by compromising the upstream
router (Appendix A.1)
2. Disable AS via routing protocol attack
OR 1. DoS BGP Process (Section 2.1.5)
2. Reset BGP Session (Section 2.1.6)
3. Compromise router (Appendix A.1)
Any crashes or resets initiated by the adversary in Section 2.2.3.2.1
or .2.2 would usually require the attack be generated continually to
prevent the router from reestablishing proper communications with its
peer.
Convery, et al. Expires August 26, 2004 [Page 14]
Internet-Draft BGP Attack Tree February 2004
2.2.4 Disable a Multi-homed AS
This attack is a combination of Section 2.2.3 and Section 2.2.1. The
number of links the AS under attack has with other ASs will dictate
the type of attack necessary to most efficiently achieve the
adversary's objectives. This attack sequence, in particular, would
benefit from further testing through lab simulation and the
association of attributes to each of the leaf nodes.
Attack:
OR 1. Disable links 1...N (Section 2.2.3)
2. Disable critical portions of the ASs network (Section 2.2.1)
To summarize, the adversary can either consider the attack like
disabling several individually connected single-homed ASs, or as a
smaller version of the Internet as a whole.
2.2.5 Blackhole Traffic
BGP can be used to blackhole traffic. If an adversary has access to
the forwarding path of the target system, he can quietly discard the
traffic while continuing to function as a BGP speaker. The adversary
could also affect the BGP tables of his neighbors using BGP
advertisements so that they would send traffic to the incorrect
destination. One way this could be accomplished is through the
unauthorized origination of a prefix.
Attack:
OR 1. Drop traffic on the wire itself (Section 2.1.4.1.2)
2. Drop traffic on a router (without using BGP)
OR 1. Policy route to null
2. Static route to null
AND 3. Gain administrative access to the router
OR 1. Rouge router
2. Misconfigured router
3. Compromise router (Appendix A.1)
3. Drop traffic using bogus BGP messages
OR 1. Establish unauthorized BGP session with peer (Section 2.1.2)
2. Originate unauthorized prefix/attribute (Section 2.1.3)
3. Compromise router (Appendix A.1)
Convery, et al. Expires August 26, 2004 [Page 15]
Internet-Draft BGP Attack Tree February 2004
3. Testing Considerations
BGP design decisions (such as the selection of TCP as the transport
protocol) certainly impact the security of the Internet routing
infrastructure. However, operational considerations and the quality
of the BGP implementations may have a greater impact on Internet
security. Testing (as the ultimate determination of relative
difficulty of an attack) is especially critical for threat/
vulnerability analyses that use attack trees. This is because the
likelihood, criticality, and access requirements of leaf nodes
determine which are the most likely paths through the tree.
As discussed earlier, test procedures and results could be released
in a subsequent I-D. Such analysis should be environment specific.
For example, the analysis of this attack tree will be fundamentally
different for Internet service provider networks and enterprise
networks. The same can also be said of the differences in attack
methods between a remote blind adversary and a trusted insider. Early
findings in this area are available in [VULNTEST].
Convery, et al. Expires August 26, 2004 [Page 16]
Internet-Draft BGP Attack Tree February 2004
References
[ATTACKTREE]
Schneier, B., "Attack Trees", December 1999.
[MODELING]
Moore, A., Ellison, R. and R. Linger, "Attack Modeling for
Information Security and Survivability", March 2001.
[BGPVULN] Murphy, S., "BGP Security Vulnerabilities Analysis",
February 2002.
[GLOSSARY]
Shirey, R., "Internet Security Glossary, RFC 2828",
December 1999.
[BGPMD5] Heffernan, A., "Protection of BGP Sessions via the TCP MD5
Signature Option, RFC 2385", August 1998.
[SEQATTACKS]
Bellovin, S., "Defending Against Sequence Number Attacks,
RFC 1948", May 1996.
[RANDOMINC]
SEQATTACKS, T., "The Problem With Random Increments",
March 2001.
[BGP] BGP, Y. and T. Li, "A Border Gateway Protocol 4 (BGP-4),
RFC 1771", March 1995.
[VULNTEST]
Convery, S. and M. Franz, "BGP Vulnerability Testing:
Separating Fact from FUD", June 2003.
Authors' Addresses
Sean Convery
Cisco Systems, Inc.
170 W. Tasman Dr.
San Jose, CA 95134
US
Phone: +1 408 853 8753
EMail: sean@cisco.com
Convery, et al. Expires August 26, 2004 [Page 17]
Internet-Draft BGP Attack Tree February 2004
David Cook
Cisco Systems, Inc.
7025 Kit Creek Rd.
Research Triangle Park, NC 27709
US
Phone: +1 919 392-8772
EMail: dacook@cisco.com
Matthew Franz
Cisco Systems, Inc.
12515 Research Blvd.
Austin, TX 78759
US
Phone: +1 512 378 1648
EMail: mfranz@cisco.com
Convery, et al. Expires August 26, 2004 [Page 18]
Internet-Draft BGP Attack Tree February 2004
Appendix A. Supporting Atomic Goals
A.1 Compromise Router
Although outside the scope of routing protocol security, if the
routers themselves can be compromised the routing infrastructure can
be subverted.
Attack:
OR 1. Gain physical access to router
AND 1. Gain physical access to data center
2. Guess passwords
OR 3. Perform password recovery
2. Gain logical access to router
OR 1. Compromise network manager system
OR 1. Exploit application layer vulnerability in server
2. Hijack management traffic
2. Login to router
OR 1. Guess password
2. Sniff password
3. Hijack management session
OR 1. Telnet
2. SSH
3. SNMP
4. Social engineering
3. Exploit implementation flaw in protocol/application in router
OR 1. Telnet
2. SSH
3. SNMP
4. Proprietary management protocol
The ability of an adversary to compromise a BGP speaker is largely
dependent on operational best practices: use of secure management
protocols and authentication mechanisms, use of intrusion detection
systems, etc.
Convery, et al. Expires August 26, 2004 [Page 19]
Internet-Draft BGP Attack Tree February 2004
A.2 Denial of Service (DoS) Router
Denial/degradation of service attacks can be conducted against
network devices using a variety of well-known techniques.
Attack:
OR 1. Physical destruction of router
2. Link layer attacks
OR 1. Protocol attack using link layer protocol
2. Physical link attack
3. ARP attacks
4. IP attacks
OR 1. ICMP Message
OR 1. Flooding
2. Malformed
2. IP Fragmentation Attack
5. UDP attacks
6. TCP attacks
OR 1. SYN Flood
2. Connect()
3. LAST_ACK
4. New/undiscovered DoS against TCP
7. Application-Layer DoS
OR 1. Telnet
2. SSH
3. SNMP
4. Other aplication layer protocol
All of these attacks are outside the scope of BGP design or
implementation and ultimately depend on the survivability of the
routing device itself, its ability withstand attack, and the proper
configuration of the device based on published best-practices.
A.3 Intercept or Modify Data Through Man-in-the-Middle (MITM) Attack
Man in the middle attacks against cryptographic protocols or
application layer protocols allow an adversary to effectively proxy
communication between two parties allowing any data to either be read
or altered. Although not impossible to conduct after a session has
been established, the attack is easier done prior to session
initiation.
Attack:
AND 1. Gain write access to network segment of one or more peers
2. Subvert address infrastructure
OR 1. ARP/MAC spoofing
2. DNS spoofing
3. Proxy BGP sessions between BGP speakers
Convery, et al. Expires August 26, 2004 [Page 20]
Internet-Draft BGP Attack Tree February 2004
The goals of a MITM attack against BGP are almost identical to a TCP
Sequence Number Attack (Appendix A.4) against a BGP session. DNS
Spoofing may be unlikely because many implementations/configurations
are unlikely to use hostnames in router configurations.
A.4 TCP Sequence Number Attack
TCP suffers from well-known design flaws which make it possible to
hijack or terminate applications that use it as their transport
protocol. As a blind adversary, these attacks are quite difficult to
execute, particularly as they apply to BGP.
Attack:
OR 1. Blind Spoofing Attack
AND 1. Guess sequence number use by a BGP speaker
2. Inject valid BGP message
2. Non-Blind Spoofing attack
AND 1. Sniff Traffic (Appendix A.5)
2. Inject valid BGP message based on sequence numbers
Adequate initial sequence number randomness [SEQATTACKS] should
mitigate most blind attacks, although some research [RANDOMINC]
suggests blind attacks may be easier that previously thought, all of
these attacks require a large sample set of ISNs, something which can
be easily mitigated with proper BGP BCPs.
A.5 Sniff Traffic
Depending on the network topology, there are many ways of gaining
read-access to a network to conduct passive attacks. The most common
method would be to compromise a system (typically a general purpose
operating system) on the segment and install software the puts a
network interface card in promiscuous mode and captures traffic.
Attack:
OR 1. Gain local network access to a segment
AND 1. Compromise server
2. Install sniffing software
2. Tap physical medium
3. Redirect traffic through a compromised host
ARP/MAC spoofing may be necessary to sniff traffic on switched
networks and many tools are available which make this a trivial task.
Convery, et al. Expires August 26, 2004 [Page 21]
Internet-Draft BGP Attack Tree February 2004
Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any
intellectual property or other rights that might be claimed to
pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights
might or might not be available; neither does it represent that it
has made any effort to identify any such rights. Information on the
IETF's procedures with respect to rights in standards-track and
standards-related documentation can be found in BCP-11. Copies of
claims of rights made available for publication and any assurances of
licenses to be made available, or the result of an attempt made to
obtain a general license or permission for the use of such
proprietary rights by implementors or users of this specification can
be obtained from the IETF Secretariat.
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights which may cover technology that may be required to practice
this standard. Please address the information to the IETF Executive
Director.
Full Copyright Statement
Copyright (C) The Internet Society (2004). All Rights Reserved.
This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published
and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this paragraph are
included on all such copies and derivative works. However, this
document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of
developing Internet standards in which case the procedures for
copyrights defined in the Internet Standards process must be
followed, or as required to translate it into languages other than
English.
The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assignees.
This document and the information contained herein is provided on an
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
Convery, et al. Expires August 26, 2004 [Page 22]
Internet-Draft BGP Attack Tree February 2004
HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Acknowledgment
Funding for the RFC Editor function is currently provided by the
Internet Society.
Convery, et al. Expires August 26, 2004 [Page 23]