One document matched: draft-rafiee-6man-local-security-00.txt
IPv6 maintanance Working Group (6man) H. Rafiee
INTERNET-DRAFT C. Meinel
Intended status: Informational Track Hasso Plattner Institute
Expires: June 4, 2014 December 4, 2013
Recommendations for Local Security Deployments
<draft-rafiee-6man-local-security-00.txt>
Abstract
There are currently some mechanisms available to mitigate attacks in
local networks. The purpose of this document is to compare these
mechanisms and offer some recommendations regarding the
implementations and deployments of these mechanisms. Then it focuses
on the deployment of one of the promising approach in local security,
i.e., Secure Neighbor Discovery (SeND) [RFC3971].
Status of this Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute working
documents as Internet-Drafts. The list of current Internet-Drafts is
at http://datatracker.ietf.org/drafts/current.
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."
This Internet-Draft will expire on June 4, 2014.
Copyright Notice
Copyright (c) 2013 IETF Trust and the persons identified as the
document authors. All rights reserved. This document is subject to
BCP 78 and the IETF Trust's Legal Provisions Relating to IETF
Documents (http://trustee.ietf.org/license-info) in effect on the
date of publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
Rafiee, et al. Expires June 4, 2014 [Page 1]
INTERNET DRAFT local security Deployment December 4, 2013
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Conventions used in this document . . . . . . . . . . . . . . 3
3. IPv6 First-Hop Security (FHS) . . . . . . . . . . . . . . . . 3
4. Local link Security for all nodes . . . . . . . . . . . . . . 4
4.1. Secure Neighbor Discovery . . . . . . . . . . . . . . . . 4
4.1.1. Identifying Obstacles for SeND Deployments . . . . . 4
4.1.1.1. CGA IPR . . . . . . . . . . . . . . . . . . . . . 5
4.1.1.2. CGA Performance and Complexity . . . . . . . . . 5
4.1.1.3. CGA Security Issue . . . . . . . . . . . . . . . 5
4.1.1.4. Router Authorization Problem . . . . . . . . . . 6
5. Recommendations for Local Security Deployments . . . . . . . 6
5.1. SSAS an alternative to CGA . . . . . . . . . . . . . . . 6
5.2. Router Authorization and Preventing Layer 2 Spoofing . . 6
5.2.1. CN as Monitoring Node . . . . . . . . . . . . . . . . 7
5.2.2. Generation of RPK and SPK . . . . . . . . . . . . . . 7
5.2.3. Process of RPK and SPK. . . . . . . . . . . . . . . . 8
6. Security Considerations . . . . . . . . . . . . . . . . . . . 9
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9
8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 9
8.1. Normative . . . . . . . . . . . . . . . . . . . . . . . . 9
8.2. Informative . . . . . . . . . . . . . . . . . . . . . . . 10
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 11
Rafiee, et al. Expires June 4, 2014 [Page 2]
INTERNET DRAFT local security Deployment December 4, 2013
1. Introduction
Local security is a very important issue in everyday life,
especially, in large enterprises that this trust can be broken by one
of fired employees. There are currently some existing mechanisms that
might be used to mitigate the attacks in local networks. The focus of
this document is to explain these mechanisms and discuss about their
level and costs of security they can provide for the nodes and offer
some recommendations for their deployments. aThis document also
focuses on the problems for Secure Neighbor Discovery (SeND)
[RFC3971] deplopyments and offer some recommendations and new models
to try to remove the obstacles for its deployments.
2. Conventions used in this document
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC-2119 [RFC2119].
In this document, these words will appear with that interpretation
only when in ALL CAPS. Lower case uses of these words are not to be
interpreted as carrying RFC 2119 significance.
3. IPv6 First-Hop Security (FHS)
One of the growing concerns in local security is that the attacker
can forge the identity of the routers or play other attacks during
router discovery, Duplicate Address Detection (DAD) process, and
neighbor reachability check [1]. One example is the scenario where
the attacker might spoof the router advertisement (RA) message. So,
he responds to a node's Router solicitation (RS) request with a
spoofed RA message. Since the node does not have any means to
authorize the legitimate router, it accepts the attacker's fake
router prefixes and choose this attacker as its first hop router.
There are some mitigation mechanism available such as IPv6 RA guard
[RFC6105], first-hop security binding table, IPv6 device tracking,
IPv6 port-based access list support, IPv6 global policy. These
approach have some advantages and disadvantages.
The disadvantages and limitations [2] are as follow:
- The RA guard feature does not offer protection in environments
where IPv6 traffic is tunneled.
- This feature is supported only in hardware by programming the TCAM.
- This feature can be configured only on a switchport interface in
Rafiee, et al. Expires June 4, 2014 [Page 3]
INTERNET DRAFT local security Deployment December 4, 2013
the ingress direction.
- This feature supports only host mode.
- This feature is supported only in the ingress direction; it is not
supported in the egress direction. So,the assumption is that the
attacker is not in local link but it is somewhere outside the
network.
- This feature is supported on ether channel, but not on ether
channel port members.
- This feature is not supported on trunk ports with merge mode.
- This feature cannot protect the nodes against network layer IP
spoofing.
- This feature is applicable against fake router advertisement
attacks rather than other types of attacks that is possible in local
links. One example is that the attacker can prevent the node from IP
address configuration and this feature cannot prevent this attack.
- This feature cannot protect the node against RA attacks if the
implementation of neighbor discovery accepts unicast RA messages as
well as multicast RA messages. The Neighbor Discovery specification
used the word "SHOULD" and not "MUST. One of the operating system
(OS) that accepts unicast RA messages is Linux distributions.
- This feature might also have a patent problem since some open
source operating system such as Linux did not implement it.
4. Local link Security for all nodes
Mechanisms in this category would provide the node with, both, the
protection against IP spoofing and also protection against rogue
routers. SeND is one of the mechanism that can be classified under
this category, however, it is also considered as a first-hope
security mechanism.
4.1. Secure Neighbor Discovery
SeND provide the local security by adding four options to Neighbor
Discovery messages [RFC4861, RFC4862]. These options are timestamp,
nonce, Cryptographically Generated Addresses (CGA)[RFC3972] and
RSAsignature.
4.1.1. Identifying Obstacles for SeND Deployments
Rafiee, et al. Expires June 4, 2014 [Page 4]
INTERNET DRAFT local security Deployment December 4, 2013
There might be several reasons that SeND is not yet supported by many
OSs. This document tries to introduce some of them.
4.1.1.1. CGA IPR
SeND without CGA cannot protect all nodes against IP spoofing but it
can authorize the routers. This means that after setting all the
requirements and accept the complexity of certification
configuration, still the leverage of protection is similar to when
the network only supports the FHS mechanisms. This is why, CGA is one
of the necessary option in SeND that provide all nodes in the network
with the proof of IP address ownership but why CGA might be a
problem?
At first sight, CGA IPR allows a loyalty free implementation of this
specification but on the other hand, some implementers do not like to
implement something that hold a patent which might cause problem for
them in future (Refer to this article regarding the concerns about
royalty free IPR [3]).
4.1.1.2. CGA Performance and Complexity
According to CGA algorithm, if the node chooses CGA sec value higher
than 0, it needs to repeat some steps that needs the high CPU
attention. This might limit its implementation only to the nodes that
are not using battery or do not have limited resources of energy.
Unfortunately, in near future, the devices are going to be more
advanced and smaller in size but limited in battery. This is because
the battery technology is not as advanced as the computerized
devices. This is why, it is not ideal to use an approach that might
use high range of CPU and energy resources.
4.1.1.3. CGA Security Issue
Unfortunately CGA verification process allows the attacker to claim
the IP address of the CGA node with CGA different sec value [4]. The
other problem is that, the plain text of CGA hash is clear for the
attacker and he can use the same value as what the CGA node used. So,
the attacker can only play with public key or endings of the hash
value to generate a fast matching collision with the CGA node. He
also does not need to use a very strong key size and he can use a key
size that gives him ability to play with this plain text ending bits.
Rafiee, et al. Expires June 4, 2014 [Page 5]
INTERNET DRAFT local security Deployment December 4, 2013
4.1.1.4. Router Authorization Problem
Before RPKI model was proposed, there was not any clear mechanism
available to be used for router authorization. There were some
solutions available but not scalable solutions. One example is that
the nodes in the network are preloaded with the router's
certification. This was not really ideal in the large enterprises
with thousands of nodes and with different user's experience.
5. Recommendations for Local Security Deployments
Since SeND is one of promising approach to provide the node with both
local security and protect the nodes against IP spoofing attacks in
network layer, this section offers some possible solutions to
facilitate SeND deployments.
5.1. SSAS an alternative to CGA
One possible solution to CGA problems would be the use of SSAS [5,
6]. It generates the IP addresses in a faster and remove the
complexity. It is also ideal for nodes with limited battery
resources.
5.2. Router Authorization and Preventing Layer 2 Spoofing
Since SSAS alone cannot authorize the legitimates routers in the
network. There is a need for an auxiliary mechanism to help SSAS. To
verify the authorized router in the local network and to create a
partial trust within the network, this document propose the use of a
local centralized Resource Public Key Infrastructure (RPKI) which is
based on the centralized version explained in RFC 6494 and RFC 6495.
Figure 1 depicts the architecture of this new RPKI framework. In this
framework, a Controller Node (CN) is used whereby administrators will
be able to manually store, in the database of this node, the router?s
public key and MAC address. There are two new different SeND/NDP
messages, Request Public Key (RPK) and Send Public Key (SPK), that
can be used by nodes to request the public key of the router or other
nodes, and can be used to send from the CN node the public key of the
requested node. The CN node has a fixed MAC address (a reserved MAC
address). It is a reserved MAC address which is known to all nodes.
One possible way to implement CN is to use a new module in routers
capable of processing these two messages. In this case, one CN node
could be available in two different local networks when the same
router is available between these two networks. When a node first
sends a RPK message, the CN node will add its MAC address and public
key to its database. This gives other nodes the capability of
verifying this new node by asking for the public key of this node.
Rafiee, et al. Expires June 4, 2014 [Page 6]
INTERNET DRAFT local security Deployment December 4, 2013
The CN node maintains this data for as long as it receives NS
messages from this node. Nodes frequently check neighbor reachability
and the CN node receives these messages passively. If the CN node
does not see a message from a node that has an entry in its database,
then it sends a NS message to that node. If it does not receive a
response from that node, it set the active flag of this node to
inactive and after being inactive for a week, it removes that node
from its database. Nodes that are added manually to the CN database
MUST be removed manually from the CN database.
5.2.1. CN as Monitoring Node
To mitigate any layer 2 attacks or to prevent MAC spoofing in initial
conversation of nodes with CN node, it is RECOMMENDED that the CN
node listens passively to the network and alarm any malicious
activity of the nodes that want to spoof its MAC address. The nodes
also MUST keep the MAC address and public key of the CN node in their
cache and keep it for 3 months. The node MIGHT update this value if
it is in a different network or if it does not receive any message
from CN node. Before any action to remove CN node from their cache,
the node MUST process the reachability for CN node.
5.2.2. Generation of RPK and SPK
Figure 1 shows the format of these two new NDP/SeND messages. The NDP
message type used for RPK is 140 and for SPK is 141 (these numbers
are assigned by IANA). These are set in the ICMPv6 header. There are
two new types in these messages: type 20 and type 21. These new types
are helpful when an existing node wants to generate a new IP address
and wants to update its public key in CN node. This allows the CN
node to detect that it is not the MAC spoofing attack.
- Type 20: If a node wants to change its IP address or generate a new
one, it sign its MAC address and timestamp using its old private key
and set it in Signature Ia type 20 RPK message which indicates the
use of its MAC address and timestamp signed by its old private key.
- Type 21: This contains the node's new public key and the signature
signed by using the node's new private key.
When a CN node wants to generate the SPK, it adds the requested
public key to the type 20 section of the message and then includes
its own public key and generates a signature using its own private
key created from the concatenation of timestamp with set it type 21
section of SPK message.
+--------+---------+---------------------------+
| Type | Length | Reserved |
Rafiee, et al. Expires June 4, 2014 [Page 7]
INTERNET DRAFT local security Deployment December 4, 2013
| 1 byte | 1 byte | 6 bytes |
+----------------------------------------------+
| timestamp |
+---------+--------+---------------------------+
| Type=20| Length | public key |
| 1 byte | 1 byte | |
+---------+--------+-----------+---------------+
| Type=21| Length | pubkeylen| CN public |
| 1 byte | 1 byte | 1 byte | key |
+------------------+---------------------------+
| Algorithm type | Signature II |
| 1 byte | |
+----------------------------------------------+
| Padding |
+----------------------------------------------+
SPK message
+--------+---------+---------------------------+
| Type | Length | Reserved |
| 1 byte | 1 byte | 6 bytes |
+----------------------------------------------+
| timestamp |
+---------+--------+-------------+-------------+
| Type=20| Length | Algorithm | Signature I |
| 1 byte | 1 byte | type(1 byte)| |
+---------+--------+-------------+-------------+
| Type=21| Length | pubkeylen| new public |
| 1 byte | 1 byte | 1 byte | key |
+------------------+---------------------------+
| Algorithm type | Signature II |
| 1 byte | |
+----------------------------------------------+
| Padding |
+----------------------------------------------+
RPK message
Figure 1 Format of Request Public Key (RPK) and Send Public Key (SPK)
5.2.3. Process of RPK and SPK.
When a new node joins a network, it generates its local IP address
using the SSAS algorithm and then sends a Router Solicitation message
to obtain a router advertisement and to generate its global IP
address. This message does not need to include the SSAS data
structure. The router responds to the node with a Router
Advertisement (RA). The new node needs to obtain the public key for
this router from the CN node. It then generates a RPK. After
successful verification, the CN node checks whether or not this MAC
address already exists in its database. If it does, it checks to see
whether or not the public key is the same as that which is available
Rafiee, et al. Expires June 4, 2014 [Page 8]
INTERNET DRAFT local security Deployment December 4, 2013
in its database. If it finds a match, it generates a SPK message and
sends it to the node. If the CN node finds a different public key
than that of this node, it sends the SPK setting the length of the
type 20 option to 1 and setting the one byte public key to 1. This
informs the new node that there is an existing MAC address with a
different public key. If this node is the owner of the old public key
that is available in the CN node, it includes its old public key as
shown in figure 1 and sends a new RPK. Otherwise it considers this an
attack on his MAC address and sets the one byte of the old public key
to zero and the length of the type 20 option to one, and sends this
message. This message causes a flag to be added to the database to
inform the network administrator that something is wrong in this
network.
If the public key and MAC address of the new node are not available
in the CN, after receiving the RPK message and after a successful
SSAS verification, it will add these values to its database.
When the other nodes want to add a new node to their neighboring
caches, after receiving the neighbor advertisement message, they will
ask the CN node for the public key of this node. After successful
verification, they will add the public key, MAC address and IP
address of this node to their neighboring cache. The next time they
will not need to ask the CN node for any information to check the
reachability of the neighboring nodes in their cache. This decreases
the number of messages exchanged between the CN node and the other
nodes in this network.
6. Security Considerations
There is no security consideration except the one that is explained
for SSAS/SeND.
7. IANA Considerations
This document introduces a new, local RPKI based on the centralized
RPKI. It is necessary that the IANA assign two numbers to two
different messages that were introduced by this document. The RPKI
node also needs to have a reserved MAC address.
8. References
8.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to
Rafiee, et al. Expires June 4, 2014 [Page 9]
INTERNET DRAFT local security Deployment December 4, 2013
Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC6105] Levy-Abegnoli, E., Van de Velde, G., Popoviciu,
C., Mohacsi, J., "IPv6 Router Advertisement Guard," RFC
6105, February 2011.
[RFC3972] Aura, T., "Cryptographically Generated Addresses
(CGA)," RFC 3972, March 2005.
[RFC3971] Arkko, J., Kempf, J., Zill, B., and Nikander, P.,
"SEcure Neighbor Discovery (SEND)", RFC 3971, March 2005.
[RFC4861] Narten, T., Nordmark, E., Simpson, W., Soliman,
H., "Neighbor Discovery for IP version 6 (IPv6)", RFC 4861,
September 2007.
[RFC4862] Thomson, S., Narten, T., Jinmei, T., "IPv6
Stateless Address Autoconfiguration", RFC 4862, September
2007.
8.2. Informative References
[1] IPv6 First Hop Concerns,
http://www.cisco.com/web/about/security/intelligence/ipv6_first_hop.html
[2] IPv6 First Hop Security,
http://www.cisco.com/en/US/docs/ios/ipv6/configuration/guide/ip6-first_hop_security.html
[3] Vaelimaeki, M., Oksanen, V., "Patents on Compatibility
Standards and Open Source ? Do Patent Law Exceptions and
Royalty-Free Requirements Make Sense?" ,
http://www2.law.ed.ac.uk/ahrc/script-ed/vol2-3/valimaki.asp,
September 2005
[4] Rafiee,H., Meinel, C., "Possible Attack on Cryptographically
Generated Addresses (CGA)"
,http://tools.ietf.org/html/draft-rafiee-6man-cga-attack, 2013
[5] Rafiee, H., Meinel, C., "'SSAS: a Simple Secure Addressing
Scheme for IPv6 AutoConfiguration". In Proceedings of the 11th
IEEE International Conference on Privacy, Security and Trust
(PST), IEEE Catalog number: CFP1304F-ART, ISBN:
978-1-4673-5839-2.
[6] Rafiee, H., Meinel, C., "'SSAS: a Simple Secure Addressing
Scheme for IPv6 AutoConfiguration".
http://tools.ietf.org/search/draft-rafiee-6man-ssas, 2013
Rafiee, et al. Expires June 4, 2014 [Page 10]
INTERNET DRAFT local security Deployment December 4, 2013
Authors' Addresses
Hosnieh Rafiee
Hasso-Plattner-Institute
Prof.-Dr.-Helmert-Str. 2-3
Potsdam, Germany
Phone: +49 (0)331-5509-546
Email: ietf@rozanak.com
Dr. Christoph Meinel
(Professor)
Hasso-Plattner-Institute
Prof.-Dr.-Helmert-Str. 2-3
Potsdam, Germany
Email: meinel@hpi.uni-potsdam.de
Rafiee, et al. Expires June 4, 2014 [Page 11]
| PAFTECH AB 2003-2026 | 2026-04-24 02:29:39 |